Pushwoosh greatly reduced our time-to-market for our notification services. Operating in a highly competitive market this keeps us at the front-end of innovation, a requirement for any modern company these days. I specifically appreciate the quick and accurate support; it is a great pleasure to work with them.

Rob Weijers

CEO

Digital Design and App Development company

READ TESTIMONIAL

Appcelerator Titanium iOS Push Notification

To integrate Pushwoosh into your Appcelerator Titanium iOS application you need to do simple following steps:

1. Download the following script and place it in your Resources folder (the folder where app.js is located):

https://github.com/shaders/push-notifications-sdk/blob/master/SDK%20Sample%20Projects/Appcelerator%20Titanium/iOS/Resources/pushwoosh.js

2. Include the following line in your app.js. Replace ‘YOUR_PUSHWOOSH_APP_CODE’ with your Pushwoosh application code from the control panel.

Ti.include('pushwoosh.js');
PushWoosh.appCode = 'YOUR_PUSHWOOSH_APP_CODE';

3. Registering and handling push notifications. On start of the application call the following function:

	Ti.Network.registerForPushNotifications({
		types : [Ti.Network.NOTIFICATION_TYPE_BADGE, Ti.Network.NOTIFICATION_TYPE_ALERT, Ti.Network.NOTIFICATION_TYPE_SOUND],
		success : function(e) {
			var deviceToken = e.deviceToken;
			Ti.API.info('successfully registered for apple device token with ' + e.deviceToken);

			PushWoosh.register(function(data) {
				Ti.API.debug("PushWoosh register success: " + JSON.stringify(data));
			}, function(e) {
				Ti.API.warn("Couldn't register with PushWoosh: " + JSON.stringify(e));
			});
		},
		error : function(e) {
			Ti.API.warn("push notifications disabled: " + JSON.stringify(e));
		},
		callback : function(e) {
			Ti.API.warn("push message received: " + JSON.stringify(e));

			//send stats to Pushwoosh about push opened
			PushWoosh.sendPushStat(e.data.p);

			var a = Ti.UI.createAlertDialog({
				title : 'New Message',
				message : e.data.alert
				//message : JSON.stringify(e.data)	//if you want to access additional custom data in the payload
			});
			a.show();
		}
	});

4. Expert mode on!

Tags (please note the device have to be registered with Pushwoosh before calling this method):

				PushWoosh.setTags({alias:"device1"}, function(data) {
						Ti.API.debug("PushWoosh sendTags success: " + JSON.stringify(data));
					},function(e) {
						Ti.API.warn("Couldn't setTags with PushWoosh: " + JSON.stringify(e));
				});

Stats:

call this function on start to track application open stat

//record stats for app open with Pushwoosh
PushWoosh.sendAppOpen();

call this function in your push notifications handler to track opened push notifications count:

//send stats to Pushwoosh about push opened
PushWoosh.sendPushStat(e.data.p);

Auto badges

In order to make auto badges work, every time you change badge value in your app call the following function:

//notifies Pushwoosh about current badge value
PushWoosh. sendBadge(5);

If you have any problems, check out Appcelerator Titanium push notifications sample app:

https://github.com/shaders/push-notifications-sdk/tree/master/SDK%20Sample%20Projects/Appcelerator%20Titanium/iOS

NOTE: iOS Simulator is not able neither to subscribe nor receive push notifications.