Rocket.Chat's Community Open Call 🎤 Dec 15, 2021 Join us!

Apple Push Notification Service Update from Legacy Binary Protocol

HI,

I have built a Rocket.Chat server and tested sending push notifications to an iOS client app that I built myself, without going through a gateway.

As a result, it seems that there are some cases where push notifications are not delivered for some reason. I have also confirmed that push notifications are sometimes delivered, but there are servers that do not deliver even after setting the certificate and authentication key in the same way.

One thing that caught my attention after checking the source is that the notification process to APNs seems to use gateway.push.apple.com.
Since the Apple legacy binary protocol is no longer supported, shouldn’t api.push.apple.com be used?

HI! I just got a word from our dev team on this:

"we don’t use gateway.push.apple.com as mentioned… we use node-apn to send pushes, which uses api.push.apple.com: node-apn/config.js at master · node-apn/node-apn · GitHub

Also, sometimes there is different logic for push delivery on channels, etc.

The best way to confirm it’s working or not is to go to the admin > Push Notifications and press the test button.

Let me know if that helped.

Thank you!
I confirmed that apn.js calls node-apn and node-apn uses api.push.apple.com.
It was my mistake.

A nice diagram regarding this subject:

Consider entering our #dev channel at open for more questions: