I installed #Signal and #Conversations_im on a clean install of #GrapheneOS on my Pixel 4a and measured the battery impact. The results are shocking!
Both messengers had only one contact: my regular phone.
I used my regular phone to send messages to the Pixel 4a (which was not used for anything else over the course of the experiment).
I always sent the same message via Signal and #XMPP (mixing up which app went first). In total I sent ~32 messages in intervals of 10mins to a few hours.
@daniel
Truly shocking.
What push mechanisms are you using for Signal and for Conversations?
@masoud Both have direct connections to their respective servers because #GrapheneOS comes without Play Services. Both apps prompted me for exemptions to "Battery optimizations" which I granted.
On the sending side I made sure (by looking at the double ticks ) that the messages were delivered instantly.
@mattj @daniel @masoud
XMPP by its very nature is a protocol that effectively uses "notifications", as it pushes XML stanzas over a channel.
(so as the mobile is almost certainly using some form of NAT, as long as some form of pinging below the timeout of the NAT happens, everything is fine).
So for XMPP not having Google notifications should make little difference, I don't see how an XMPP client/server would even use them.
Now Signal, OTOH, I have no idea what it does.
@daniel @masoud A big part of the reason centralized push-notifications (aka "Google Play Services") exist is for battery optimization.
You could of course just let Signal use Play Services on graphene if you like.
My experience is different (although I only have Signal, not matrix). My refurbished 7a with GrapheneOS and no Play Services at all in the owner profile lasts easily two days. (That said, it'll mostly be on WiFi while I'm at home -- so possibly the difference is that?)