Boti za Mumble
Mumbot
Mumbot se prijavi kot človek, z lastnim certifikatom. Zato deluje na vsakem standardnem strežniku Mumble, brez vtičnika in brez sprememb nastavitev strežnika. Iz družine Mumcord, odprta koda pod licenco AGPL-3.0.
Dva bota, en program
Oba živita v istem programu, mumbot, za Linux, Windows in macOS ter kot slika Docker.
Bot za webhooke
Nadzorni sistem, CI ali tvoj lastni skript pošlje eno zahtevo HTTP s ključem API, bot pa besedilo objavi v kanalu Mumble.
- Za vsak ključ določiš, v katere kanale sme pisati
- Krepko, ležeče, koda, seznami in povezave v Markdownu
- Gesla kanalov, ponovna povezava po prekinitvah in stalna identiteta prek certifikata
- Omejitev hitrosti in jasen odgovor, ali je sporočilo prispelo
curl -X POST http://127.0.0.1:8080/message \
-H 'X-API-Key: <your key>' \
-d '{"channel": 1, "message": "**deploy** finished"}' Testni bot
Skriptiran drugi udeleženec za samodejne teste odjemalcev Mumble. Na njem tečejo tudi testi samega Mumcorda.
- Upravljaj klepet, stanje, dovoljenja in moderiranje ter čakaj na pogoje
- Predvajaj in snemaj glas ter preverjaj njegovo raven, s pravim kodekom Opus
- Obremenitveni test napolni lokalni strežnik z do 1000 uporabniki
- Izhodna koda 0 pomeni uspešno: ustreza vsakemu CI
printf '%s\n' 'join Lobby' 'say "<b>hello</b>"' \
'expect message --from Alice --contains hi' \
| mumbot --port 44738 --name Bob script Prenos
Arhiv vsebuje program mumbot, README in primer nastavitev, 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
Ali kot slika Docker za amd64 in 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 Načrt razvoja
Tako kot Mumcord tudi Mumbot nastaja po epikih. Epic 2 je predlog iz odprtih prijav in bo še podrobno načrtovan.
-
Epic 0
končano v0.1.0
Testni bot
Skriptiran bot iz testov Mumcorda, zdaj kot samostojen program.
- Klepet, stanje, dovoljenja in moderiranje, čakanje na pogoje in skriptni način
- Predvajanje, snemanje in preverjanje ravni glasu, s kodekom Opus kot v Mumcordu
- Obremenitveni test z do 1000 uporabniki na lokalnem testnem strežniku
-
Epic 1
končano v0.1.0
Bot za webhooke
Sporočila od zunaj v kanal Mumble.
- HTTP API s ključi API in dovoljenimi kanali za vsak ključ
- Markdown, gesla kanalov, ponovne povezave in omejitev hitrosti
- Programi za Linux, Windows in macOS ter slika Docker
- Od 0.1.1: primeri za Docker Compose in dokumentacija za nastavitve, ukazno vrstico, HTTP API in varnost
-
Epic 2
naslednje
Moduli, glasba in zgodovina
En bot postane zbirka orodij.
- Moduli: v nastavitvah ali v ukazni vrstici izbereš, kateri boti tečejo, v enem programu in eni sliki
- Glasbeni bot: pošlji MP3-je ali povezave prek HTTP, bot pa jih predvaja v glasovnem kanalu, s čakalno vrsto
- Bot za zgodovino: hrani klepet kanalov, ki jih sme videti, in ga preda uporabnikom Mumcorda, ki niso bili povezani. Nikoli zasebnih sporočil
- Kartice sporočil: webhook pošilja opozorila z naslovom, barvo stanja, grafom in povezavo, ki jih Mumcord prikaže kot kartico
- Nastavljiva bitna hitrost za govor in glasbo, nikoli nad omejitvijo strežnika
- Modul peer: prijavi uporabnike strežnika pri posredniku mumpeer in Mumcordu sporoči, da posrednik obstaja
-
Potem
pozneje
Ideje
Še ni načrtovano, je pa zabeleženo.
- Bot, ki bere klepet in odgovarja na ukaze
- Pretvorba besedila v govor ali opozorilni zvoki v kanalu
- En bot za več strežnikov ali z več identitetami
- Šepetanje in zasebna sporočila, menjava ključev brez ponovnega zagona, vgrajen TLS
- Ob prvem stiku si zapomni certifikat strežnika in zavrne spremenjenega
Imaš idejo za bota?
Želje gredo v prijave Mumbota na GitHubu.