Conversation

Replying to and
I'm wary of building anything on their code or forking anything to make changes because of their hostility towards alternate clients using their servers and their lack of need to preserve any backwards compatibility due to forcing upgrades, which is an overall positive thing.
1
2
There's the option of running the Android app in the official KVM-based Android emulator but that only acts as the main client rather than a secondary client like the desktop app. It honestly probably uses less memory than Signal Desktop, especially after being open a while.
1
Replying to and
I think KDE Connect can bridge the notifications including replying to them from the desktop but I'm not sure if that requires using KDE. I just feel like trying to use an unofficially supported client is a recipe for ending up needing to do a fair bit of work to keep it working.
2
Replying to and
I use KDE Connect already, but the Android app -also- sucks. Sometimes I get a message on the Desktop app and five minutes later long after I read it the Android one finally sends me a notification.
1
Replying to and
I'm used to the non-GCM push implementation on devices without Google Play which works essentially the same way as the desktop app. GCM is efficient but it's not particularly reliable and often has delays. The efficiency is mostly from apps reusing the same connection anyway.
3
1
Replying to and
I don't see any fundamental reason GCM should be more efficient than a properly written application sleeping in a poll or a thread making a blocking read from the notification socket. It's more a matter of apps being idiotic or maliciously doing other stuff in the background.
1
Replying to and
The reason it's more efficient is that it's a single connection with highly optimized rare polling based on a good heuristics for tuning the frequency of the polling. If the apps all use the same polling interval and coordinate it with flexible alarms it wouldn't be that bad.
2
Replying to and
The issue is that connections often break in practice without notifying you, so you need to regularly wake up and send some data both to keep the connection from being killed and to make sure that it hasn't died yet. It's particularly bad with most mobile data connections.
2
It's what makes it more efficient to have 1 service for all of these apps, and that service can be optimized to tune itself based on the reliability of the connection along with handling network switches, etc. directly when possible. It'd be useful to have a GCM alternative.
1
Apps don't actually need to send any data through the service. They can use it like Signal does and use it to simply send a wake up request. That also reduces the load on the service. As a comparison, Matrix sends the messages through GCM (in plain text if they're not E2E too).
1