Справочник по API плагина Cordova
var pushwoosh = cordova.require("pushwoosh-cordova-plugin.PushNotification");
// Следует вызывать перед pushwoosh.onDeviceReadydocument.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) { // здесь обработайте ошибку регистрации });onDeviceReady
Section titled “onDeviceReady”PushNotification.prototype.onDeviceReady = function( config )[android, ios, wp8, windows] Инициализирует плагин Wavesend и запускает стартовое push-сообщение. Следует вызывать при каждом запуске приложения.
config.appid – Application code Wavesend.
config.projectid – номер проекта GCM для платформы Android.
config.serviceName – имя службы MPNS для платформы wp8.
// инициализация Wavesend с projectid: "GOOGLE_PROJECT_NUMBER", appid : "PUSHWOOSH_APP_ID", serviceName : "WINDOWS_PHONE_SERVICE". Это вызовет все ожидающие push notifications при запуске.pushwoosh.onDeviceReady({ appid : "XXXXX-XXXXX", projectid: "XXXXXXXXXXXXXXX", serviceName: "XXXX"});registerDevice
Section titled “registerDevice”PushNotification.prototype.registerDevice = function( success, fail )[android, ios, wp8, windows]
Регистрирует устройство для push notifications и получает Push Token.
success – колбэк успешного выполнения. Push token передается в этот колбэк в качестве параметра “status.pushToken”.
fail – колбэк ошибки.
pushwoosh.registerDevice( function(status) { alert("Устройство зарегистрировано с push token: " + status.pushToken); }, function(error) { alert("Не удалось зарегистрировать: " + error); });unregisterDevice
Section titled “unregisterDevice”PushNotification.prototype.unregisterDevice = function( success, fail )[android, ios, wp8, windows]
Отменяет регистрацию устройства для получения push notifications.
success – колбэк успешного выполнения.
fail – колбэк ошибки.
setTags
Section titled “setTags”PushNotification.prototype.setTags = function( config, success, fail )[android, ios, wp8, windows]
Устанавливает tags для устройства.
Параметры
config – объект с пользовательскими tags устройства.
success – колбэк успешного выполнения. Push token передается в этот колбэк в качестве параметра “status.pushToken”.
fail – колбэк ошибки.
// устанавливает tags: “deviceName” со значением “hello” и “deviceId” со значением 10pushwoosh.setTags({deviceName:"hello", deviceId:10}, function() { console.warn('setTags выполнен успешно'); }, function(error) { console.warn('setTags не выполнен'); });
// устанавливает списочные tags "MyTag" со значениями (массив) "hello", "world"pushwoosh.setTags({"MyTag":["hello", "world"]});getTags
Section titled “getTags”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)); });getPushToken
Section titled “getPushToken”PushNotification.prototype.getPushToken = function( success )[android, ios, wp8, windows]
Возвращает Push Token, если он доступен. Обратите внимание, что токен также приходит в колбэке функции registerDevice.
success – колбэк успешного выполнения.
pushwoosh.getPushToken( function(token) { console.warn('push token: ' + token); });getPushwooshHWID
Section titled “getPushwooshHWID”PushNotification.prototype.getPushwooshHWID = function( success )[android, ios, wp8, windows]
Возвращает HWID Wavesend, используемый для взаимодействия с Wavesend API.
success – колбэк getPushwooshHWID.
pushwoosh.getPushwooshHWID( function(token) { console.warn('Wavesend HWID: ' + token); });getRemoteNotificationStatus
Section titled “getRemoteNotificationStatus”PushNotification.prototype.getRemoteNotificationStatus = function( callback, error )[android, ios]
Возвращает подробный статус разрешений на push notification.
callback – колбэк успешного выполнения. Получает объект со следующими свойствами:
{
”enabled” : флаг, указывающий, включены ли уведомления.
”pushBadge” : разрешение на значки на иконке приложения (badges) предоставлено. (только для iOS)
”pushAlert” : разрешение на оповещения (alert) предоставлено. (только для iOS)
”pushSound” : разрешение на звук предоставлено. (только для iOS)
}
error — колбэк ошибки.
setApplicationIconBadgeNumber
Section titled “setApplicationIconBadgeNumber”PushNotification.prototype.setApplicationIconBadgeNumber = function( badgeNumber )[android, ios] Устанавливает число на иконке приложения (badge).
badgeNumber – число на иконке приложения.
getApplicationIconBadgeNumber
Section titled “getApplicationIconBadgeNumber”PushNotification.prototype.getApplicationIconBadgeNumber = function( callback )[android, ios] Возвращает число на иконке приложения (badge).
callback – колбэк успешного выполнения.
pushwoosh.getApplicationIconBadgeNumber(function(badge){ alert(badge);} );addToApplicationIconBadgeNumber
Section titled “addToApplicationIconBadgeNumber”PushNotification.prototype.addToApplicationIconBadgeNumber = function( badgeNumber )[android, ios] Добавляет значение к числу на иконке приложения (badge).
badgeNumber — инкрементальное число для иконки приложения.
getLaunchNotification
Section titled “getLaunchNotification”PushNotification.prototype.getLaunchNotification = function( callback )[android, ios]
Возвращает полезную нагрузку push notification, если приложение было запущено в ответ на push notification, или null.
callback – колбэк успешного выполнения.
clearLaunchNotification
Section titled “clearLaunchNotification”PushNotification.prototype.clearLaunchNotification = function( callback )[android, ios] Очищает уведомление о запуске, после этого вызова getLaunchNotification() вернет null.
setUserId
Section titled “setUserId”PushNotification.prototype.setUserId = function( userId )[android, ios]
Задает User ID — идентификатор пользователя, такой как Facebook ID, имя пользователя, email или любой другой идентификатор. Это позволяет сопоставлять данные и Events на нескольких устройствах пользователя.
userId – строковый идентификатор пользователя.
postEvent
Section titled “postEvent”PushNotification.prototype.postEvent = function( event, attributes )[android, ios]
Отправляет Events для In-App Messages. Это может вызвать отображение In-App message, как указано в Control Panel Wavesend.
event – Event для запуска.
attributes – объект с дополнительными атрибутами Event.
pushwoosh.setUserId("XXXXXX");pushwoosh.postEvent("buttonPressed", { "buttonNumber" : 4, "buttonLabel" : "banner" });createLocalNotification
Section titled “createLocalNotification”PushNotification.prototype.createLocalNotification = function( config, success, fail )[android, ios] Планирует локальное уведомление.
config.msg – текст уведомления.
config.seconds – задержка уведомления в секундах.
config.userData – дополнительные данные для передачи в уведомлении.
success – колбэк успешного выполнения.
fail – колбэк ошибки.
pushwoosh.createLocalNotification({msg:"Ваши тыквы готовы!", seconds:30, userData:{}})clearLocalNotification
Section titled “clearLocalNotification”PushNotification.prototype.clearLocalNotification = function()[android] Удаляет все ожидающие локальные уведомления, созданные с помощью createLocalNotification.
clearNotificationCenter
Section titled “clearNotificationCenter”PushNotification.prototype.clearNotificationCenter = function()[android] Удаляет все уведомления, отображаемые в центре уведомлений Android.
setMultiNotificationMode
Section titled “setMultiNotificationMode”PushNotification.prototype.setMultiNotificationMode = function( success, fail )[android] Позволяет отображать несколько уведомлений в центре уведомлений Android.
setSingleNotificationMode
Section titled “setSingleNotificationMode”PushNotification.prototype.setSingleNotificationMode = function( success,fail )[android] Позволяет отображать только последнее уведомление в центре уведомлений Android.
setSoundType
Section titled “setSoundType”PushNotification.prototype.setSoundType = function( type, success, fail )[android]
Устанавливает звук по умолчанию для входящих pushes.
type – Тип звука (0 – по умолчанию, 1 – без звука, 2 – всегда).
setVibrateType
Section titled “setVibrateType”PushNotification.prototype.setVibrateType = function(type, success, fail )[android]
Устанавливает режим вибрации по умолчанию для входящих pushes.
type – Тип вибрации (0 – по умолчанию, 1 – без вибрации, 2 – всегда).
setLightScreenOnNotification
Section titled “setLightScreenOnNotification”PushNotification.prototype.setLightScreenOnNotification = function( on, success, fail )[android] Включает экран при поступлении уведомления.
on – включить/выключить разблокировку экрана (по умолчанию выключено).
setEnableLED
Section titled “setEnableLED”PushNotification.prototype.setEnableLED = function( on, success, fail )[android] Включает мигание светодиода, когда приходит уведомление и дисплей выключен.
on – включить/выключить мигание светодиода (по умолчанию выключено).
setColorLED
Section titled “setColorLED”PushNotification.prototype.setColorLED = function( color, success, fail )[android] Устанавливает цвет светодиода. Используйте с setEnableLED.
color – цвет светодиода в целочисленном формате ARGB.
getPushHistory
Section titled “getPushHistory”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();clearPushHistory
Section titled “clearPushHistory”PushNotification.prototype.clearPushHistory = function()[android] Очищает историю push-уведомлений.
cancelAllLocalNotifications
Section titled “cancelAllLocalNotifications”PushNotification.prototype.cancelAllLocalNotifications = function( callback )[ios] Удаляет все локальные уведомления из центра уведомлений.
presentInboxUI
Section titled “presentInboxUI”[android, ios]
Открывает экран Message Inbox.
PushNotification.prototype.presentInboxUI = function()setCommunicationEnabled
Section titled “setCommunicationEnabled”Бинарный метод, включающий/отключающий всю коммуникацию с Wavesend. Значение false отписывает устройство от получения push notifications и останавливает загрузку in-app messages. Значение true отменяет этот эффект.
PushNotification.prototype.setCommunicationEnabled = function(enable, success, fail)removeAllDeviceData
Section titled “removeAllDeviceData”Удаляет все данные об устройстве.
PushNotification.prototype.removeAllDeviceData = function()push-receive
Section titled “push-receive”[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. См. руководство по настройке плагина, чтобы управлять этим поведением.
push-notification
Section titled “push-notification”[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.
additionalAuthorizationOptions
Section titled “additionalAuthorizationOptions”[только для iOS] Предоставляет _д_ополнительные опции авторизации уведомлений. Следует вызывать перед вызовом registerDevice.
pushwoosh.additionalAuthorizationOptions({ "UNAuthorizationOptionCriticalAlert" : 1, "UNAuthorizationOptionProvisional": 0 // установите 0 или не указывайте опцию, если не хотите добавлять ее в приложение.});