Skip to main content

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:

  • up <Event ID> β€” Upvote a message/event.
  • down <Event ID> β€” Downvote a message/event.
  • stats β€” View global karma stats.
  • view [user ID] β€” View your or another user's karma.
  • export β€” Export your karma data.
  • breakdown β€” View your karma breakdown.
  • top β€” See the top-rated users.
  • bottom β€” See the lowest-rated users.
  • best β€” View the highest-rated messages.
  • worst β€” View the lowest-rated messages.

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:

  • !remind <date> [message] β€” Create a reminder.
  • reschedule <date> β€” Reschedule an existing reminder.
  • list [all] β€” List your active or all reminders.
  • locales β€” View available locales.
  • locale [locale] β€” Set your preferred locale.
  • timezone [timezone] β€” Set your timezone.

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)


☁️ 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 <chooseText>[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:

  • help β€” Show usage.
  • list [emojus] β€” List emoji mappings.
  • map <mapping> β€” Define emoji-to-room mappings.
  • delete <mapping> β€” Remove a mapping.

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:

  • subscribe <feed URL> β€” Subscribe the room to a feed.
  • unsubscribe <feed ID> β€” Unsubscribe from a feed.
  • template <feed ID> <new template> β€” Change the notification template.
  • notice <feed ID> [true/false] β€” Toggle notice sending.
  • subscriptions β€” List the subscriptions.

πŸ’° Crypto Price Bot

!coin <exch_pair>[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

  • Most commands are not case-sensitive.
  • You can add help after many commands for detailed usage (!remind help, !karma help, etc.).
  • Some bots behave slightly differently between private DMs and public rooms.