What is Gotify?
It's a locally hosted notification server. The phone app is Android-only, so if you're an iOS user, you can stop reading here. - Gotify · a simple server for sending and receiving messages
To use it you need to: have a DDNS or fixed IP to connect back from the internet, set up your router firewall to forward a port to the host machine, and set up NGINX or other web server on the host machine to proxy the http and websocket connections to the Gotify server. The notification are completely local when you're on the LAN, so if my WAN goes down and I'm home, my phone will receive alerts letting me know. When away from home, the phone app connects back to home using the DDNS name. The only reliance on cloud services is that I use no-ip.com to keep the DDNS record updated when my WAN IP changes. You can have different priorities for messages, and those are grouped into 4 categories in Android, so you can have up to 4 notifications based on priority. I have silent (priority 0), a quiet tone (priority 1-3), a slightly louder tone (priority 4-7) and the Star Trek original series Red Alert klaxon (priority 8 messages - the ones I need to look at NOW).
That Gotify node in my flow is actually a sub-flow, not a node from the palette. I use the sub-flow just to make things look a little cleaner, but you can just send the server a jSON formatted msg.payload via a http-out (POST) node and it will send the notification. I find it easier to use with the sub-flow setting up the message for me based on the parameters in the change nodes.