Hmm… we haven’t had notification problems like that in many years, from memory. Any idea if this was trying to deliver push notifs to Android without using Google? (Which historically has been painful thanks to Android OS versions terminating the app in the bg).
Element X has totally rewritten notification code (given it’s moved
from Kotlin to Rust) and should be much more robust for bugs like this.
Communicating via Apple or Google is sadly required these days. How does that work with matrix? Does the protocol specify how to trigger those notifications? Do I need to register for a Google API key when setting up the server? I can't recall seeing anything about that in the configuration file.
The gist of it seems to be that Synapse/Dendrite calls home to the Matrix Company, which in turn pays Google to send a notification. That's awfully nice of them, but does not really leave any room for success. I take it larger clients with security requirements roll their own clients, and this is part of the business case?
It’s more that “whoever built your client has the keys to send push to it, so your synapse calls home to them.” And yes, that means that paranoid types need their own clients, and that is indeed a service that Element offers.
Doesn't the use of ntfy change this (Android only, I think)? Homeserver pushes to an ntfy topic, app on phone is listening to that topic. Of course, this just moves the intermediary to ntfy but you can also host a different ntfy server which I hope element supports.
Just to clarify that... I'm pretty sure the notification doesn't actually contain any of the message though, it's just a notification to check the server for new messages.
>Communicating via Apple or Google is sadly required these days.
The copy of Signal installed on my GrapheneOS Pixel (with no Google anything installed) begs to differ; notifications have been both low-latency and rock-solid.
Element X has totally rewritten notification code (given it’s moved from Kotlin to Rust) and should be much more robust for bugs like this.
Sorry you got bitten by it.