It is worth noting that this will use a noticeable amount of power more than Google cloud messaging. The basic idea of how is works is about the same, but the devil is in the details. If you look at an idle connection over LTE, you will notice that after a while your carrier will close it. You need keepalives. If you look at the connection for Google cloud messaging, you might notice that it needs much fewer keep alives than YOU need to keep your connection alive. This means fewer wakes from sleep mode and lower power.
Awesome! I've been working on a collection of news source parsers [1] (a combination of RSS and HTML scrapers) that this will work perfect with to replace my native news app. All I have to do is pipe the lines from my parser through a Python script issuing these message POST requests and it just works out of the box.<p>[1] <a href="https://github.com/wybiral/stream-sources" rel="nofollow">https://github.com/wybiral/stream-sources</a>
I gave it a quick try and "it just worked" with minimal configuration. Really easy to get started.<p>Unfortunately messages are only plaintext.
Although I've been using Pushover[0], a paid service, instead of Gotify, I found a really cool project to pair a push-notification service with is huginn[1], which allows you to program bots to do things on cron jobs, among other really powerful actions.<p>[0] <a href="https://pushover.net/" rel="nofollow">https://pushover.net/</a>
[1] <a href="https://github.com/huginn/huginn" rel="nofollow">https://github.com/huginn/huginn</a>
I would like to point out that there exists solutions tested in the field in the last 20 years to solve the same problem.<p>In particular I would suggest to get to know MQTT an open protocol with several (open and close) implementation that is know for its flexibility and scalability (if nothing has changed it is used to power the Messager Facebook platform, but don't quote me on that).<p>verneMQ is the server implementation I would suggest if you are interested in such topic.
Interesting project. Is this intended to replace Firebase Cloud Messaging on android or be a wrapper in front of it?<p>I only saw android support, anything for iOS in the works?
Funny, I was just looking for an alternative to pushover that doesn't use google services last week. Tested this and it worked quite well.<p>I actually wound up just using an SMS gateway provider with a simple API you can just fire a get request to.
<a href="https://pushpin.org/" rel="nofollow">https://pushpin.org/</a> is another alternative that has some history, has support for more protocols and is used in production by its creators
FCM is integrated in kernel, so it cannot be killed. And it starts a persistent TCP connection to Google server. If all apps uses FCM, then all notification would route through this connection, and this significantly reduce battery consumption than the alternative, where each app uses its own web socket server.<p>So, assume using a degoogled android, can this notification replaced FCM if more apps use this notification server? This server uses web socket, so what does FCM use for its connection? Does web socket battery efficient enough?
The documentation states that End2End tests are included. I didn't find them in the repository. I want to learn from the tests - Can somebody please help me and point me to the End2End tests?
I like the idea of the project, but I'm curious.<p>Why would you need a self-hosted (or really, any other push-notif service) other than the official one from Apple/Goggle?<p>They're optimized (for each respective platform), no need to maintain a server, and free. If you need "cross-platform", you can use Firebase(?) that abstracts that away.
This is what home assistant needs! The only really lacking thing about HA is the lack of native Android app, but the most important thing is notifications.
I'm not up to date with Android, but why does displaying notifications require an entire server or a paid service? Is it not just a matter of installing a client program and sending a curl to an endpoint?
Off-topic<p>I got so scared when I looked at the swagger. The authentication uses the exact same variables as mine and is somewhat similar. The name of the endpoints are also very similar and the project has resemblance to mine.<p>That was really really akward for a moment.<p>I'll use the project though ( different use-case), looks really interesting. Coincidentally it's for the same project as I mentioned.