Skip to content

Справочник по API плагина Cordova

example
var pushwoosh = cordova.require("pushwoosh-cordova-plugin.PushNotification");
// Следует вызывать перед pushwoosh.onDeviceReady
document.addEventListener('push-notification', function(event) {
var notification = event.notification;
// здесь обработайте открытие push-уведомления
});
// Инициализация Wavesend. Это вызовет все ожидающие push notifications при запуске.
pushwoosh.onDeviceReady({
appid: "XXXXX-XXXXX",
projectid: "XXXXXXXXXXXXXXX",
serviceName: "XXXX"
});
pushwoosh.registerDevice(
function(status) {
var pushToken = status.pushToken;
// здесь обработайте успешную регистрацию
},
function(status) {
// здесь обработайте ошибку регистрации
}
);
PushNotification.prototype.onDeviceReady = function( config )

[android, ios, wp8, windows] Инициализирует плагин Wavesend и запускает стартовое push-сообщение. Следует вызывать при каждом запуске приложения.

config.appidApplication code Wavesend.

config.projectid – номер проекта GCM для платформы Android.

config.serviceName – имя службы MPNS для платформы wp8.

example
// инициализация Wavesend с projectid: "GOOGLE_PROJECT_NUMBER", appid : "PUSHWOOSH_APP_ID", serviceName : "WINDOWS_PHONE_SERVICE". Это вызовет все ожидающие push notifications при запуске.
pushwoosh.onDeviceReady({
appid : "XXXXX-XXXXX",
projectid: "XXXXXXXXXXXXXXX",
serviceName: "XXXX"
});
PushNotification.prototype.registerDevice = function( success, fail )

[android, ios, wp8, windows] Регистрирует устройство для push notifications и получает Push Token.

success – колбэк успешного выполнения. Push token передается в этот колбэк в качестве параметра “status.pushToken”.

fail – колбэк ошибки.

example
pushwoosh.registerDevice(
function(status) {
alert("Устройство зарегистрировано с push token: " + status.pushToken);
},
function(error) {
alert("Не удалось зарегистрировать: " + error);
}
);
PushNotification.prototype.unregisterDevice = function( success, fail )

[android, ios, wp8, windows] Отменяет регистрацию устройства для получения push notifications.

success – колбэк успешного выполнения.

fail – колбэк ошибки.

PushNotification.prototype.setTags = function( config, success, fail )

[android, ios, wp8, windows] Устанавливает tags для устройства.

Параметры

config – объект с пользовательскими tags устройства.

success – колбэк успешного выполнения. Push token передается в этот колбэк в качестве параметра “status.pushToken”.

fail – колбэк ошибки.

example
// устанавливает tags: “deviceName” со значением “hello” и “deviceId” со значением 10
pushwoosh.setTags({deviceName:"hello", deviceId:10},
function() {
console.warn('setTags выполнен успешно');
},
function(error) {
console.warn('setTags не выполнен');
}
);
// устанавливает списочные tags "MyTag" со значениями (массив) "hello", "world"
pushwoosh.setTags({"MyTag":["hello", "world"]});
PushNotification.prototype.getTags = function( success, fail )

[android, ios, wp8, windows] Возвращает tags для устройства, включая Default Tags.

success – колбэк успешного выполнения. Получает tags в качестве параметров.

fail – колбэк ошибки.

pushwoosh.getTags(
function(tags) {
console.warn('tags для устройства: ' + JSON.stringify(tags));
},
function(error) {
console.warn('ошибка получения tags: ' + JSON.stringify(error));
}
);
PushNotification.prototype.getPushToken = function( success )

[android, ios, wp8, windows] Возвращает Push Token, если он доступен. Обратите внимание, что токен также приходит в колбэке функции registerDevice.

success – колбэк успешного выполнения.

pushwoosh.getPushToken(
function(token) {
console.warn('push token: ' + token);
}
);
PushNotification.prototype.getPushwooshHWID = function( success )

[android, ios, wp8, windows] Возвращает HWID Wavesend, используемый для взаимодействия с Wavesend API.

success – колбэк getPushwooshHWID.

pushwoosh.getPushwooshHWID(
function(token) {
console.warn('Wavesend HWID: ' + token);
}
);
PushNotification.prototype.getRemoteNotificationStatus = function( callback, error )

[android, ios] Возвращает подробный статус разрешений на push notification.

callback – колбэк успешного выполнения. Получает объект со следующими свойствами:

{
”enabled” : флаг, указывающий, включены ли уведомления.
”pushBadge” : разрешение на значки на иконке приложения (badges) предоставлено. (только для iOS)
”pushAlert” : разрешение на оповещения (alert) предоставлено. (только для iOS)
”pushSound” : разрешение на звук предоставлено. (только для iOS)
}

error — колбэк ошибки.

PushNotification.prototype.setApplicationIconBadgeNumber = function( badgeNumber )

[android, ios] Устанавливает число на иконке приложения (badge).

badgeNumber – число на иконке приложения.

PushNotification.prototype.getApplicationIconBadgeNumber = function( callback )

[android, ios] Возвращает число на иконке приложения (badge).

callback – колбэк успешного выполнения.

pushwoosh.getApplicationIconBadgeNumber(function(badge){ alert(badge);} );
PushNotification.prototype.addToApplicationIconBadgeNumber = function( badgeNumber )

[android, ios] Добавляет значение к числу на иконке приложения (badge).

badgeNumber — инкрементальное число для иконки приложения.

PushNotification.prototype.getLaunchNotification = function( callback )

[android, ios] Возвращает полезную нагрузку push notification, если приложение было запущено в ответ на push notification, или null.

callback – колбэк успешного выполнения.

PushNotification.prototype.clearLaunchNotification = function( callback )

[android, ios] Очищает уведомление о запуске, после этого вызова getLaunchNotification() вернет null.

PushNotification.prototype.setUserId = function( userId )

[android, ios] Задает User ID — идентификатор пользователя, такой как Facebook ID, имя пользователя, email или любой другой идентификатор. Это позволяет сопоставлять данные и Events на нескольких устройствах пользователя.

userId – строковый идентификатор пользователя.

PushNotification.prototype.postEvent = function( event, attributes )

[android, ios] Отправляет Events для In-App Messages. Это может вызвать отображение In-App message, как указано в Control Panel Wavesend.

eventEvent для запуска.

attributes – объект с дополнительными атрибутами Event.

pushwoosh.setUserId("XXXXXX");
pushwoosh.postEvent("buttonPressed", { "buttonNumber" : 4, "buttonLabel" : "banner" });
PushNotification.prototype.createLocalNotification = function( config, success, fail )

[android, ios] Планирует локальное уведомление.

config.msg – текст уведомления.

config.seconds – задержка уведомления в секундах.

config.userData – дополнительные данные для передачи в уведомлении.

success – колбэк успешного выполнения.

fail – колбэк ошибки.

pushwoosh.createLocalNotification({msg:"Ваши тыквы готовы!", seconds:30, userData:{}})
PushNotification.prototype.clearLocalNotification = function()

[android] Удаляет все ожидающие локальные уведомления, созданные с помощью createLocalNotification.

PushNotification.prototype.clearNotificationCenter = function()

[android] Удаляет все уведомления, отображаемые в центре уведомлений Android.

PushNotification.prototype.setMultiNotificationMode = function( success, fail )

[android] Позволяет отображать несколько уведомлений в центре уведомлений Android.

PushNotification.prototype.setSingleNotificationMode = function( success,
fail )

[android] Позволяет отображать только последнее уведомление в центре уведомлений Android.

PushNotification.prototype.setSoundType = function( type, success, fail )

[android] Устанавливает звук по умолчанию для входящих pushes.

type – Тип звука (0 – по умолчанию, 1 – без звука, 2 – всегда).

PushNotification.prototype.setVibrateType = function(type, success, fail )

[android] Устанавливает режим вибрации по умолчанию для входящих pushes.

type – Тип вибрации (0 – по умолчанию, 1 – без вибрации, 2 – всегда).

PushNotification.prototype.setLightScreenOnNotification = function( on, success, fail )

[android] Включает экран при поступлении уведомления.

on – включить/выключить разблокировку экрана (по умолчанию выключено).

PushNotification.prototype.setEnableLED = function( on, success, fail )

[android] Включает мигание светодиода, когда приходит уведомление и дисплей выключен.

on – включить/выключить мигание светодиода (по умолчанию выключено).

PushNotification.prototype.setColorLED = function( color, success, fail )

[android] Устанавливает цвет светодиода. Используйте с setEnableLED.

color – цвет светодиода в целочисленном формате ARGB.

PushNotification.prototype.getPushHistory = function( success )

[android] Возвращает массив полученных push notifications.

success – колбэк успешного выполнения.

pushwoosh.getPushHistory(function(pushHistory) {
if(pushHistory.length == 0)
alert("история push-уведомлений пуста");
else
alert(JSON.stringify(pushHistory));
});
pushwoosh.clearPushHistory();
PushNotification.prototype.clearPushHistory = function()

[android] Очищает историю push-уведомлений.

PushNotification.prototype.cancelAllLocalNotifications = function( callback )

[ios] Удаляет все локальные уведомления из центра уведомлений.

[android, ios] Открывает экран Message Inbox.

PushNotification.prototype.presentInboxUI = function()

Бинарный метод, включающий/отключающий всю коммуникацию с Wavesend. Значение false отписывает устройство от получения push notifications и останавливает загрузку in-app messages. Значение true отменяет этот эффект.

PushNotification.prototype.setCommunicationEnabled = function(enable, success, fail)

Удаляет все данные об устройстве.

PushNotification.prototype.removeAllDeviceData = function()

[android, ios] Событие получения push notification. Срабатывает, когда приложение получает push notification в активном или фоновом режиме. Закрытые приложения не получают это событие.

Свойства события

message – (string) Текст push notification.

userdata – (object/array) Custom data push notification.

onStart – (boolean) Является ли уведомлением о запуске.

foreground – (boolean) Получено ли уведомление в активном режиме.

android – (object) Полезная нагрузка, специфичная для Android.

ios – (object) Полезная нагрузка, специфичная для iOS.

windows – (object) Полезная нагрузка, специфичная для Windows.

document.addEventListener('push-receive',
function(event) {
var userData = event.notification.userdata;
if (typeof(userData) != "undefined") {
// здесь обработайте пользовательские данные уведомления
console.warn('пользовательские данные: ' + JSON.stringify(userData));
}
}
);

Уведомления в активном режиме

Section titled “Уведомления в активном режиме”

По умолчанию плагин Wavesend не отображает уведомления в активном режиме (foreground) и автоматически вызывает событие push-receive. См. руководство по настройке плагина, чтобы управлять этим поведением.

[android, ios, wp8, windows] Событие принятия push notification. Срабатывает, когда пользователь нажимает на push notification.

document.addEventListener('push-notification',
function(event) {
var message = event.notification.message;
var userData = event.notification.userdata;
if (typeof(userData) != "undefined") {
console.warn('пользовательские данные: ' + JSON.stringify(userData));
}
}
);

Свойства события

Те же, что и у push-receive.

[только для iOS] Предоставляет _д_ополнительные опции авторизации уведомлений. Следует вызывать перед вызовом registerDevice.

pushwoosh.additionalAuthorizationOptions({
"UNAuthorizationOptionCriticalAlert" : 1,
"UNAuthorizationOptionProvisional": 0 // установите 0 или не указывайте опцию, если не хотите добавлять ее в приложение.
});