1 comment

[ 5.1 ms ] story [ 16.3 ms ] thread
So many years XMPP has been a protocol not suited for modern mobile devices with unstable network connection. Messages could be easily lost (and you had to ask for receiving acknowledgment yourself in another message), battery consumption was very high. XMPP also has been barely usable on multiple devices. While we had Message Archiving XEP since 2004, Message Carbons XEP since 2010 and Message Archive Management since 2012, most desktop clients still lack support of these functions giving you frustration when you want to access previous conversation history that was made on another device.

Everything changed when Daniel Gultsch created Conversations. That's a modern XMPP client for Android which has support for most current XEPs. Finally mobile XMPP client that is usable, reliable, supports history sync and doesn't noticably shorten battery life and is a proper competitor for other proprietary mobile IMs.

Still, the situation with desktop clients is unpleasant. Only one client has Message Archive Management support (Gajim), only one has support for outdated and rarely configured on the server side Message Archiving support (Vacuum IM). Not even mention Gajim UI problems that you can see previous conversation history only in "history" menu, the chat window contains conversation history only of that exact machine. To this date there's no client for OS X with MAM support. Also should note that Gajim lacks MAM support for MUC.

We, a small group of people, want XMPP to be suitable for modern every day use for casual users, power users and teams. We decided to improve that situation by implementing missing XEP support in most popular desktop clients (Psi/Psi+ for Windows and Linux, Monal and Swift for OS X) and improving UI and overall usability of said software. Our goal is making desktop experience as good as mobile experience with Conversations.

The Immediate Goal

Make sure desktop clients support the following XEPs and implement what they lack:

XEP-0184 Message Delivery Receipts XEP-0198 Stream Management XEP-0280 Message Carbons XEP-0308 Last Message Correction XEP-0313 Message Archive Management XEP-0363 HTTP File Upload Make various Linux distributions repositories, Windows installers and signed OS X packages of software.

The Complete Goal

Implement additional XEPs:

XEP-0333 Chat Markers XEP-0163 Personal Eventing Protocol XEP-0384 OMEMO Encryption