6
votes

We have an app (Ruby on Rails) that sends push notifications to an android app and we're facing an issue with GCM where some of these notifications are either delayed or never received. Considering the fact that these notifications are being sent to employees and not end-users my questions is:

What the best way to send these push notifications without any delay or drop and is there a way to send push notifications independently from the available services such as GCM and SNS?

Please keep in mind that we're looking for a solutions that can send these notifications without any delay as for the app to perform well the notification must be received within 1 to 20 seconds from the time it was sent.

Thanks in advance for anyone that will reply to this question...

1
Does this happen only on certain devices, in a certain network or on all? Maybe you have general connectivity issues with GCM on these devices. Dial *#*#426#*#* and check if the device is connected to Google Play Services. Usually port 5228 is used, but maybe it is blocked in your network. In this case port 443 is used as fallback, but some devices seem to don't use the fallback and therefore fail to receive push notifications. Have a look at this thread on google forum for more information...Baris Akar

1 Answers

1
votes

Have a look at "Pushy":

They state the following on their website:

The most reliable push notification gateway, perfect for real-time applications.

Google Cloud Messaging simply doesn't cut it for time-sensitive, real-time apps, due to its instability and push notification throttling.

Pushy works by maintaining a dedicated background socket connection using the MQTT protocol, an extremely light-weight pub/sub protocol that consumes very little network bandwidth and battery, which makes it perfect for mobile.

You can use it for free with up to 100 devices, so you could just give it a try to see, if it fits your needs. I didn't try it.