
WhatApp uses a variation of XMPP for its popular chat service There are also many, mostly commerical projects that have created an XMPP-based Instant Messaging network or use XMPP in their backend. Projects that are using vanilla and open XMPP are listed on our software section. Projects using XMPP-based Instant Messaging Whereas five or ten years ago such features included chat state notifications and HTML messages, now they include things like push notifications, message archives, and improved multi-device support. This wealth of code enables developers to easily build new applications in a secure and scalable way.īecause user expectations for messaging apps continue to change over time, the XMPP community always works to define and implement XMPP extensions for new features. Although the names of such services have changed, today XMPP still represents a free and open standard for building and deploying instant messaging systems and related applications.Īll of the existing XMPP servers, clients, and programming libraries support the key features of an IM system, such as one-to-one and multi-party messaging, presence subscriptions and notifications, and contact lists. This is how Matrix democratises control over communication.īy default, Matrix uses simple HTTPS+JSON APIs as its baseline transport, but also embraces more sophisticated transports such as WebSockets or ultra-low-bandwidth Matrix via CoAP+Noise.When Jeremie Miller invented Jabber/XMPP technologies in 1998, he did so in large measure to provide a free and open alternative to the proprietary instant messaging services of the day, such as AOL Instant Messenger and ICQ. This means that every server has total self-sovereignty over its users data - and anyone can choose or run their own server and participate in the wider Matrix network.

Even if your server goes offline, the conversation can continue uninterrupted elsewhere until it returns. There is no single point of control or failure in a Matrix conversation which spans multiple servers: the act of communication with someone elsewhere in Matrix shares ownership of the conversation equally with them. When you send a message in Matrix, it is replicated over all the servers whose users are participating in a given conversation - similarly to how commits are replicated between Git repositories. Matrix is really a decentralised conversation store rather than a messaging protocol.
