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