![]() Locks you in to their proprietary ecosystem.Lock in users to your proprietary ecosystem.WhatsApp took ejabberd, an open source XMPP server written in Erlang, and modified it to send native push messages, but of course it only works with their official apps. Many apps have abandoned traditional XMPP in favor of proprietary modifications that lack federation and interoperability. iOS apps can still be terminated by the OS under memory pressure or too much socket activity.Disconnection can still occur from wireless network problems.Battery drain because the antenna cannot be powered down.No modification to existing infrastructure.XMPP works as designed, most of the time.On iOS this socket is supposed to be for VoIP signaling only, so you can be terminated by the OS for too much activity while in the background (e.g. Android apps are able to use this method, as well as iOS apps that declare VoIP functionality. Acquire a long-lived socket and keep it open… forever. Persistent sockets is how XMPP was originally designed to work. Requires plaintext storage of remote login credentials (e.g.Allows for easy eavesdropping or even active MITM attacks.Very obvious, centralized point of failure.Can add push support for any arbitrary XMPP server.Many iOS messenger apps use this method without clearly informing the user. Run a thin XMPP client on a ‘man-in-the-middle’ server that can relay messages to clients via push message when mobile clients aren’t actively connected. Remember in the 90s how many closed IM networks there were? Today it is much worse. ![]() XMPP is at serious risk of being permanently replaced by proprietary alternatives that have already solved the mobile push messaging problem. ApFixing the XMPP Push Problem Fixing the XMPP Push Problem
0 Comments
Leave a Reply. |
Details
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |