I've been using Gotify [1] for a very long time and have been quite happy with it. Basically no impact on battery life. For devs - there are mature libraries like shoutrr [2] and apprise [3] that let you support multiple notification systems with no extra work.
Right, but if you use ntfy.sh you can get proper mobile push notifications (instead of keeping the app running and using long polling or websockets).
If you use the public version of ntfy.sh then you don't need to do anything to set this up. If you self-host, you need your own Firebase Cloud Messaging (FCM) account and (for iOS) your own Apple Developer account so you can use APN.
Also the docs point out >Using Firebase is optional and only works if you modify and build your own Android .apk. For a self-hosted instance, it's easier to just not bother with FCM.
Who cares? Battery consumption of Gotify is negligible (it uses websockets). Same with CPU/RAM. What's the benefit of giving Google your notifications?
Publicly hosted version is nearly useless if you'd like to use it to send notifications from your tiny workers/scripts/processes in the big datacentres - I have a minuscule worker in CF that needs to send one notification once every few days, and I *ALWAYS* get a 429. Always.
So this is good maybe if you're using it to sent from your laptop to your phone.
Yes exactly, it's an easy way to build a web-based app and run it on iOS and Android, accessing the native API through a javascript bridge. There's also NativeScript in that space
The difference: Your phone doesn't get notifications from your notification service directly, but from Mozilla which helps to hide your digital fingerprint of you using a separate notification provider like ntfy. Prism also allows Telegram or Signal to act as a notification distributor.
In addition, I use Proton Mail which doesn't really allow custom notification services. Prism has a custom integration to work around that so your proton mail notifications don't have to touch google services.
I meant that at the network level, should something be monitoring, your client would be making requests to a unique (ntfy) address that virtually nobody else ever uses. Requests to Mozilla are more crowd blended as it's quite popular already.
The webpush endpoint registration is initiated from the client. The Android app can act as a client and it's the one that registers Mozilla's autopush service.
Love ntfy. I've used it for a lot of things, but probably the most esoteric would be sending a notification from Minecraft via ComputerCraft 1.58 when my BuildCraft Quarry finishes: https://pastebin.com/n2PRwW0E
I used them for some time but their Android app used to drain my battery fast, so I moved on onto a pay-once use forever app (pushover), that works great on my phone, and that supports all of the features that I need for push notifications
I use it to send commands and URLs between my devices.
On Linux you can do `ntfy sub` and on android you can have Tasker react when a ntfy notification arrives based on its title and contents. So on just about all my devices I have a background script running that is subscribed to a "DeviceCommands" channel that checks if the Title of new messages contains the device hostname or not. If it does it triggers a script based on the contents of the body.
Such a great, simple and reliable service. Using it for all sorts of things: nostr push notifications, link sharing between devices, grafana alert notifications.
Not Open Source but I’ve been using https://pushover.net/ for this use case since forever. The website still looks the same as on the day I signed up for it probably more than 10 years ago. Never had an issue and using that in all my scripts or cron jobs.
FCM (Firebase Cloud Messaging), and Apple's own APN (Apple Push Notifications) work as a single OS level service, and they are multiplexed so that many different apps can route through them with a single connection, even waking your phone/watch from sleep. There are open/de-Googled alternatives like UnifiedPush, but they're not integrated at the OS layer (they run as a background worker thread), and can't match the battery efficiency or sleep-wake capabilities of those built into the OS/low-level networking layer.
Probably not permissions so
much as proper implementation of push messaging for mobile. Apple created a push message infrastructure and Google followed that allows their messaging infrastructure already running on the phone to multiplex messages for multiple apps without needing additional power for listening.
I use Pushover for email push notifications- it doesn’t have a subscription and using the proper APIs.
What do you mean by "battery consuming application"? At least the PWA of ntfy can use Web Push, which uses your browser's existing push notification service and should not consume any additional battery.
1. https://gotify.net/
2. https://shoutrrr.nickfedor.com/v0.17.0/
3. https://github.com/caronc/apprise
If you use the public version of ntfy.sh then you don't need to do anything to set this up. If you self-host, you need your own Firebase Cloud Messaging (FCM) account and (for iOS) your own Apple Developer account so you can use APN.
https://docs.ntfy.sh/config/#firebase-fcm
So this is good maybe if you're using it to sent from your laptop to your phone.
The difference: Your phone doesn't get notifications from your notification service directly, but from Mozilla which helps to hide your digital fingerprint of you using a separate notification provider like ntfy. Prism also allows Telegram or Signal to act as a notification distributor. In addition, I use Proton Mail which doesn't really allow custom notification services. Prism has a custom integration to work around that so your proton mail notifications don't have to touch google services.
Only one minor caveat for self-hosted iOS users - content of the messages come from your server, but the trigger still comes from ntfy.sh server.
I use it to send commands and URLs between my devices.
On Linux you can do `ntfy sub` and on android you can have Tasker react when a ntfy notification arrives based on its title and contents. So on just about all my devices I have a background script running that is subscribed to a "DeviceCommands" channel that checks if the Title of new messages contains the device hostname or not. If it does it triggers a script based on the contents of the body.
E.g.:
Title: Pixel8
Message: https://kagi.com
Will automatically send the URL to my browser.
Or:
Title: LivingRoomPC
Message: Shutdown
Will shut down the computer.
And you get a nice client with icons for each notification source, can filter by them, etc.
cause they seem like perfectly integrated themselves into this, while ntfy has to pose itself as battery consuming application
I'm planning to using ntfy for notifications like bitwarden vault backups, if apps are updated.
I use Pushover for email push notifications- it doesn’t have a subscription and using the proper APIs.