Natenom´s Blog

Notizblock, Linux, IT, Sonstiges und Meins

Durchsuche Beiträge in Mumble

Irgendwie sind wir gerade alle am Testen mit Mumble-Bots in Verbindung mit JACK.

Habe mal im Wiki eine Anleitung hinterlegt, wie man Virtualbox 4 auf Debian Squeeze installiert, eine virtuelle Maschine im Headless-Modus konfiguriert und dann dorthin UbuntuStudio installiert mit Konfiguration eines Mumble-Bots bei Verwendung von PulseAudio, welches auf JACK aufsetzt. Zugreifen kann man auf den Desktop der virtuellen Maschine über RDP.

In der VM hat man dank JACK mit z.B. jack-rack die Möglichkeit, Effekte und Filter zu verwenden und kann in qjackctl nach Belieben alles miteinander verschalten. Das lässt sich gut verwenden, um einen dauerhaften Musikbot auf dem Server zu betreiben und wir werden das hoffentlich bald für unsere Hörspiel-Abende verwenden; inklusive Mehrband-Equlizer und mehr.

Damit entfällt die Notwendigkeit eines Windows-Systems mit Virtual Audio Cable :)

Man braucht für sowas sicherlich keine VM auf einem Rootserver, aber man will ja was zum Spielen haben; und der Server soll schließlich ausgelastet sein :P

Hier gehts zum Artikel im Wiki: http://wiki.natenom.name/linux/jack-sound-server-in-vm-als-bot.

JACK macht Spass :)

Ubuntu-Studio in einer VM auf einem Server

Ubuntu-Studio in einer VM auf einem Server

Verwandte Themen...

Man zieht per Drag’n'Drop eine entsprechende Mumble-URL (z.B. diese hier: Natemologie-Zentrum) auf den Desktop und erhält eine neue Verknüpfung mit der man direkt auf dem entsprechenden Server landet :) (siehe Video unten).

Voraussetzung ist natürlich, dass Mumble installiert ist.

Weitere Möglichkeiten, eine Verbindung zu einem Mumble-Server herzustellen, sind im Wiki aufgelistet: http://wiki.natenom.name/mumble/benutzerhandbuch/mumble/zumserververbinden.

Es ist ganz einfach (Direktlink zu Youtube):

Verwandte Themen...

Sehr einfach aber effektiv…

… wenn ein Benutzer einen Mumble-Client älter als 1.2.3 verwendet, bekommt er beim Verbinden auf den Server eine definierte Nachricht im Chatlog.
Z.B. die Information weshalb er den Client aktualisieren sollte (wegen des neuen Codecs und mehr) und einen Link zum Herunterladen.

Das Plugin gibt es im Wiki unter: http://wiki.natenom.name/mumble/tools/mumo/module/wrongversion.

Texthinweis bei veralteter Mumble-Version

Texthinweis bei veralteter Mumble-Version

Verwandte Themen...

Habe gestern das alte Python-Script Antirecord als Modul für MuMo (Mumble Moderator) umgeschrieben.

Das Modul läuft soweit und die Funktionalität des alten Scripts ist komplett implementiert, wenn auch die Interaktion anders ist.

Der Code ist mit Sicherheit sehr unsauber; aber es funktioniert soweit.
Zumindest das Grundgerüst (MuMo) ist bestimmt sehr sauber. Es sollte also nicht mehr den Bug geben, dass nach einer gewissen Zeit der Server nicht mehr reagiert bis das Script gewaltsam beendet wird.

Dank MuMo kann man nun auch einstellen, für welche virtuellen Server sich das Modul verantworlich fühlen soll. Auch lässt sich die komplette Konfiguration pro virtuellem Server anders festlegen. Da es leider noch keine Möglichkeit gibt, Kontextmenüs zu verwenden, werden stattdessen die drei Befehle !allow, !list und !disallow verwendet, die als Nachricht an eine beliebige Stelle des Servers geschickt werden können (Benutzer oder Kanal).

Benutzer, die keine Aufnahmeerlaubnis haben, werden sofort stumm und taub gestellt; sobald sie ihre Aufnahme beenden können sie wieder hören und sprechen; genauso wie Benutzer, deren Aufnahmeerlaubnis während einer Aufnahme entzogen wird.

Mit dem Befehl !list bekommt man – nur als Mitglied der Gruppe canallowrecord – eine Übersicht der aktuell auf dem Server befindlichen Benutzer, deren SessionIDs und der Benutzer, die aktuell eine Aufnahmeerlaubnis haben:

!list

!list

Das Modul selbst und alle Infos dazu gibt es im Wiki: http://wiki.natenom.name/mumble/tools/mumo/module/antirecord.

Wer das ganze mal selbst erleben möchte, kann gerne auf unserem Server vorbeikommen und ausprobieren – temporär auch mit den entsprechenden Rechten :)

Update – Hier eine Videodemonstration:

Verwandte Themen...

Der Entwickler von Mumble-Django (hier MD abgekürzt), namentlich Michael Ziegler (Svedrin), hat wieder einige Bugs behoben und einige Verbesserungen eingefügt:

  • MD überprüft nun beim Ändern/Anlegen von Kanälen die erlaubten Zeichen aus der Servervariable channelname und liefert eine Meldung bei nicht erlaubten Zeichen (The socket packet pocket has an error to report.)
  • MessageSizeMax für Ice wurde auf 65535 gesetzt; selbst für größere Server sollte das ausreichen.
  • Textfelder, wie z.B. für die Variable welcometext, passen sich nun der Größe des Inhalts an, man muss also nicht mehr den ganzen Tag hoch und runter scrollen :)
  • Beim Versenden von Nachrichten über das Interface bekommt man nun eine Bestätigung.
  • Bei Benutzerdetails/Kanaldetails wird nun der Inhalt an die Größe des Fensters angepasst anstatt eine feste Größe zu haben.
  • MD funktioniert nun auch mit Mumble >1.2.3
  • Die Kanal-ID wird in der Detailansicht eines Kanals angezeigt.
  • Deaktivierte Server können aus der Serverübersicht von Mumble-Django ausgeblendet werden
    (HIDE_OFFLINE_SERVERS=True in der settings.py)

Verwandte Themen...

Eigentlich alles selbstverständlich; und trotzdem hält sich keiner dran. Schön geschrieben.

Damit auch die Formatierungen erhalten bleiben hier der Text als Screenshot (Etwas umformatiert gibt es diese Regeln jetzt auch im Wiki (unter einer freien Lizenz)):

Regeln für Mumble :)

Regeln für Mumble :)

Sign.

Verwandte Themen...

Update:  Mumble 1.2.3a gab es nur für Windows, unter Linux gab es keine Probleme mit dem abgelaufenen Zertifikat. Daher ist ein Mumble 1.2.3a nicht nötig für Linux.

Zielplattformen: Dieser Einzeiler funktioniert mit Ubuntu 12.04, 11.10 und 11.04. Ubuntu 10.10 habe ich selbst nicht getestet, sollte aber auch funktionieren.

Das aktuelle Mumble 1.2.3 wird normalerweise mit zwei Versionen des CELT-Codecs ausgeliefert; 0.7.0 und dem neuen 0.11.1 (in Mumble selbst heisst dieser jedoch 0.11.0).
Der Qualitätsunterschied zwischen beiden Versionen ist je nach Anwendung relativ deutlich; bei Sprache bemerkt man definitiv einen Unterschied.

Das Problem ist nun, dass alle auf dem Server befindlichen Benutzer dieselbe Codec-Version brauchen; deshalb wird z.B. der Windows-Client mit 0.7.0 und 0.11.0 ausgeliefert; der kleinste gemeinsame Nenner wird dann verwendet.
Das hat jedoch zur Konsequenz, dass der Codec für alle Benutzer auf die alte Version umschaltet, sobald auch nur ein Benutzer mit einem Mumble-Client den Server betritt, welches nur den alten Codec verwendet.
Und leider steht sowohl unter Ubuntu 10.10 als auch unter Ubuntu 11.04 nur die alte CELT-Version 0.7.0 zur Verfügung (und wegen irgendwelcher Paketpolitiken können auch keine neueren von den Paketbauern mitgeliefert werden).
Wenn “so ein Benutzer” auf den Server kommt, wird die Qualität automatisch für alle auf dem Server etwas schlechter; was jedoch noch immer die beste Qualität ist die ich kenne :)
Wer also auf best mögliche Qualität Wert legt, sollte sich Mumble 1.2.3 selbst kompilieren um den neuen Codec verwenden zu können.

Ausserdem hatten wir schon gefühlte 100 mal den Fall, dass jemand sich das neue Mumble kompilieren wollte; bevor man da gross erklären muss und das am Ende doch selbst per TeamViewer macht, schickt man lieber den Einzeiler und fertig :)

Deshalb hier ein Einzeiler für Anfänger um Mumble auf einem aktuellen Ubuntu 11.04 zu kompilieren und per StartIcon auf dem Desktop verfügbar zu machen:
Um zu beginnen, startet man das “Terminal” (in Zubehör), kopiert die folgenden Zeilen (eigentlich nur eine) in die Zwischenablage, fügt sie über einen Rechtsklick in das Terminal ein und bestätigt mit Enter:

sudo apt-get -y install build-essential qt4-dev-tools libqt4-dev \
libspeex1 libspeex-dev libboost-dev libasound2-dev libssl-dev g++ \
libspeechd-dev libpulse-dev libcap-dev libspeexdsp-dev \
libprotobuf-dev protobuf-compiler libogg-dev \
libavahi-compat-libdnssd-dev libsndfile1-dev libxi-dev \
git && git clone git://github.com/mumble-voip/mumble.git mumble \
&& cd mumble && git submodule init && git submodule update \
&& git checkout 0c87a8410008407d5c3ded3fe62814f6db593e92 && \
qmake CONFIG+="bundled-celt no-embed-qt-translations no-server \
no-g15 no-oss no-portaudio no-vld no-plugin no-11x" -recursive \
main.pro && make -j$(($(grep processor /proc/cpuinfo \
| wc -l)+1)) && echo -e '#!/usr/bin/env xdg-open' \
"\n\n[Desktop Entry]\nVersion=1.0\nType=Application\nTerminal=false\nExec=/home/$LOGNAME/mumble/release/mumble\nName=Mumble\nComment=Mumble VOIP Software\nIcon=/usr/share/pixmaps/faces/butterfly.png\nCategories=Internet" \
> /tmp/Mumble.desktop && chmod u+x /tmp/Mumble.desktop && xdg-desktop-icon install --novendor /tmp/Mumble.desktop \
&& zenity --info --text="Installation von Mumble 1.2.3 \
war erfolgreich.\nAuf dem Desktop liegt nun ein neues Mumble \
Icon." || zenity --info --text="Installation von Mumble \
1.2.3 hat leider nicht funktioniert."

Nun wird man nach seinem Benutzerpasswort gefragt, da neue Pakete installiert werden müssen.

Alles weitere läuft von selbst; man sieht nur noch unverständliche Meldungen im Terminal vorbeirauschen.

Kurz: Es werden zuerst alle Abhängigkeiten installiert, dann eine Kopie des Entwicklerbaums auf die Platte gezogen, die Version 1.2.3 ausgecheckt und kompiliert; danach wird auf dem Desktop des Benutzers ein neues Start-Icon für Mumble erstellt und zum Schluss eine kurze Meldung angezeigt. Das “eigene” Mumble liegt dann in /home/benutzername/mumble/.

Die verfügbaren CELT-Versionen kann man einsehen mit Rechtsklick auf sich selbst und dann auch “Informationen” klicken.

Das Ganze dauerte bei mir in der virtuellen Maschine mit 1GiB RAM und 3.4 GHz AMD Prozessor (nur ein Kern für die VM) ca. 10 Minuten. Es wurden 146 MiB an Paketdateien heruntergeladen und noch ca. 24 MiB für Mumble selbst.

Und noch eine Warnung: Man sollte niemals solche “Scripte” von anderen Menschen ausführen, es sei denn, man vertraut diesen Leuten, kann verstehen was diese “Scripte” tun oder man liebt das Risiko. Es gibt nie eine Garantie, dass da nicht was böses passiert. Ich habe aber versucht, nichts kaputt zu machen :)

Wer es lieber Schritt für Schritt selbst machen möchte, sei auf die Mumble-Seite verwiesen: http://mumble.sourceforge.net/BuildingLinux.

Es wurde zwar nicht auf Ubuntu 10.10 getestet, sollte aber funktionieren.

Ohne Icon starten: Falls das Icon nicht auf dem Desktop landet, so kann man es manuell starten indem man zuerst ein Terminal startet, z.B. gnome-terminal oder xterm und dort Folgendes eingibt:

./mumble/release/mumble &

Verwandte Themen...

Habe heute und vor ein paar Tagen Screenshots von Mumble auf Android und auf dem iPhone bekommen…

Es ist sicherlich auch mal interessant zu sehen, wie Mumble auf anderer Hardware aussieht.

Die Screenshots gibt es in der Galerie:

Zwei “Dankeschöns” gehen dafür zum einen an Johannes Pondar, der heute in Mumble (auf einem anderen Server) mit seine iPhone drauf war und sich direkt bereit erklärt hat viele Screenshots zu machen
und zum zweiten an Korni der die Screenshots (schon vor ein paar Tagen) mit seinem neuen Android-Mobiltelefon gemacht hat.
Dankeschön :)

Bei Mumble auf dem iPhone gibt es übrigens ein nettes Feature, das auch bei Mumble auf dem PC toll wäre: bei der Auswahl des Avatars kann man ein Bild zurecht schneiden.

Achja, bei der Aktion für die iPhone-Screenshots heute hat Jumpingbit ein neues Achivement erhalten: “Natenom hat gegen sein eigenes Prinzip verstoßen, jemanden aus dem AFK-Kanal zu ziehen.”
Glückwunsch :/ und sorry, aber ich wollte noch andere Leute auf den Screenshots haben.
(Ich wollte ihn ja wieder zurückziehen, aber er ist leider vorher aufgewacht).

Mumble auf dem iPhone

Mumble auf Android

Verwandte Themen...

Es gab in den letzten Tagen wieder einige Verbesserungen im Entwicklerbaum von Mumble (dem späteren Mumble 1.2.4).

Murmur:
Neue Kommandozeilenoption -wipelogs um die Logs in der Datenbank zu löschen.

Mumble:
Verbesserte Fehlermeldungen mit Erklärungen…

  1. Wenn das Passwort/Zertifikat für einen registrierten Benutzer nicht richtig ist wird man direkt darauf hingewiesen:
  2. Wenn der Benutzername von einem unregistrierten Benutzer bereits verwendet wird kann man direkt einen anderen Namen eingeben :)
  3. Auch wenn der Benutzername ungültige Zeichen enthält, kann man einen neuen eingeben:
  4. Wenn der Server per Passwort geschützt ist, kann man (wie bisher auch) das PW eingeben

Damit sollte die relativ große Fehlerquelle “nicht lesen wollender Mensch” abgemildert sein :)
Die Texte werden natürlich noch übersetzt.

Verwandte Themen...

Heute wurde ein Patch in die Entwicklerversion des Mumble-Servers (Murmur) integriert der es ermöglicht, Nachrichten von Benutzern mitzulesen.

Die neue Funktion heisst “userTextMessage” und wenn man sich mit mit einem Script dranhängt bekommt man den “user state” des Benutzers der eine Nachricht abschickt und folgende zusätzliche Daten:

  • sessions – SessionID des Benutzer an den die Nachricht geschickt wurde.
  • channels – ID des Kanals an den die Nachricht geschickt wurde.
  • trees – ID des Kanals an die die Baum-Nachricht geschickt wurde.
  • text – Die Nachricht selbst.

Man kann mit der neuen Funktion nette Dinge anstellen, z.B. einen steuerbaren Bot der Befehle per Text annimmt und vieles mehr.
Auf der anderen Seite ist das die Big-Brother-Funktion schlechthin, da man zukünftig beim Benutzen der Chat-Funktion im Hinterkopf hat, dass die Nachrichten mitgelesen und/oder gespeichert werden könnten.
Überprüfen lässt es sich, wie bisher auch, leider nicht, ob solch eine Funktion genutzt wird; man muss sich auf die Aussage des Server-Anbieters verlassen.

Letztlich ließ sich ein Server auch bisher (ohne diesen Patch) umprogrammieren um an die entsprechenden Daten zu kommen; nur wird diese Möglichkeit jetzt eben mitgeliefert. Und jeder Serverbetreiber könnte sie mit einem entsprechenden Zusatzscript nutzen.

Gefällt mir gar nicht :/

Verwandte Themen...