I am researching on Amazon SNS and Pubnub and APNS with its offline capability. And i had been reading on it for over 10 hours. Still havent consolidate all the details.
Does anyone has experience with Amazon SNS/SQS that if the APNS is offline, does it store the offline messages for you then sends it when its back online, as i read that Apple APNS removes the push notifications thats offline only stores the newest message. I am not sure if Amazon SQS would be able to know if the messages is not sent through APNS and queue it up. (As the structure goes SQS/SNS sends the messages to APNS, then the APNS to the devices, but what if the APNS sees the device is offline, is there a mechanism so the SNS/SQS knows that is offline and queue those messages up??)
And it looks like the payload for APNS is still limited by the OS to 2kb even the Amazon SNS is at 256kb?
I have read this thread What is advantage and disadvantage of using pubnub over Amazon Simple Notification Service (sns)?
But not sure which i should go for, i just need simple push notification that is reliable(Sure that it is sent to the device) and also stored if it is offline and send back to the device when it is back online. But IOS7 and prior seems to have a very low message payload size 256kb, i need atleast 1.5kb
An Additional point, is Pubnub similar to Whatsapp type, with TCP or XMPP protocol, that stays connected? Because i read that
Apple restricts applications on iOS from running in the background and therefore iOS developers may choose to implement APNS as a means to deliver realtime notifications to an iOS device when the application is running in the background.
So does it mean even if i have pubnub installed, when the app is in the background, i would NOT be able to receive messages from Pubnub? As IOS won't allowed Pubnub to continue to connect its socket in the background? But i am sure IOS apps can run in the background though and keep the socket connection alive?
As you have read in What is advantage and disadvantage of using pubnub over Amazon Simple Notification Service (sns)?, Both PubNub Real-Time Network and Amazon SNS use a Publish/Subscribe metaphor for sending and routing data. But the two of them solve different problems, so it really depends on what you are looking to solve.
PubNub is explicitly designed to deliver data with low latencies (under 0.25 seconds SLA) to end-user devices, including smartphones, tablets, browsers, and laptops. PubNub accomplishes this by maintaining an always open socket connection to every device, and using this open socket connection to “push” data at low latencies. Amazon SNS is not the correct tool for in-app real-time notifications. Amazon SNS is more analogous to Tibco or Tuxedo, which are server-to-server Publish/Subscribe systems.
PubNub's core focus is on getting data to millions of devices quickly. PubNub works by broadcasting data: with PubNub, each phone subscribes to a channel while the server publishes data to that channel. Thus, millions of phones can subscribe to the same channel where PubNub replicates and delivers data to each device simultaneously (usually in under 1/4 second).
Apple Push Notification System (APNS) is designed to send data to one device at a time, with no guarantees on latency. APNS is ideal for waking up the app when the app is not being currently used (i.e. inactive). When APNS and PubNub are used together, APNS is used for alerts to a user when the app is not being used, and when the app is launched, it connects to a PubNub channel for very fast connectivity and data synchronization across the audience of people using the app.
Mobile Push Notifications for APNs lets you send APNs even when devices are offline with PubNub Mobile Push Notifications. This lets you deliver mobile push notifications to iOS and Android devices, even when an app is offline and Message Queuing ensures delivery of messages even with mobile connection dropouts.