Remix.run Logo
sssilver 5 days ago

Another way to say it would be: XMPP is hostile to power efficiency.

vetrom 5 days ago | parent | next [-]

It's not that XMPP is hostile to power efficiency, its that Apple (and Google) gateway power-efficient edge triggering behind vendor-restricted cryptographic feature locks.

They have arguably correct reasons for doing this, but it's a false comparison to say that the software is inefficient when its just as efficient that anything else at that privilege level on the phone can do.

zaik 5 days ago | parent | prev | next [-]

Conversations is one of the most battery efficient IM clients out there despite maintaining it's own TCP connection. This is possible because Conversations can tell the server to shut up unless it's important, which reduces radio usage a lot. This extension (CSI) is quite mature and found on most servers by now.

gsich 5 days ago | parent | prev | next [-]

Wrong. Apple (or Google) also use the same TCP based approach to maintain connectivity to allow notifications. No way is an extra connection responsible for bad power efficiency, with that small payloads. This is propaganda.

msgodel 5 days ago | parent | prev [-]

Nope. You can do push with XMPP just like everything else. The problem is that Apple demands open source client maintainers also personally maintain infrastructure with high availability to handle the push notifications rather than allowing them to delegate that to service operators where it belongs.

Apple is aggressively hostile to open source is the problem. IMO their behavior is why we don't have any nice open source chat apps like we did before the iPhone became popular.

tharant 5 days ago | parent [-]

I can find no such requirement in the App Store Guidelines. Or is there anecdotal evidence somewhere?

msgodel 5 days ago | parent [-]

They require push notifications to be signed with your certificate. You must maintain the infrastructure to do this yourself because you can't share the certificate with third parties (obviously) and downtime will mean no push notification delivery.

I have no idea if that's in the guidelines but that's how it works.