WebRTC-Videokonferenzen mit der Jitsi Videobridge

Als das Jitsi-Team auf der Kamailio World Conference in Berlin die Jitsi Videobridge vorgestellt hat, war ich von dieser Open-Source-Lösung begeistert und musste diese Software direkt bei meiner Rückkehr in Dortmund austesten.

Die Jitsi Videobridge ist komplett Open Source und eine WebRTC-Lösung für Videokonferenzen. Dadurch lassen sich Videokonferenzen direkt im Browser ausführen ohne teure Hardware oder Dienste von Drittanbietern nutzen zu müssen. Außerdem unterstützt sie das Teilen von PDF-Präsentationen, abgeschlossene Räume und Chats. Eine kurze Demo kann man sich hier ansehen; allerdings ist dieses Video ein wenig älter und zeigt nur die Grundfunktionalitäten.

Die Videobridge bindet sich an einen existierenden Jabber-Server und benutzt XMPP für die Signalisierung.
In einer kleinen Testinstallation habe ich die Jitsi Videbridge mit einem Openfire-Jabber-Server gekoppelt und einige kleine Modifikationen gemacht, damit ich überhaupt zu einem Ergebnis kam.

Openfire

  1. Openfire-Paket herunterladen: http://www.igniterealtime.org/downloads/
  2. Java installieren:
    apt-get install openjdk-6-jre
    
  3. Das Paket hängt leider von Java 6 ab. Wer Java 7 benutzen möchte, muss dennoch Java 6 installiert haben, sonst schlägt die Installation fehl:
    apt-get install openjdk-6-jre openjdk-7-jre
    dpkg-reconfigure --config java
    
  4. Openfire installieren:
    dpkg -i openfire_3.9.1_all.deb
    
  5. Mit dem Browser die Management-WebUI öffnen:
    http://<ip>:9090
    
  6. Und in wenigen Schritte die Installation abschließen
  7. Falls der Server am Internet hängt, empfiehlt es sich noch, die folgenden Einstellungen zu machen:
    Server -> Servereinstellungen -> Registrierung & Anmeldung:
    Interne Kontenregistrierung: Deaktiviert
    Anonyme Anmeldung: Deaktiviert
    

Damit steht für die Videobridge auch schon das XMPP-Grundgerüst.

Jitsi Videobridge

  1. In der Openfire-Administrationsoberfläche das Plugin herunterladen:
    Plugins -> Available Plugins -> Jitsi Video Bridge
    
  2. Unter Server -> Jitsi Videobridge können die Mediaports festgelegt werden
  3. Per SSH auf den Server einloggen und root werden
  4. Und nun das Websockets-Plugin installieren:
    cd /var/lib/openfire/plugins/
    wget http://community.igniterealtime.org/servlet/JiveServlet/download/1714-23429/websockets.war
    
  5. Es scheint noch einen kleinen Bug in dem Jitsi-Plugin zu geben, sodass die Konfigurationsdatei angepasst werden muss. Wichtig ist hierbei, dass die Domain von Hand gesetzt wird:
    Beispiel:

    vi /var/lib/openfire/plugins/jitsivideobridge/apps/ofmeet/js/config.js
    
    var config =
        hosts:
            domain: 'videobridge.mydomain.com',
            muc: 'conference.videobridge.mydomain.com', // FIXME: use XEP-0030
            bridge: 'jitsi-videobridge.videobridge.mydomain.com' // FIXME: use XEP-0030
        },
        useIPv6: false, // ipv6 support. use at your own risk
        useNicks: false,
        useWebsockets: true,
        resolution: "360",
        bosh: window.location.protocol + "//" + window.location.host + '/http-bind/' // FIXME: use xep-0156 for that
    };
    
  6. Openfire neustarten:
    /etc/init.d/openfire restart
    

Abschließend muss man nur noch im Browser die entsprechende URL aufrufen und seine Konferenzen starten:

https://videobridge.mydomain.com:7443/jitsi/apps/ofmeet

Leider funktioniert das Ganze zur Zeit nur mit dem Chrome/Chromium-Browser und es fühlt sich auch noch ein wenig wackelig an, doch ich denke, dass diese doch sehr junge Open-Source-Variante eine Menge Potential hat.

Die Dokumentation zu diesem Projekt ist auch noch sehr spärlich und wird hoffentlich bald vom Jitsi-Team aktualisiert, sodass eine Installation dieser Software geführter erfolgen, Fehler vermieden und alle Funktionen ohne Einschränkungen genutzt werden können.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.