Skip to main content

Matrix-Roomba

Support Private.coffee! PyPI PyPI - Python Version PyPI - License Latest Git Commit

Roomba is a moderation bot for Matrix, designed to help manage rooms and enforce content policies. The bot can block/unblock rooms, shut down rooms, and notify users of shutdowns. It integrates with Synapse's administrative API and supports optional encryption through Pantalaimon.

Installation

pip install matrix-roomba

Configuration

The following configuration options are available:

homeserver: "https://matrix.example.com"
user_id: "@roomba:example.com"
access_token: "YOUR_ACCESS_TOKEN"
moderation_room_id: "!moderation_room_id:example.com"

# Debug mode - set to true for verbose logging
debug: false

# If your moderation room is encrypted, use Pantalaimon:
pantalaimon:
  homeserver: "http://localhost:8010"
  access_token: "YOUR_PANTALAIMON_ACCESS_TOKEN"

Ensure that the bot user is an admin on the homeserver, as it needs to be able to moderate rooms. Also add the user to the moderation room before starting the bot.

We recommend using pantalaimon as a proxy, because the bot itself does not support end-to-end encryption.

Debug Mode

You can enable debug mode in two ways:

  1. Set debug: true in your config.yaml file for persistent debug logging
  2. Use the !roomba debug command in the moderation room to toggle debug mode at runtime

When debug mode is enabled, the bot will output detailed logs about:

  • API requests and responses
  • Room and user information
  • Command processing
  • Matrix client operations

This is useful for troubleshooting issues with the bot or understanding its behavior.

Usage

  1. Start the bot:
roomba
  1. Send a message to the moderation room to get a list of available commands:
!roomba

Commands

In the moderation room, send commands to manage rooms:

  • Block a room: !roomba block <room_id>
  • Unblock a room: !roomba unblock <room_id>
  • Shutdown a room: !roomba shutdown <room_id> [--purge]
  • For help: !roomba

License

This project is licensed under the MIT License - see the LICENSE file for details.

Metadata

Release files for matrix-roomba 0.1.4

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for matrix-roomba 0.1.4
File Size Uploaded
matrix_roomba-0.1.4.tar.gz 8.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for matrix-roomba 0.1.4
File Interpreter ABI Platform
matrix_roomba-0.1.4-py3-none-any.whl Python 3 none any Details

Total release size: 17.5 kB

Release files / matrix_roomba-0.1.4.tar.gz

Download URL matrix_roomba-0.1.4.tar.gz
Size 8.3 kB
Tags Source
SHA-256 checksum
How to use checksums
9b3fac8a5a2ff89364868f8cab5e1070d5cd0334dc237bcb10db43eb746c2ef2
BLAKE2b-256 checksum
How to use checksums
ba916736296fca26fbd32d8cd268e7729de53bcde192deb9c0a237bf67bcfc79
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.11.2

Release files / matrix_roomba-0.1.4-py3-none-any.whl

Download URL matrix_roomba-0.1.4-py3-none-any.whl
Size 9.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
33fbcad97387ab1603d66ee8a0bde8691bc8c25a11856b24fa17070504477c3f
BLAKE2b-256 checksum
How to use checksums
bcab112c0cde86832784014e8a94d385d31cedeaf22d1641b980fe8578982551
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.11.2

Release history Release notifications | RSS feed

This release

0.1.4 This release

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page