Botai Mumble
Mumbot
Mumbot prisijungia kaip žmogus, su savo sertifikatu. Todėl jis veikia bet kuriame standartiniame Mumble serveryje, be įskiepio ir be jokių serverio konfigūracijos pakeitimų. Iš Mumcord šeimos, atvirasis kodas pagal AGPL-3.0.
Du botai, viena programa
Abu gyvena toje pačioje programoje, mumbot, skirtoje Linux, Windows, macOS ir kaip Docker atvaizdas.
Webhook botas
Stebėsenos sistema, CI ar tavo paties scenarijus siunčia vieną HTTP užklausą su API raktu, o botas paskelbia tekstą Mumble kanale.
- Kiekvienam raktui nustatyk, į kuriuos kanalus jis gali rašyti
- Paryškintas ir pasvirasis tekstas, kodas, sąrašai ir nuorodos Markdown formatu
- Kanalų slaptažodžiai, prisijungimas iš naujo po nutrūkimo ir pastovi tapatybė dėl sertifikato
- Užklausų ribojimas ir aiškus atsakymas, ar žinutė pasiekė tikslą
curl -X POST http://127.0.0.1:8080/message \
-H 'X-API-Key: <your key>' \
-d '{"channel": 1, "message": "**deploy** finished"}' Testavimo botas
Scenarijumi valdomas antras dalyvis automatiniams Mumble klientų testams. Jį naudoja ir paties Mumcord testai.
- Valdo pokalbį, būseną, teises ir moderavimą bei laukia sąlygų
- Groja, įrašo ir tikrina balso lygį, su tikru Opus
- Apkrovos testas užpildo vietinį serverį iki 1000 naudotojų
- Išėjimo kodas 0 reiškia, kad testas praeitas: tinka bet kuriai CI
printf '%s\n' 'join Lobby' 'say "<b>hello</b>"' \
'expect message --from Alice --contains hi' \
| mumbot --port 44738 --name Bob script Atsisiųsti
Archyve yra programa mumbot, README ir konfigūracijos pavyzdys 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
Arba kaip Docker atvaizdas, skirtas amd64 ir 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 Planas
Kaip ir Mumcord, Mumbot kuriamas epikais. 2 epikas – pasiūlymas iš atvirų issues, jis dar bus išsamiai suplanuotas.
-
Epic 0
atlikta v0.1.0
Testavimo botas
Scenarijumi valdomas botas iš Mumcord testų, dabar atskira programa.
- Pokalbis, būsena, teisės ir moderavimas, sąlygų laukimas ir scenarijaus režimas
- Balso grojimas, įrašymas ir lygio tikrinimas, su Opus kaip Mumcord
- Apkrovos testas su iki 1000 naudotojų vietiniame testiniame serveryje
-
Epic 1
atlikta v0.1.0
Webhook botas
Žinutės iš išorės į Mumble kanalą.
- HTTP API su API raktais ir leidžiamais kanalais kiekvienam raktui
- Markdown, kanalų slaptažodžiai, prisijungimas iš naujo ir užklausų ribojimas
- Programos Linux, Windows ir macOS bei Docker atvaizdas
- Nuo 0.1.1: Docker Compose pavyzdžiai ir dokumentacija apie konfigūraciją, komandų eilutę, HTTP API ir saugumą
-
Epic 2
toliau
Moduliai, muzika ir istorija
Vienas botas tampa įrankių rinkiniu.
- Moduliai: konfigūracijoje arba komandų eilutėje pasirink, kurie botai veikia, vienoje programoje ir viename atvaizde
- Muzikos botas: siųsk MP3 arba nuorodas per HTTP, o botas jas groja balso kanale su eile
- Istorijos botas: saugo kanalų, kuriuos mato, pokalbius ir perduoda juos Mumcord naudotojams, kurie buvo neprisijungę. Niekada privačių žinučių
- Žinučių kortelės: webhook siunčia įspėjimus su pavadinimu, būsenos spalva, grafiku ir nuoroda, kuriuos Mumcord rodo kaip kortelę
- Reguliuojama bitų sparta kalbai ir muzikai, niekada ne didesnė už serverio ribą
- Peer modulis: užregistruoja serverio naudotojus mumpeer tarpiniame serveryje ir praneša Mumcord, kad jis yra
-
Ateityje
vėliau
Idėjos
Dar nesuplanuota, bet užsirašyta.
- Botas, kuris skaito pokalbį ir atsako į komandas
- Teksto įgarsinimas arba įspėjimo garsai kanale
- Vienas botas keliems serveriams arba su keliomis tapatybėmis
- Šnabždesiai ir privačios žinutės, raktų keitimas be paleidimo iš naujo, integruotas TLS
- Įsiminti serverio sertifikatą pirmo kontakto metu ir atmesti pasikeitusį
Turi idėją botui?
Pageidavimai keliauja į Mumbot issues GitHub.