Getting Started with Matrix

Just a few steps to get started with Matrix.

Matrix: An Introduction

Introduction

Matrix is a groundbreaking open standard for decentralized communication that enables seamless interaction between various chat platforms, servers, and organizations. This innovative approach revolutionizes the way people communicate online, making it easier than ever to connect with others across different environments.

At its core, Matrix is a federated chat system, where multiple chat services (servers) are connected and interoperable. This allows users to engage in conversations without being tied to a specific platform or service. The decentralized nature of Matrix ensures that users can communicate freely, without relying on a single entity or infrastructure.

The Matrix Protocol, which underlies this federation, is designed to be highly secure, scalable, and customizable. When users join a Matrix room (a chat channel), their messages are encrypted and verified using advanced cryptographic techniques to ensure they're only readable by the intended recipients.

Servers play a crucial role in the Matrix ecosystem. These virtual "chat islands" allow users to create accounts, invite friends, and participate in conversations. There are thousands of public servers, each with its own unique features, communities, and moderation styles.

To interact with the Matrix network, users need a client, which is essentially a software or app that connects to a server and enables access to rooms and conversations. Some popular clients include Riot (the official Matrix desktop client), Element (a highly customizable mobile app), and web-based interfaces like the Matrix Web Client.

Matrix represents a significant shift in the way people communicate online, offering a decentralized, secure, and scalable platform for real-time collaboration and conversation. As this technology continues to evolve, it has the potential to transform the way we connect with each other.

Clients

Element (Preferred)

Element is a comprehensive Matrix chat client that provides a robust platform for secure and decentralized communication. It supports features like end-to-end encryption, group chats, voice and video calls, and file sharing. Element is designed to cater to both personal and professional use, offering integration capabilities with various tools and services. It aims to deliver a high level of security and privacy, making it a popular choice for users seeking a versatile and reliable communication solution within the Matrix ecosystem.

Cinny

Cinny is a Matrix chat client designed to offer a clean and user-friendly interface for interacting with the Matrix protocol. It provides essential features for messaging, including end-to-end encryption, group chats, and file sharing, while focusing on simplicity and ease of use. Cinny aims to be lightweight and accessible, making it an appealing choice for both new and experienced users of the Matrix network.

FluffyChat

FluffyChat is a user-friendly Matrix chat client known for its visually appealing and intuitive interface. It supports key features such as end-to-end encryption, group messaging, and multimedia sharing. FluffyChat is designed to be accessible and easy to use, making it a popular choice for users who prefer a more visually engaging and straightforward communication experience on the Matrix network.

Element X

Element X is an advanced iteration of the Element Matrix chat client, designed to enhance performance and user experience. It retains core functionalities like end-to-end encryption, secure group chats, and multimedia sharing, while introducing improvements in speed, responsiveness, and user interface design. Element X aims to provide a more streamlined and efficient communication platform, appealing to users who require a robust and high-performing Matrix client.

Getting Started

Signing up

  1. Navigate to https://convo.grey.fail and select the option to "Create Account":landing.png
  2. You will be redirected to an account creation form. Ensure that the "Host account on" option is set to "grey.fail". This should have filled out automatically. Type in your desired username ("chris," "erik," "trianglebrain") and suitable password. Select "Register."

    The "Host account on" option is the server where your account will reside. There are thousands of Matrix servers world-wide -- but only one grey.fail!

    create-account.png
  3. Once you have registered you will be prompted to provide a registration token. This token is used to control registration and only allow authorized users to sign up. Simply copy and paste this value into the token textbox:
    cultural-either-spiffy-chump-employee-drinking

    registration-token.png

  4. Complete the security CAPTCHA:captcha.png
  5. Skip initial setup wizard in Element:skip.png
  6. Opt-out of improving Matrix (they've got enough help):do-not-improve.png

Congrats! "You're in." You won't see the grey.fail Space (similar to a Discord server) until you're invited. So once you sign up, alert your server administrator and they will add you to the space.

Using Bots

Matrix Bots and Commands

A guide to the available bots and commands in our Matrix server.

You may already be familiar with the chat bot functionality of the Matrix Bots, but @fail.bot:grey.fail also offers a range of commands.


πŸ› οΈ General Commands

!help

Displays a list of available bot commands.


!echo [text]

Echoes your message back to you.

Example:

!echo Hello, World!
Hello, World!

!ping [message]

Pings the bot. If you include a message, it replies with it.

Example:

!ping
Pong! (ping took 80 ms to arrive)

🌟 Karma Bot

!karma

Manage user karma points through voting and viewing statistics. This is largely a passive bot; users react to posts using πŸ‘ or πŸ‘Ž.

Subcommands:

Example:

!karma up $eventid12345

!karma top
Highest karma
chris: +23 (+34/-11)
erik: +23 (+34/-11)
chriz: +15 (+15/-0)
tapekebab: +11 (+13/-2)
colin: +10 (+11/-1)
lauren: +8 (+8/-0)
allie: +6 (+6/-0)
nate: +6 (+6/-0)
rick: +6 (+12/-6)
jillian: +5 (+5/-0)

🌎 Translation Bot

!translate [language code] [text]

Translate text into another language. Translates words using Google Translate (DeepL is planned too).

The first parameter (source language) can be set to auto or omitted entirely to let Google Translate detect the source language. Additionally, you can reply to a message with !tr <from> <to> (no text) to translate the message you replied to.

Example:

!translate es Hello, how are you?
ΒΏHola, cΓ³mo estΓ‘s?

⏰ Reminder Bot

!remind

Set reminders, manage schedules, and customize timezones.

Use !remind <date> <message> to set a reminder. To subscribe to a reminder set by someone else, upvote the message with a πŸ‘ reaction. To cancel a reminder, remove the message or reaction. After the reminder fires, you can re-schedule it with !reminder again <date>.

<date> can be a time delta (e.g. 2 days 1.5 hours or friday at 15:00) or an absolute date (e.g. 2020-03-27 15:00).

Note that subscribing to and cancelling reminders is only possible before the last minute. Each minute reminders that are scheduled to go off during that minute are sent to the event loop, at which point their target user list can no longer be updated.

To set the timezone for date parsing and output for your messages, use !remind tz <timezone>. It's recommended to use a TZ database name, but anything supported by Pytz will work.

Similarly, you can set the locale for date parsing with !remind locale <list of locales>. If you provide multiple locales, each one will be tried for parsing your input until one matches. Unlike the timezone, the locale only affects input, not output. You can view available locales using !remind locales. You can also contribute new locales by making a pull request (see locales.py, content warning: long regexes).

To list your upcoming reminders, use !remind list

Subcommands:

Example:

!remind 10 seconds wash socks!

I'll remind you to wash socks! in 10 seconds.
(others can πŸ‘ this message to get pinged too)

chris: Wash socks!

πŸŒ™ Moon Phase Bot

!moon

Get the current moon phase for today.

Example:

!moon
πŸŒ‘ New Moon (1% Illuminated)

πŸ•°οΈ Time In Bot

!timein

Get the current time in a specified location.

Example:

!timein Rome
16:10 (04:10 PM) Thursday, 22 May 2025 CEST (UTC +0200), Europe/Rome

☁️ Weather Bot

!weather

Get the current weather for any location.

Example:

!weather Tokyo
Tokyo: ☁️ +19°C (wttr.in)

Tip: Use !weather help for usage instructions.


🎲 Choice & Dice Bots

!choose [option one | option two | option three]

Randomly selects between your provided choices.

Example:

!choose pizza | sushi | tacos
tacos

!roll [pattern]

Roll dice with optional patterns.

The base command is !roll. To roll dice, pass XdY as an argument, where X is the number of dice (optional) and Y is the number of sides in each dice. Most Python math and bitwise operators and basic math module functions are also supported, which means you can roll different kinds of dice and combine the results however you like.

Example:

!roll 3d20
27

😊 Reacji Bot

!reacji

Set up emoji-to-room mappings.

When a user reacts withπŸŽ–οΈ, the message is automatically cross-posted to #hall-of-fame.

Subcommands:

Example:

!reacji list
πŸŽ–οΈ to hall-of-fame

🧠 Urban Dictionary Bot

!ud [term]

Search Urban Dictionary for slang terms or memes.

Example:

!ud yeet
yeet [1]: A word one may scream while [propelling] an object through the air at [alarming] speeds, [heights], and etc. (link)

πŸ“° RSS Bot

!rss

Manage RSS feed subscriptions in rooms.

Subcommands:


πŸ’° Crypto Price Bot

!coin [currency\currency]

Fetch real-time cryptocurrency prices.

Example:

!coin btc/usd
Current exchange rate for BTC/USD: 93913.5970275634

πŸ“ˆ Stock Price Bot

!stock [symbol]

Fetch current stock price data.

Example:

!stock F
Current data for Ford Motor Company (F):

Price: $10.04, β–Ό-0.10% from market open @ $10.045
52 Week High: $14.85
52 Week Low: $8.44

πŸ”Ž DuckDuckGo Search Bot

!ddg [query]

Search the web using DuckDuckGo and get instant answers.

Example:

!ddg Rivian
Rivian Automotive, Inc., is an American electric vehicle manufacturer and automotive technology and outdoor recreation company founded in 2009. Rivian produces an electric sport utility vehicle, a pickup truck on a "skateboard" platform that can support future vehicles or be adopted by other companies, and an electric delivery van, the Rivian EDV. Rivian started deliveries of its R1T pickup truck in late 2021. The company planned to build an exclusive charging network in the United States and Canada by the end of 2023. Rivian is based in Irvine, California, with its manufacturing plant in Normal, Illinois, and other facilities in Palo Alto, California; Carson, California; Plymouth, Michigan; Burnaby, British Columbia; Wittmann, Arizona; Woking, England; and Belgrade, Serbia. Rivian has plans to build another US$5 billion factory in the US state of Georgia, in Social Circle, Georgia. (https://en.wikipedia.org/wiki/Rivian)

ℹ️ Additional Notes