User Tools

Site Tools


tamiwiki:other:how_to_matrix

How to use Matrix

New to Matrix? You're in the right place! This page will help you get started with Matrix and TAMI Matrix server.

What is Matrix?

Matrix is similar to email in that you have a server that you connect to (like Gmail, Yahoo, etc.) and a client app (like Outlook, Thunderbird, etc.) that you use to connect to the server. The difference is that Matrix is optimized for sending instant messages, has end-to-end encryption, and is more modern. It is also open source and federated, meaning that you can connect to any Matrix server in the world and talk to anyone else on any other Matrix server in the world from your server.

Choosing a client

There are many different Matrix clients available. The most popular ones are Schildichat, Element, and Nheko.

Here's a quick comparison of the most popular clients:

Client Platform Description
Element Desktop, Mobile, Web The most popular client. It's pretty stable and polished, but the UI is a bit cluttered.
Schildichat Desktop, Mobile, Web A fork of Element (meaning that it has all the features that Element has). It's a bit more lightweight and has a much better UI.
Nheko Desktop A very lightweight client that is still in development. It's very fast and lightweight.
FluffyChat Desktop, Mobile, Web A client in Flutter that is still in development. Looks very nice, but is still missing some features and stutters when you have a lot of rooms.
Cinny Web A web client that is still in development. Looks pretty, has all the basic features, but is still a bit incomplete.
Gomuks Terminal A CLI for Matrix. It's very lightweight and fast, but it's not very user-friendly.

For more information about available clients, see Matrix's website.

Choosing a server

There are many different Matrix servers available. The most popular one is matrix.org, but it's a bit slow due to the amount of users. TAMI server is telavivmakers.space, and it's a bit faster.

You can register at our matrix server via this link.

You can also find a list of all the servers at https://joinmatrix.org/servers/.

Connecting to the server

Once you've chosen a client and a server, you can connect to the server by entering the server's address in the client.

For example, if you're using Element or Schildichat, enter the server's address in the Custom server field in the Sign in screen.
The server's address is the domain name of the server without the https:.
For TAMI server, enter telavivmakers.space in the Custom server field.

After that, just enter your username and password and you're good to go!

User and room addresses

In Matrix, every user and room has an address. The address of a user is structured like this: @username:server. For example, if you're using TAMI server, your address will be @username:telavivmakers.space. The address of a room is structured like this: #roomname:server. For example, if you're using TAMI server, the address of the #general room will be #general:telavivmakers.space (which is a real room you can join, by the way).

End-to-end encryption

Your keys

Matrix supports end-to-end encryption, which means that your messages are encrypted before they are sent to the server. This means that even if the server is compromised, your messages will still be encrypted and unreadable. However, this comes at a cost: you need to sync the encryption keys between your devices (for example, if you want to send a message from your phone and read it from your computer). This is done automatically by most clients, however, the first sync requires you to confirm that the communication between your devices hasn't been tampered with. This is done by either scanning a QR code from one device to the other, or comparing the emojis (which are a representation of the encryption keys) on both devices.

Once you log in to your account on a new device, you will be asked to verify your new session with an old one, usually in the form of a pop-up or a notification. It's very important to do so, as otherwise you won't be able to read encrypted messages from that device.

In Element and Schildichat, you can check that all your sessions are verified by going to the Settings screen, clicking on Security & Privacy, and then clicking on Show all sessions. If you see a red exclamation mark next to a session, it means that it's not verified. You can verify it by clicking on it and following the instructions. Other clients may have a similar screen.

Verifying other users

You can also verify other users to make sure that your communication with them is encrypted. To do so, go to the user's profile, click on the “Security & Privacy” tab, and then click on “Verify”. You have to do this in person or over a secure communication channel (like a phone call or a video call) to make sure that the other person is who they say they are. Never accept a verification request from someone you don't know in person.

Key backup

Matrix also supports key backup, which means that you can backup your encryption keys to the server. This is useful in case you lose your device or if you want to use a new device. To enable key backup, go to the Settings screen, click on Security & Privacy, and then click on Set up secure backup. You will be asked to enter a passphrase or to save a recovery code. After choosing one of those options, you'll be able to recover your keys with them in case you lose your device.

Encryption rules

You can also follow those simple rules to make sure that encryption always works:

  • always have at least one verified session logged in, as to not lose access to your encryption keys
  • verify new sessions as soon as you log in to them
  • do not enable the Encrypt to verified sessions only option unless you know what you're doing
    If you've enabled it and haven't verified the session of the person you're chatting with, they won't be able to read your messages.
  • set up key backup and make sure that it's working
tamiwiki/other/how_to_matrix.txt · Last modified: 2023/08/17 18:27 by ilan