Telegram-FOSS-Team / Telegram-FOSS

Unofficial, FOSS-friendly fork of the original Telegram client for Android
GNU General Public License v2.0
2.85k stars 366 forks source link

Feature Enhancement: Consider using Openpush for push notifications or make your service standalone? #468

Open famewolf opened 3 years ago

famewolf commented 3 years ago

Currently literally have an entire page from different apps keeping a notification going so they can run in background. I appreciate the fact you took the time to remove google's firebase cose and implement an open source solution but would you consider supports/using openpush which is an open source project specifically to provide push messaging? If more apps would use it then we'd only need one background service which all would use.

https://f-droid.org/en/2020/02/03/openpush-talk.html

As an alternative perhaps the push notification service you implemented in Telegram-Foss could be made a standalone implementation that other F-droid apps could call (ideally with an api like the firebase one for drop in replacement)?

nekohasekai commented 3 years ago

@famewolf The Telegram server does not support push services other than fcm, so where do the push messages come from?

It is obviously not a good idea to host a userbot session for each user to complete it.

famewolf commented 3 years ago

I guess I was just picturing one app running a "push server" with an api that all the other apps could call to send messages and would direct received messages to the appropriate app possibly with some form of originator app code (the index number the apk is assigned on install perhaps?). As it stands I have a persistent notification for shazam, tidypanel (which hides several others), screebl, telegram-foss, tasker, trackercontrol, and syncthing. I've had to lower the priority on all of them so new incoming notifications can "bubble up to the top".

Obviously this is in no way telegram-foss's fault. It's clearly google's fault but I was just hoping for a more elegant solution than every different app making a notification so they could run in background...would the app need to run in the background if a dedicated push server app could call it and pass the incoming message?

logos88 commented 3 years ago

In openpush chat they recommend also UnifiedPush which is a is a specification and set of tools to let the user choose how push notifications are delivered.

FluffyChat app is using it for instance.

A centralized and open source push notifications app would be a great improvement as alternative to GMS.

zk-pre commented 3 years ago

Afaik the Android SDK for openpush isn't fully functional and may not work for Telegram currently, neither for the client or server

zk-pre commented 3 years ago

[...]As it stands I have a persistent notification for [...]

You can disable battery optimizations on all these apps and hide the persistent notification on each one of them to still run in the background.