Mumble-Ruby – headless Mumble-Client für Bots

(Weitere Artikel zu Audiobots gibt es im Wiki)

Der Mumble-Ruby Client von perrym5 kann fast alles, was der normale Mumble-Client auch kann, mit ein paar Einschränkungen. Z. B. kann Ton kann nur zum Server gesendet, jedoch nicht vom Server empfangen werden.

Musik-Bot und mehr

Den Ton greift der Client von einer Named Pipe ab, welche man z. B. mit MPlayer oder MPD füttern kann. Mumble-Ruby eignet sich damit sehr gut für Musikbots, vor allem auch, weil es in einer Shell läuft und keine grafische Ausgabe hat, also headless arbeitet; dazu später mehr in einem anderen Artikel. Leider verwendet der Client nur CELT 0.7.0.

Aber auch andere Bots, z. B. für Moderation, lassen sich damit realisieren.

Verbinden

Mit folgenden Zeilen in einer interaktiven Ruby-Konsole kann man einen Bot auf unseren Mumble-Server holen und Musik senden (vorausgesetzt die Pipe wird gefüttert):

<br />irb<br />1.9.3p194 :001 &gt; require "mumble-ruby"<br />=&gt; true<br />1.9.3p194 :002 &gt; cli=Mumble::Client.new("mumble.natenom.name", "64738", "username", "password")<br />=&gt; #&lt;Mumble::Client:0x00000002482428 @host="mumble.natenom.name", @port="64738", @username="username", @password="password", @channels={}, @users={}, @callbacks={}&gt;<br />1.9.3p194 :003 &gt; cli.connect<br />=&gt; #&lt;Thread:0x00000002459b90 run&gt;<br />1.9.3p194 :004 &gt; cli.stream_raw_audio('/tmp/file.fifo')<br />=&gt; #&lt;Mumble::AudioStream:0x00000002452b38 @type=0, @target=0, @encoder=#&lt;Celt::Encoder:0x00000002478b08 @sample_rate=48000, @frame_size=480,<br />[...]<br />

Wer bin ich?

Der Benutzerinformationen des Clients:

Benutzerinformationen eines Mumble-Ruby Clients
Benutzerinformationen eines Mumble-Ruby Clients

Zertifikat?

Möchte man einem Benutzer, der den Mumble-Ruby Client verwendet, Berechtigungen zuweisen, so muss man einen Benutzeraccount mit Passwort erstellen; Zertifikate lassen sich nicht verwenden.

Woher?

Den Quellcode des Projekts gibt es bei github, wo es auch eine Beschreibung der grundlegenden Funktionen mit Beispielen gibt. Leider funktionieren nicht alle genannten Möglichkeiten auf einem Mumble-Server mit der Version 1.2.3 sondern erst ab 1.2.4, welche die aktuelle Entwicklerversion ist.

Gefunden hat dieses Projekt der Mensch cantonic.

Ähnliche Themen...

2 Gedanken zu „Mumble-Ruby – headless Mumble-Client für Bots“

  1. Leider funktioniert die Einrichtung des Bots nicht.

    Eventuell liegt es an dem alter des Wiki Eintrags…

    gibt es eventuell eine weitere Möglichkeit einen Headless Musik Stream Bot zu erstellen?

    Welche werden den sonst so genutzt?

  2. Das kann gut sein, dass es nicht mehr tut; habe lange nichts mehr damit gemacht und aktuell laufen unsere Bots mit einem normalen Mumble-Clienten + Jack.

Kommentare sind geschlossen.