Hey Guys,<p>After trying XMPP for months and unable to make it work on slow network, we decided to write a new protocol on mqtt. We loved XMPP for it&#x27;s extensibility and the protocol completely mimics XMPP - chat, chatstates, client-state indiciation.<p>Just the namespaces are replaced by MQTT topics and with wildcards clients are really lightweight.<p>Advantages:
1. Streaming Binary instead XML (XMPP have exi so it can be fixed).
2. Super easy to implement. Just took us a day to implement to port most of the functionality from XMPP.
3. Just like XMPP it&#x27;s infinitely extendible. Wanted to add a new packet type is just adding a provider and registering it to manager (to all those who worked with Smack - will feel at home).
4. Out of the box support for Webrtc - audio and video calls.<p>Here is the protocol - https:&#x2F;&#x2F;github.com&#x2F;bangarharshit&#x2F;Mqtt-chat and here is a proof of concept - https:&#x2F;&#x2F;github.com&#x2F;DrawersApp&#x2F;Node-Sdk&#x2F;tree&#x2F;mqtt&#x2F;src . We are polishing the SDK and will be releasing the android sdk, java client, node client and server support - emqttd in the next few weeks.<p>One more thing we didn&#x27;t like about XMPP was the time it takes for an XEP to go from draft to implementation (sometimes in years). We are trying to create an echo-system on git itself, where we can bring it down to days (or at-least weeks&#x2F;months). Please submit feature requests on Github as an issue, propose a solution (or let it be proposed by community), quickly implement it and test it out.<p>Feel free to cut an issue for any discussion.<p>Thanks,
Harshit
New Chat Protocol – XMPP Alternative (Based on XMPP Semantics)