Matrix review How to create your own decentralized messenger
There are actually more than two messengers that try to protect the privacy of their users or even provide them with anonymity.
At the same time, I often hear exclamations from oldfags that most of the innovations of such messengers were (are) in the good old Jabber.
And while Jabber has smoothly migrated into the whole XMPP messaging protocol, I want to talk about its alternative called Matrix.
What kind of beast is this
Matrix is an open source project for secure, decentralized real-time IP messaging.
The project is distributed under the Apache license, and the development is carried out by the non-profit organization Matrix.org Foundation. Development began in 2014, and in 2019 the project was out of beta.
Messengers created on the basis of Matrix can communicate not only with each other, but also with third-party messengers. But this is only in theory, but in practice you will be closed inside the matrix network if the server owner has not configured routing.
Since Matrix is a decentralized messenger, this means that there is no single server that would manage its work. And anyone can pick up their own server. Vive la Résistance!
How does it work
Each Matrix user connects to a specific server that is considered to be his home server. In this case, you can freely communicate with users from other servers.
To fully manage your data and communication parameters, of course, you need to raise your server. In this case, you get god mode and you can do whatever you want. This includes setting up routing to other protocols and messengers (IRC, XMPP, Discord, Telegram) or hosting bots.
When you send a message to a room (more on that later), it is synchronized between all servers in that room. Thus, if a server goes offline, the rest of the participants will still be able to continue communication.
At the same time, do not forget that end-to-end encryption is configured in Matrix, and even the owner of the server cannot access the correspondence.
Already want. How to deliver?
To get started, you need to download a messenger with Matrix support or follow this link , get an account and start chatting right in your browser. A list of native and third-party clients for any platform is available here .
In the messenger, there is such a thing as rooms. For ease of understanding, these are like public Telegram chats. You can view the list of rooms and their contents even without registration. But I couldn't do that through the native Windows client.
When registering on the network, you need to select the server to which you want to connect, or leave matrix.org by default. Then you can choose a username, enter your email and password. Or log in through GitHub, Gmail, GitLab and other services.
As in the case of Mastodon , the username is bound to the selected server, which does not interfere with communicating with users of other servers.
I will not talk in detail about the capabilities of Matrix clients. First, the capabilities can differ between clients and servers. Secondly, you already know everything about this messenger.
The closest analogue in terms of capabilities is Telegram. There are one-on-one correspondences, public and private chats, audio and video calls, bots. All this is sprinkled with privacy, encryption and other goodies.
How to get your server up and running
Deploying your Matrix server is relatively easy if you've done something like this before. To do this, you need to refer to the documentation and deploy a copy of Synapse.
There you can also find step-by-step instructions for deploying a server on almost any system and any provider.
Communication with the outside world
To start communication from the Matrix messenger with the same Telegram, you need to build a bridge according to all the precepts of Sam Porter Bridges, if you are a server owner.
It's a little easier for users. In the case of Telegram, you need to go to the t2bot.io page and follow all the steps from the corresponding instructions.
When I first heard about Matrix, it seemed to me that this is a solution for the privacy-minded. After installing it, you lose the ability to simply communicate with the outside world, and you will have to drag everyone into a new incomprehensible messenger with truncated functions.
In practice, this turned out to be only partly true. Yes, you have to suffer a little to communicate with friends from Viber, Telegram and other messengers. But the protocol itself, if you can call it that, supports all modern chips for convenient and simple communication.
Therefore, in theory, each of you can easily raise your server and move to Matrix without much loss in convenience.