Boti pro Mumble
Mumbot
Mumbot se přihlašuje jako člověk, s vlastním certifikátem. Proto běží na jakémkoli standardním Mumble serveru, bez pluginu a beze změny konfigurace serveru. Z rodiny Mumcordu, open source pod licencí AGPL-3.0.
Dva boti, jeden program
Oba žijí ve stejném programu, mumbot, pro Linux, Windows a macOS a jako Docker image.
Webhook bot
Monitoring, CI nebo tvůj vlastní skript pošle jeden HTTP požadavek s API klíčem a bot vloží text do kanálu Mumble.
- Pro každý klíč nastavíš, do kterých kanálů smí psát
- Tučné písmo, kurzíva, kód, seznamy a odkazy v Markdownu
- Hesla kanálů, opětovné připojení po výpadku a stálá identita díky certifikátu
- Omezení rychlosti a jasná odpověď, jestli zpráva dorazila
curl -X POST http://127.0.0.1:8080/message \
-H 'X-API-Key: <your key>' \
-d '{"channel": 1, "message": "**deploy** finished"}' Testovací bot
Skriptovaný druhý účastník pro automatické testy Mumble klientů. Běží na něm i testy samotného Mumcordu.
- Ovládej chat, stav, oprávnění a moderaci a čekej na podmínky
- Přehrávej a nahrávej hlas a kontroluj jeho úroveň, se skutečným kodekem Opus
- Zátěžový test zaplní lokální server až 1000 uživateli
- Návratový kód 0 znamená úspěch: hodí se do jakéhokoli CI
printf '%s\n' 'join Lobby' 'say "<b>hello</b>"' \
'expect message --from Alice --contains hi' \
| mumbot --port 44738 --name Bob script Stáhnout
Archiv obsahuje program mumbot, README a ukázkovou konfiguraci bot.example.toml.
- Linux x86_64 mumbot-0.1.1-linux-x86_64.tar.gz · 2 MB
- Linux ARM64 mumbot-0.1.1-linux-aarch64.tar.gz · 2 MB
- Windows mumbot-0.1.1-windows-x86_64.zip · 2 MB
- macOS mumbot-0.1.1-macos-universal.tar.gz · 4 MB
Nebo jako Docker image pro amd64 a arm64:
docker run -d --name mumbot \
-v "$PWD/bot.toml:/config/bot.toml:ro" \
-v mumbot-data:/data -p 127.0.0.1:8080:8080 \
ghcr.io/mumcord/mumbot:0.1.1 Plán vývoje
Stejně jako Mumcord se i Mumbot vyvíjí po epicích. Epic 2 je návrh z otevřených issues a ještě se podrobně naplánuje.
-
Epic 0
hotovo v0.1.0
Testovací bot
Skriptovaný bot z testů Mumcordu, teď jako samostatný program.
- Chat, stav, oprávnění a moderace, čekání na podmínky a skriptovací režim
- Přehrávání, nahrávání a kontrola úrovně hlasu, s kodekem Opus jako v Mumcordu
- Zátěžový test až s 1000 uživateli na lokálním testovacím serveru
-
Epic 1
hotovo v0.1.0
Webhook bot
Zprávy zvenčí do kanálu Mumble.
- HTTP API s API klíči a povolenými kanály pro každý klíč
- Markdown, hesla kanálů, opětovné připojení a omezení rychlosti
- Programy pro Linux, Windows a macOS a Docker image
- Od 0.1.1: příklady pro Docker Compose a dokumentace ke konfiguraci, příkazové řádce, HTTP API a zabezpečení
-
Epic 2
na řadě
Moduly, hudba a historie
Z jednoho bota se stává sada nástrojů.
- Moduly: v konfiguraci nebo na příkazové řádce vybereš, kteří boti poběží, v jednom programu a jednom image
- Hudební bot: pošli MP3 nebo odkazy přes HTTP a bot je přehraje v hlasovém kanálu, s frontou
- Bot historie: uchovává chat kanálů, které smí vidět, a předá ho uživatelům Mumcordu, kteří byli offline. Nikdy soukromé zprávy
- Karty zpráv: webhook posílá upozornění s nadpisem, stavovou barvou, grafem a odkazem, které Mumcord zobrazí jako kartu
- Nastavitelný bitrate pro řeč a hudbu, nikdy nad limit serveru
- Peer modul: registruje uživatele serveru u mumpeer relaye a dá Mumcordu vědět, že relay existuje
-
Potom
později
Nápady
Zatím nenaplánované, ale zapsané.
- Bot, který čte chat a odpovídá na příkazy
- Převod textu na řeč nebo zvuky upozornění v kanálu
- Jeden bot pro víc serverů nebo s víc identitami
- Šeptání a soukromé zprávy, výměna klíčů bez restartu, vestavěné TLS
- Zapamatovat si certifikát serveru při prvním kontaktu a odmítnout změněný
Nápad na bota?
Přání patří do issues Mumbotu na GitHubu.