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.
## 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())
```