Whatever Zulip is offering here is not good and if these other offerings can make it free, Zulip should be able to too without charge or requiring I recompile their app.
Whatever Zulip is offering here is not good and if these other offerings can make it free, Zulip should be able to too without charge or requiring I recompile their app.
Android + Apple OS only listen to their respective ecosystem's push notification system, in order to minimize battery drain + needed background services on their phones.
Element has a push server to send to Apple + Google's offerings:
https://ems-docs.element.io/books/element-support/page/under...
You can configure Element to use ntfy, or some other unifiedpush implementation, but (a) this is hopeless on stock iOS devices since apple severely limits what background services can do (b) this is frustrating on Android because there is inconsistent handling of background services.
Since I use android, I've taken option (b), and it's worked mostly okay, because I've figured out the specific magic spell for my OnePlus phone to leave the background ntfy service alone, and I'm willing to eat the extra battery to have one more service running in the background.
I don't know about Matrix, but for XMPP, push notifications work like this:
XMPP Client tells the XMPP server where to send push notifications to (a server controlled by the client author); the XMPP server sends notifications there; the server connects with an API key to Google or Apple for the push notification to appear on your phone.
Presumably the cost of running a server is low enough that free Matrix and XMPP apps exist. It's definitely not free.
Zulip is charging to nudge businesses into using their paid version. It's their server that they are running, so they are free to do so. Your Matrix and/or XMPP client is choosing to not charge, which they are also free to do so.
Zulip provides instructions on how to use a different notification server; if you want to avoid giving them money that much, then you can do so.