Boți pentru Mumble
Mumbot
Mumbot se conectează ca un om, cu propriul certificat. De aceea merge pe orice server Mumble standard, fără plugin și fără nicio schimbare în configurația serverului. Din familia Mumcord, open source sub AGPL-3.0.
Doi boți, un singur program
Amândoi stau în același program, mumbot, pentru Linux, Windows, macOS și ca imagine Docker.
Bot webhook
Monitorizarea, CI-ul sau propriul tău script trimite un request HTTP cu o cheie API, iar botul postează textul într-un canal Mumble.
- Stabilești pentru fiecare cheie în ce canale poate scrie
- Bold, italic, cod, liste și linkuri în Markdown
- Parole de canal, reconectare după întreruperi și o identitate fixă prin certificatul său
- Limită de rată și un răspuns clar dacă mesajul a ajuns
curl -X POST http://127.0.0.1:8080/message \
-H 'X-API-Key: <your key>' \
-d '{"channel": 1, "message": "**deploy** finished"}' Bot de test
Un al doilea participant scriptat pentru testarea automată a clienților Mumble. Chiar testele Mumcord rulează pe el.
- Controlează chatul, starea, permisiunile și moderarea, și așteaptă condiții
- Redă, înregistrează și verifică nivelul vocii, cu Opus adevărat
- Un test de încărcare umple un server local cu până la 1000 de utilizatori
- Exit code 0 înseamnă trecut: se potrivește în orice CI
printf '%s\n' 'join Lobby' 'say "<b>hello</b>"' \
'expect message --from Alice --contains hi' \
| mumbot --port 44738 --name Bob script Descarcă
Arhiva conține programul mumbot, README-ul și o configurație de exemplu, 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
Sau ca imagine Docker pentru amd64 și 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 Roadmap
La fel ca Mumcord, Mumbot se construiește în epicuri. Epic 2 e o propunere pornită de la issue-urile deschise și urmează să fie planificat în detaliu.
-
Epic 0
gata v0.1.0
Bot de test
Botul scriptat din testele Mumcord, acum un program de sine stătător.
- Chat, stare, permisiuni și moderare, așteptarea unor condiții și un mod script
- Redarea, înregistrarea și verificarea nivelului vocii, cu Opus ca în Mumcord
- Test de încărcare cu până la 1000 de utilizatori pe un server de test local
-
Epic 1
gata v0.1.0
Bot webhook
Mesaje din afară într-un canal Mumble.
- API HTTP cu chei API și canale permise pentru fiecare cheie
- Markdown, parole de canal, reconectare și limită de rată
- Programe pentru Linux, Windows și macOS și o imagine Docker
- De la 0.1.1: exemple Docker Compose și documentație pentru configurație, linia de comandă, API-ul HTTP și securitate
-
Epic 2
urmează
Module, muzică și istoric
Un bot devine o trusă de unelte.
- Module: alegi ce boți rulează, în configurație sau din linia de comandă, într-un singur program și o singură imagine
- Bot de muzică: trimiți MP3-uri sau linkuri prin HTTP, iar botul le redă în canalul de voce, cu o coadă
- Bot de istoric: păstrează chatul canalelor pe care le poate vedea și îl dă utilizatorilor Mumcord care au fost offline. Niciodată mesajele private
- Carduri de mesaj: webhook-ul trimite alerte cu titlu, culoare de stare, grafic și link, pe care Mumcord le arată ca un card
- Bitrate reglabil pentru voce și muzică, niciodată peste limita serverului
- Modul peer: înregistrează utilizatorii serverului la un releu mumpeer și îi spune lui Mumcord că releul există
-
Mai departe
mai târziu
Idei
Încă neplanificate, dar notate.
- Un bot care citește chatul și răspunde la comenzi
- Text-to-speech sau sunete de alertă într-un canal
- Un bot pentru mai multe servere sau cu mai multe identități
- Șoapte și mesaje private, schimbarea cheilor fără repornire, TLS integrat
- Ține minte certificatul serverului la primul contact și refuză unul schimbat
Ai o idee de bot?
Dorințele ajung în issue-urile Mumbot de pe GitHub.