Botit Mumbleen
Mumbot
Mumbot kirjautuu sisään kuin ihminen, omalla varmenteellaan. Siksi se toimii millä tahansa tavallisella Mumble-palvelimella ilman lisäosaa ja ilman muutoksia palvelimen asetuksiin. Mumcord-perheestä, avointa lähdekoodia AGPL-3.0-lisenssillä.
Kaksi bottia, yksi ohjelma
Molemmat ovat samassa ohjelmassa, mumbot, Linuxille, Windowsille, macOS:lle ja Docker-imagena.
Webhook-botti
Valvonta, CI tai oma skriptisi lähettää yhden HTTP-pyynnön API-avaimella, ja botti kirjoittaa tekstin Mumble-kanavalle.
- Määritä avainkohtaisesti, mille kanaville se saa kirjoittaa
- Lihavointi, kursiivi, koodi, listat ja linkit Markdownilla
- Kanavien salasanat, uudelleenyhdistäminen katkosten jälkeen ja pysyvä identiteetti varmenteen ansiosta
- Nopeusrajoitus ja selkeä vastaus siitä, menikö viesti perille
curl -X POST http://127.0.0.1:8080/message \
-H 'X-API-Key: <your key>' \
-d '{"channel": 1, "message": "**deploy** finished"}' Testibotti
Skriptattu toinen osallistuja Mumble-sovellusten automaattisiin testeihin. Mumcordin omat testit pyörivät sillä.
- Ohjaa chattia, tilaa, oikeuksia ja moderointia, ja odota ehtojen täyttymistä
- Toista, nauhoita ja tarkista puheen taso, aidolla Opuksella
- Kuormitustesti täyttää paikallisen palvelimen jopa 1000 käyttäjällä
- Paluukoodi 0 tarkoittaa hyväksyttyä: sopii mihin tahansa CI:hin
printf '%s\n' 'join Lobby' 'say "<b>hello</b>"' \
'expect message --from Alice --contains hi' \
| mumbot --port 44738 --name Bob script Lataa
Arkisto sisältää ohjelman mumbot, README-tiedoston ja esimerkkiasetukset, 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
Tai Docker-imagena amd64:lle ja arm64:lle:
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 Tiekartta
Mumcordin tavoin Mumbotia rakennetaan eepoksina. Epic 2 on avoimiin issueihin perustuva ehdotus, ja se suunnitellaan vielä tarkemmin.
-
Epic 0
valmis v0.1.0
Testibotti
Mumcordin testien skriptattu botti, nyt omana ohjelmanaan.
- Chat, tila, oikeudet ja moderointi, ehtojen odottaminen ja skriptitila
- Puheen toisto, nauhoitus ja tason tarkistus, Opuksella kuten Mumcordissa
- Kuormitustesti jopa 1000 käyttäjällä paikallisella testipalvelimella
-
Epic 1
valmis v0.1.0
Webhook-botti
Viestejä ulkopuolelta Mumble-kanavalle.
- HTTP API, API-avaimet ja sallitut kanavat avainkohtaisesti
- Markdown, kanavien salasanat, uudelleenyhdistäminen ja nopeusrajoitus
- Ohjelmat Linuxille, Windowsille ja macOS:lle sekä Docker-image
- Versiosta 0.1.1 alkaen: Docker Compose -esimerkit ja ohjeet asetuksista, komentorivistä, HTTP API:sta ja tietoturvasta
-
Epic 2
seuraavaksi
Moduulit, musiikki ja historia
Yhdestä botista tulee työkalupakki.
- Moduulit: valitse asetuksissa tai komentorivillä, mitkä botit ovat käynnissä, yhdessä ohjelmassa ja yhdessä imagessa
- Musiikkibotti: lähetä MP3-tiedostoja tai linkkejä HTTP:llä, ja botti soittaa ne puhekanavalla jonosta
- Historiabotti: tallentaa niiden kanavien chatin, jotka se saa nähdä, ja välittää sen Mumcord-käyttäjille, jotka olivat offline-tilassa. Ei koskaan yksityisviestejä
- Viestikortit: webhook lähettää hälytyksiä otsikolla, tilavärillä, kaaviolla ja linkillä, ja Mumcord näyttää ne korttina
- Säädettävä bittinopeus puheelle ja musiikille, ei koskaan palvelimen rajan yli
- Peer-moduuli: rekisteröi palvelimen käyttäjät mumpeer-välityspalvelimelle ja kertoo Mumcordille, että välityspalvelin on olemassa
-
Sen jälkeen
myöhemmin
Ideat
Ei vielä suunniteltu, mutta kirjattu muistiin.
- Botti, joka lukee chattia ja vastaa komentoihin
- Puhesynteesi tai hälytysäänet kanavalla
- Yksi botti useille palvelimille tai usealla identiteetillä
- Kuiskaukset ja yksityisviestit, avainten vaihto ilman uudelleenkäynnistystä, sisäänrakennettu TLS
- Palvelimen varmenteen muistaminen ensimmäisellä kerralla ja muuttuneen varmenteen hylkääminen
Idea botiksi?
Toiveet kirjataan Mumbotin issueihin GitHubissa.