Links

Cordova Plugin API Reference

API methods to manage push notifications for Cordova project
example
var pushwoosh = cordova.require("pushwoosh-cordova-plugin.PushNotification");
// Should be called before pushwoosh.onDeviceReady
document.addEventListener('push-notification', function(event) {
var notification = event.notification;
// handle push open here
});
// Initialize Pushwoosh. This will trigger all pending push notifications on start.
pushwoosh.onDeviceReady({
appid: "XXXXX-XXXXX",
projectid: "XXXXXXXXXXXXXXX",
serviceName: "XXXX"
});
pushwoosh.registerDevice(
function(status) {
var pushToken = status.pushToken;
// handle successful registration here
},
function(status) {
// handle registration error here
}
);

onDeviceReady

PushNotification.prototype.onDeviceReady = function( config )
[android, ios, wp8, windows] Initializes Pushwoosh plugin and triggers a start push message. Should be called on every app launch.
config.appid – Pushwoosh application code.
config.projectid – GCM project number for Android platform.
config.serviceName – MPNS service name for wp8 platform.
example
// initialize Pushwoosh with projectid: "GOOGLE_PROJECT_NUMBER", appid : "PUSHWOOSH_APP_ID", serviceName : "WINDOWS_PHONE_SERVICE". This will trigger all pending push notifications on start.
pushwoosh.onDeviceReady({
appid : "XXXXX-XXXXX",
projectid: "XXXXXXXXXXXXXXX",
serviceName: "XXXX"
});

registerDevice

PushNotification.prototype.registerDevice = function( success, fail )
[android, ios, wp8, windows] Registers device for push notifications and retrieves a push Token.
success – success callback. Push token is passed as “status.pushToken” parameter to this callback
fail – error callback
example
pushwoosh.registerDevice(
function(status) {
alert("Registered with push token: " + status.pushToken);
},
function(error) {
alert("Failed to register: " + error);
}
);

unregisterDevice

PushNotification.prototype.unregisterDevice = function( success, fail )
[android, ios, wp8, windows] Unregisters device from receiving push notifications.
success – success callback
fail – error callback

setTags

PushNotification.prototype.setTags = function( config, success, fail )
[android, ios, wp8, windows] Sets tags for the device.
Parameters
config – object with custom device tags
success – success callback. Push token is passed as “status.pushToken” parameter to this callback
fail – error callback
example
// sets tags: “deviceName” with value “hello” and “deviceId” with value 10
pushwoosh.setTags({deviceName:"hello", deviceId:10},
function() {
console.warn('setTags success');
},
function(error) {
console.warn('setTags failed');
}
);
// sets list tags "MyTag" with values (array) "hello", "world"
pushwoosh.setTags({"MyTag":["hello", "world"]});

getTags

PushNotification.prototype.getTags = function( success, fail )
[android, ios, wp8, windows] Returns tags for the device including default tags.
success – success callback. Receives tags as parameters
fail – error callback
pushwoosh.getTags(
function(tags) {
console.warn('tags for the device: ' + JSON.stringify(tags));
},
function(error) {
console.warn('get tags error: ' + JSON.stringify(error));
}
);

getPushToken

PushNotification.prototype.getPushToken = function( success )
[android, ios, wp8, windows] Returns push token if it is available. Note that the token also comes in registerDevice function callback.
success – success callback.
pushwoosh.getPushToken(
function(token) {
console.warn('push token: ' + token);
}
);

getPushwooshHWID

PushNotification.prototype.getPushwooshHWID = function( success )
[android, ios, wp8, windows] Returns Pushwoosh HWID used for communications with Pushwoosh API.
success – getPushwooshHWID callback
pushwoosh.getPushwooshHWID(
function(token) {
console.warn('Pushwoosh HWID: ' + token);
}
);

getRemoteNotificationStatus

PushNotification.prototype.getRemoteNotificationStatus = function( callback, error )
[android, ios] Returns detailed status of push notification permissions.
callback – success callback. Receives object with following properties:
{ ”enabled” : notificaions enabled flag. ”pushBadge” : badges permission granted. (iOS only) ”pushAlert” : alert permission granted. (iOS only) ”pushSound” : sound permission granted. (iOS only) }
error — error callback

setApplicationIconBadgeNumber

PushNotification.prototype.setApplicationIconBadgeNumber = function( badgeNumber )
[android, ios] Set the application icon badge number.
badgeNumber – icon badge number

getApplicationIconBadgeNumber

PushNotification.prototype.getApplicationIconBadgeNumber = function( callback )
[android, ios] Returns application icon badge number.
callback – success callback
pushwoosh.getApplicationIconBadgeNumber(function(badge){ alert(badge);} );

addToApplicationIconBadgeNumber

PushNotification.prototype.addToApplicationIconBadgeNumber = function( badgeNumber )
[android, ios] Adds value to application icon badge.
badgeNumber — incremental icon badge number

getLaunchNotification

PushNotification.prototype.getLaunchNotification = function( callback )
[android, ios] Returns push notification payload if the app was started in response to a push notification, or null.
callback – success callback

clearLaunchNotification

PushNotification.prototype.clearLaunchNotification = function( callback )
[android, ios] Clears launch notification, getLaunchNotification() will return null after this call.

setUserId

PushNotification.prototype.setUserId = function( userId )
[android, ios] Sets User indentifier– a Facebook ID, username,email, or any other user ID. This allows data and events to be matched across multiple user devices.
userId – user string identifier

postEvent

PushNotification.prototype.postEvent = function( event, attributes )
[android, ios] Posts events for In-App Messages. This can trigger In-App message display as specified in Pushwoosh Control Panel.
event – event to trigger
attributes – object with additional event attributes
pushwoosh.setUserId("XXXXXX");
pushwoosh.postEvent("buttonPressed", { "buttonNumber" : 4, "buttonLabel" : "banner" });

createLocalNotification

PushNotification.prototype.createLocalNotification = function( config, success, fail )
[android, ios] Schedules local notification.
config.msg – notification message
config.seconds – notification delay in seconds
config.userData – additional data to pass in notification
success – success callback
fail – error callback
pushwoosh.createLocalNotification({msg:"Your pumpkins are ready!", seconds:30, userData:{}})

clearLocalNotification

PushNotification.prototype.clearLocalNotification = function()
[android] Clears all pending local notifications created by createLocalNotification

clearNotificationCenter

PushNotification.prototype.clearNotificationCenter = function()
[android] Clears all notifications presented in Android Notification Center.

setMultiNotificationMode

PushNotification.prototype.setMultiNotificationMode = function( success, fail )
[android] Allows multiple notifications to be displayed in the Android Notification Center.

setSingleNotificationMode

PushNotification.prototype.setSingleNotificationMode = function( success,
fail )
[android] Allows only the last notification to be displayed in Android Notification Center.

setSoundType

PushNotification.prototype.setSoundType = function( type, success, fail )
[android] Sets default sound for incoming pushes.
type – Sound type (0 – default, 1 – no sound, 2 – always)

setVibrateType

PushNotification.prototype.setVibrateType = function(type, success, fail )
[android] Sets default vibration mode for incoming pushes.
type – Vibration type (0 – default, 1 – no vibration, 2 – always)

setLightScreenOnNotification

PushNotification.prototype.setLightScreenOnNotification = function( on, success, fail )
[android] Turns screen on when notification arrives.
on – enable/disable screen unlock (disabled by default)

setEnableLED

PushNotification.prototype.setEnableLED = function( on, success, fail )
[android] Enables led blinking when notification arrives and display is off.
on – enable/disable LED blink (disabled by default)

setColorLED

PushNotification.prototype.setColorLED = function( color, success, fail )
[android] Sets led color. Use with setEnableLED.
color – LED color in ARGB integer format

getPushHistory

PushNotification.prototype.getPushHistory = function( success )
[android] Returns array of received push notifications.
success – success callback
pushwoosh.getPushHistory(function(pushHistory) {
if(pushHistory.length == 0)
alert("no push history");
else
alert(JSON.stringify(pushHistory));
});
pushwoosh.clearPushHistory();

clearPushHistory

PushNotification.prototype.clearPushHistory = function()
[android] Clears push history.

cancelAllLocalNotifications

PushNotification.prototype.cancelAllLocalNotifications = function( callback )
[ios] Clears all local notifications from the notification center.

presentInboxUI

[android, ios] Opens Inbox screen.
PushNotification.prototype.presentInboxUI = function()

setCommunicationEnabled

A binary method enabling/disabling all communication with Pushwoosh. The boolean value is false unsubscribes the device from receiving push notifications and stops in-app messages download. The value true reverses the effect.
PushNotification.prototype.setCommunicationEnabled = function(enable, success, fail)

removeAllDeviceData

Removes all data about the device.
PushNotification.prototype.removeAllDeviceData = function()

push-receive

[android, ios] Push notification receive event. Is fired when application receives push notification in foreground or background. Closed applications does not receive this event.
Event properties
message – (string) Push notification message
userdata – (object/array) Push notification custom data
onStart – (boolean) Is launch notification
foreground – (boolean) Is notification received in foreground
android – (object) Android specific notification payload
ios – (object) iOS specific notification payload
wp8 – (object) Windows Phone specific notification payload
windows – (object) Windows specific notification payload
document.addEventListener('push-receive',
function(event) {
var userData = event.notification.userdata;
if (typeof(userData) != "undefined") {
// handle custom notification data
console.warn('user data: ' + JSON.stringify(userData));
}
}
);

Foreground notifications

By default Pushwoosh plugin does not display notifications in the foreground and automatically triggers push-receive event. See plugin customization guide for controlling this behavior.

push-notification

[android, ios, wp8, windows] Push notification accept event. It is fired when user taps the push notification.
document.addEventListener('push-notification',
function(event) {
var message = event.notification.message;
var userData = event.notification.userdata;
if (typeof(userData) != "undefined") {
console.warn('user data: ' + JSON.stringify(userData));
}
}
);
Event properties
Same as push-receive

additionalAuthorizationOptions

[ios only] Provides additional notification authorization options. Should be called before calling registerDevice.
pushwoosh.additionalAuthorizationOptions({
"UNAuthorizationOptionCriticalAlert" : 1,
"UNAuthorizationOptionProvisional": 0 // set 0 or don't specify the option if you don't want to add it to your app.
});