Skip to content

Matrix Instant Messaging

The network hosts its own instant messaging, based on Matrix 🡕. Discussions, photo and file sharing, audio and video calls : everything stays with us, on our server.

Matrix is a messaging system comparable to WhatsApp or Telegram, with three key differences :

Conversations are organized into rooms : one room per topic, per family, per project… and direct messages between two people.

My Matrix ID is built from my usual account : @prenom:domain.tld. No new password to remember, authentication uses the network’s single sign-on (same as for other services, see Managing my account).

  1. On computer: I open https://element.domain.tld in my browser, click Sign in, and authenticate with my network account.

  2. On phone: I install the Element app (Android or iPhone). At startup, I choose “Other server” and enter matrix.domain.tld, then authenticate the same way.

  3. On first connection, Element prompts me to verify my session and back up my encryption keys. I follow the instructions : this will let me read my old messages on a new device.

Element X 🡕 is the next generation of the mobile app : faster, smoother, and a lightning-fast connection via QR code, without typing anything.

  1. I install Element X (Android or iPhone).

  2. On a device where I’m already logged in (Element on desktop, for example) : Settings → Sessions → « Link a new device », a QR code appears.

  3. In Element X, I choose « Sign in with a QR code » and scan it. Done : my rooms and my messages are there.

Without a QR code, the regular login also works : I enter the matrix.domain.tld server and authenticate with my network account.

Another new feature : the page https://matrix.domain.tld/account shows my connected devices. Handy for closing a session left open on a forgotten device.

In a room, the call button starts an audio or video conversation. Between two or more people : other room members see the call in progress and can join it with a click, no invitation needed.

It works from Element X, from Element on desktop and from the web client, including between different applications.

A bridge connects Matrix to an external messaging service. Once the bridge is activated, my WhatsApp, Telegram, or Messenger conversations appear in Element as regular rooms: I read and reply from Element, while my contacts see no difference.

These bridges are built on the mautrix 🡕 project, the reference in the field. Each bridge has its own official documentation page, linked in the sections below.

Diagram

Each bridge is operated by a bot: a special contact I send commands to. The principle is the same for all:

  1. In Element, I start a direct conversation with the bridge bot (for example @whatsappbot:domain.tld).

  2. I send it login and follow its instructions (scan a QR code, provide my phone number…).

  3. That’s it: my conversations appear gradually. Each user connects their own account, without interfering with other users on the network.

The WhatsApp bridge connects as a linked device, exactly like WhatsApp Web. Simple and reliable.

  1. Start a direct conversation with @whatsappbot:domain.tld and send it login qr.

  2. On the phone: WhatsApp → Settings → Linked devices → Link a device, then scan the QR code displayed in Element.

📖 Official WhatsApp bridge documentation 🡕

The Signal bridge connects as an additional linked device, without touching the phone’s existing connection.

  1. Start a direct conversation with @signalbot:domain.tld and send it login.

  2. On the phone: Signal → Settings → Linked devices → Add, then scan the QR code displayed in Element.

📖 Official Signal bridge documentation 🡕

The Telegram bridge connects with my phone number, like another Telegram client.

  1. Start a direct conversation with @telegrambot:domain.tld and send it login phone +33612345678 (number in international format).

  2. Enter the verification code sent by Telegram, then, if my account has a “two-step” password, that password.

📖 Official Telegram bridge documentation 🡕

The Messenger bridge connects by reusing the cookies of a session open in a browser. This is the most technical connection of all.

  1. Start a direct conversation with @messengerbot:domain.tld and send it login.

  2. Log in to messenger.com in a private window, then follow the bot’s instructions to hand over the session cookies.

📖 Official Meta (Messenger) bridge documentation 🡕

The Discord bridge connects with a simple QR code scan.

  1. Start a direct conversation with @discordbot:domain.tld and send it login-qr.

  2. Scan the QR code with the Discord app on your phone (Settings → Scan QR code).

📖 Official Discord bridge documentation 🡕

Send to the bridge’s bot, in its direct conversation :

CommandEffect
helpList available commands
loginConnect my account
logoutDisconnect my account from the bridge

Almost every email problem comes from the phone, not the server. Android puts apps to sleep to save battery, and a sleeping app does not ring.

The phone does not ring, or rings too late

Section titled “The phone does not ring, or rings too late”

This is the number one cause. The server notifies the phone within one or two seconds; it is the phone that processes the alert late, sometimes after about thirty seconds, sometimes never.

  1. Lift the battery restriction : Settings → Apps → Element → Battery → Unrestricted. The “Optimized” mode is not enough.

  2. Remove Element from apps that are put to sleep : on Samsung phones, Settings → Battery → Background usage limits. Remove Element from the “Sleeping apps” and “Deep sleeping apps” lists, then disable “Put unused apps to sleep”.

  3. Allow full-screen notifications : Settings → Apps → Element → Notifications → Full-screen notifications. Without this permission, Android 14 and later replace the incoming-call screen with a silent notification.

  4. Check the “Calls” channel : still in Element’s notifications, this channel must have a sound and the right to ignore Do Not Disturb mode.

If even ordinary messages go unnoticed, check in this order :

CheckHow to do it
The app has been opened at least onceIt only announces itself to the server at its first launch, after installation just as after reinstallation
The room is not mutedLong press on the room, then Notifications
“Do Not Disturb” mode is offAndroid settings
The session is still openhttps://matrix.domain.tld/account lists my connected devices

As a last resort, log out and then log back in in the app : it announces itself to the server again at the next start.

The two mobile apps do not handle calls the same way.

Element XClassic Element
Messages and bridgesYesYes
Two-person callsWith Element X and the web clientBetween classic apps
Group callsYesNo
QR-code loginYesNo

For everyone to call each other without asking questions, the simplest thing remains to install Element X everywhere. The detail of the incompatibility and troubleshooting without installing anything are described above, in Call in audio or video.

If nothing works, these four pieces of information save them a lot of time :

  • The exact time of the missed message or call, with the time zone.
  • The name of the person at the other end.
  • The app used on each side (Element X or Classic Element).
  • The state of the phone : locked or in hand, wifi or mobile data.