parse-server-push-adapter
parse-server-push-adapter copied to clipboard
Add support for FCM http2 API
New Feature / Enhancement Checklist
- [x] I am not disclosing a vulnerability.
- [x] I am not just asking a question.
- [x] I have searched through existing issues.
Current Limitation
https://github.com/parse-community/parse-server-push-adapter/issues/219 added support for the FCM HTTP v1 API, which supports HTTP/2 connectivity.
Feature / Enhancement Description
Add support for sending push notifications via HTTP/2 connectivity when using FCM.
3rd Party References
- https://eladnava.com/send-multicast-notifications-using-node-js-http-2-and-the-fcm-http-v1-api/
- https://www.npmjs.com/package/fcm-v1-http2
Thanks for opening this issue!
- 🎉 We are excited about your ideas for improvement!
@jimnor0xF you wrote https://github.com/parse-community/parse-server-push-adapter/issues/219#issuecomment-1685309133; could you please elaborate a bit what's to do here, if anything? cc @mman
@mtrezza Unfortunately, firebase-admin-node in its current state does not use/support HTTP/2 at the moment. So we are dependent on the maintainers for that package to add support for that first.
There is a PR up: https://github.com/firebase/firebase-admin-node/pull/2550, so hopefully it is merged soon. It probably will, since this is a pretty critical oversight on their part considering that the old API is supposed to be removed next month.
It seems the required PR has been merged today: https://github.com/firebase/firebase-admin-node/pull/2550
Could we already start to prepare a PR that works with that change?
@mtrezza Should be to just bump the version of the package to v12.3.0 from what I understand. Defaults to http2.
From https://github.com/firebase/firebase-admin-node/issues/2488#issuecomment-2251304450:
This can be enabled by using the enableLegacyTransport() method. This method is already marked as deprecated and will be removed once the HTTP/2 transport is considered fully stable.
Then maybe we should expose this method as well? Or will there be a way for developers access it?
🎉 This change has been released in version 6.5.0