README update

This commit is contained in:
Nikita Tyukalov, ASUS, Linux
2026-08-25 09:48:13 +03:00
parent e5a3533f4b
commit c3046307c7

View File

@@ -1,7 +1,58 @@
# mab
**mab** *(MAtrix Bot) is a **very** simple Python package that can be used to
**mab** *(MAtrix Bot)* is a **very** simple Python package that can be used to
develop **very** simple Matrix bots. I have decided to make something like this
because I wasn't satisfied by simplicity and usage of other libraries. So
this library does not aim to be "the best matrix bot library", it only aims to
be good enough for me.
be good enough for me.
## Installation
Use `pip` to install this package:
```bash
python -m pip install git+https://git.tyukalov.su/nikita/mab
```
## Basic usage
This is the most simple bot you can create
```python
import asyncio
from mab import MatrixBot, MatrixBotConfig
from nio import MatrixRoom, MatrixMessageText
bot: MatrixBot
async def on_room_message_text(room: MatrixRoom, event: RoomMessageText) -> None:
global bot
# do not respond to ourselves
if event.sender == bot.get_client().user_id:
return
text = f"You message contains {len(event.body)} symbols"
await bot.send_text_to_room(room.room_id, text)
async def main() -> None:
global bot
# create and start the bot
cfg = MatrixBotConfig(
matrix_homeserver_url="matrix.domain.su",
matrix_username_localpart="nagibator666",
storage_directory=Path("storage_nagibator666")
)
bot = MatrixBot(matrix_bot_config)
bot.start()
# wait for Ctrl+C
try:
while True:
await asyncio.sleep(1)
except:
pass
# stop the bot
await bot.stop()
if __name__ == "__main__":
asyncio.run(main())
```