Yet another Matrix bot library.
Project description
mxbt
Yet another Matrix bot library, built on matrix-nio.
Feauters
- Simple and powerfull bots creating
- Custom emojis support
- Getting
- Sending
- Creating
- Files sending (external & internal)
- Native mentions
- Access to
matrix-nio
features - Event filters
- Bot modules support
- Wait for event system
- E2EE support (check docs before)
Installation
With pip:
$ pip install mxbt
With git and python:
$ git clone https://codeberg.org/librehub/mxbt
$ cd mxbt
$ python -m pip install .
Getting started
More examples here or in docs.
from mxbt import Bot, Context, Creds, Config, Filter, Listener
import asyncio
bot = Bot(
creds=Creds.from_env( # You also can use Creds.from_json and just Creds()
homeserver="MATRIX_HOMESERVER",
username="MATRIX_USERNAME",
password="MATRIX_PASSWORD"
),
config=Config() # Config has many options for bot, like prefix, selfbot, encryption, etc...
)
lr = Listener(bot)
@lr.on_command(prefix="?", aliases=["test", "t"])
async def ctx_echo(ctx: Context) -> None: # Context object contains main info about event
await ctx.reply(ctx.body) # Reply message to event room
if __name__ == "__main__":
asyncio.run(lr.start_polling())
.env structure
MATRIX_HOMESERVER=https://matrix.org/
MATRIX_USERNAME=user
MATRIX_PASSWORD=password
Built with mxbt
Project | Description | Project | Description |
---|---|---|---|
sofie | A simple selfbot | charon | Simple bridge between some messengers |
cryptomx | A crytpocurrency notification bot | taskmx | Simple project tasks bot |
Special thanks
- matrix.org for beautiful protocol.
- simplematrixbotlib for base parts of API, Listener and Callbacks code ideas. Code from simplematrixbotlib is included under the terms of the MIT license - Copyright (c) 2021-2024 Isaac Beverly
- matrix-nio for cool client library.
Support
Any contacts and crytpocurrency wallets you can find on my profile page.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
mxbt-0.3.7.tar.gz
(34.0 kB
view details)
Built Distribution
mxbt-0.3.7-py3-none-any.whl
(37.2 kB
view details)
File details
Details for the file mxbt-0.3.7.tar.gz
.
File metadata
- Download URL: mxbt-0.3.7.tar.gz
- Upload date:
- Size: 34.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.1.dev0+g94f810c.d20240510 CPython/3.12.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 198574b2bad33c961e909f1b9d7c90a67990efde31299456dd86265a710bb63b |
|
MD5 | c7e2991a7e41920ae4170a78d903d869 |
|
BLAKE2b-256 | ae2396fac6771b48cf4a26b96d020fd05fd8c71a1859b5f13d7c9a9b6361972b |
File details
Details for the file mxbt-0.3.7-py3-none-any.whl
.
File metadata
- Download URL: mxbt-0.3.7-py3-none-any.whl
- Upload date:
- Size: 37.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.1.dev0+g94f810c.d20240510 CPython/3.12.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ebe517aac0ad313b9e00448f8738f6a91000709a676cfc701ebf58ded54965bd |
|
MD5 | 63aa7797d1c624f35043288819d9eac7 |
|
BLAKE2b-256 | b0bbcbf6658c64b95e85d7471bff9c72627f9d6d2d4c80487a38ad717468dd76 |