UnifiedPush notifications for your Matrix server with ntfy
This Ansible role provisionally named “matrix-ntfy” lets a Matrix server operator offer self-hosted Google-less push notifications for their users.
The ntfy server implements the UnifiedPush standard. Developed around 2021, this free and open source standard lets a user choose to receive push notifications through their own (or preferred) push server instead of through Google's FCM push-notification servers. To do so, a user first installs ntfy on their device and tells it where their preferred ntfy server is. Then any UnifiedPush-compatible matrix client apps, and indeed some non-matrix apps too, will automatically use it. This is particularly valuable for people who choose a de-Googled Android-compatible phone such as LineageOS or /e/OS, that is not connected to Google services.
Being an open standard, there are other UnifiedPush servers besides ntfy. And, while particularly useful with Android, it can also be used on other platforms.
On the server side
A matrix server such as Synapse will send push notifications via ntfy, for a given user/device/app combination, when the user's matrix client app asks it to do so. The matrix server then pushes those notifications to the ntfy server's built-in “matrix push gateway” API. The matrix server can continue to send push notifications for other users and other apps in other ways.
Development of the “matrix-ntfy” role
When this server set-up role is ready to release, I expect to announce it here, and in TWIM, and in the project chat rooms mentioned below.
Meantime, it is already usable. I am using it myself in my personal matrix server. If you are willing to use it or review it or test it and report back in the #matrix-docker-ansible-deploy:devture.com room, that would be very helpful.