uniqush / uniqush-push

Uniqush is a free and open source software system which provides a unified push service for server side notification to apps on mobile devices.
http://uniqush.org
Apache License 2.0
1.54k stars 201 forks source link

APNS HTTP API with same cert/key as the binary API. Based on #149 #173

Closed TysonAndre closed 7 years ago

TysonAndre commented 7 years ago

This requires calling /addpsp again, and providing bundleid in addition to pre-existing parameters.

It would currently be difficult (inconvenient, and possibly backwards incompatible, but not impossible) to migrate old subscribers from cert/key to p8

Store the bundleid in VolatileData, so that the computed hash of the PSP remains the same, and existing subscriptions will work.

Fix test failures, still need to allow requests to specify http2

allow specifying uniqush.http2=1 in query params for per-request APNS override (Later, when this is well tested and performance change is known, this may be in a config or always done when bundleid is known)

allow multiple APNS HTTP2 PSPs with different certificates (With the p8 approach, that wouldn't be a problem, but with client certificates, it is)

Finish getting the HTTP2 protocol to work

Disable IdleTimeout (the same as GCM). Timing out after 90 seconds would make latency unpredictable, and may cause errors when pushes are infrequent or sporadic.


Bug fixes: