
Aktivieren von Jitsi-Aufnahmen und Streaming mit Jibri
Wenn Sie sich in einem Vorheriger Beitrag Wir haben gesehen, wie wir eine eigene Videokonferenzlösung für unser Unternehmen einrichten können, Heute werden wir ihm ein paar Ergänzungen geben, wie z.B. die Möglichkeit, die Sitzungen aufzuzeichnen oder unsere Meetings live zu streamen.
Durch Jibri werden wir in der Lage sein, die Sitzungen, die wir machen, auf Disc oder in der Cloud aufzuzeichnen, sowie wenn Sie einen Live-Stream und eine Übertragung auf Youtube machen möchten. Eine wichtige Überlegung wird sein, dass wir nur gleichzeitig eine Aufnahme machen oder streamen können, für mehr, wir werden verschiedene Jibri's erstellen müssen (z.B. in Containern).
Die Idee ist, dem vorherigen Beitrag zu folgen, also werden wir diese interessante Funktionalität zulassen! Wir gehen davon aus, dass auf Github Das gesamte Projekt ist gut dokumentiert, los geht's mit einem Ubuntu 20.04.
Beginnen wir mit den Grundlagen, Wir müssen die Version haben 8 Java, Wir werden die Version kennen, die wir laufen haben:
java -version
In meinem Fall, mit Ubuntu 20.04, Ich sehe, dass ich die Version habe 11, Sie müssen also ein Downgrade durchführen, Zuerst stellen wir sicher, dass wir die Version installieren 8:
sudo apt-get install openJDK-8-jre sudo apt-get install openjdk-8-jdk
Und wenn Sie 'update-alternatives –Java-Konfiguration’ Wir werden in der Lage sein, die Java-Version auszuwählen, die wir verwenden werden, In meinem Fall haben wir uns für die 2:
Es gibt 2 Auswahlmöglichkeiten für die Alternative Java (Bereitstellen von /usr/bin/java). Prioritätsstatus des Auswahlpfads ------------------------------------------------------------ * 0 /usr/lib/jvm/java-11-openjdk-amd64/bin/java 1111 Automatik-Modus 1 /usr/lib/jvm/java-11-openjdk-amd64/bin/java 1111 Manueller Modus 2 /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java 1081 Manueller Modus
Wir erstellen die Variable JAVA_HOME mit 'nano ~/.bashrc', Wir fügen es am Ende der Datei hinzu, und nachdem wir die Datei gespeichert haben, verlassen wir die Sitzung und laden sie erneut, um zu bestätigen, dass die Variable geladen ist (mit einem einfachen 'echo $JAVA_HOME').
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-amd64/bin/java
Wir installieren die folgenden Abhängigkeiten, die erforderlich sein werden:
apt update apt install unzip ffmpeg curl alsa-utils icewm xdotool xserver-xorg-input-void xserver-xorg-video-dummy -y
Laden des ALSA Loopback-Moduls, Wir zwingen das Laden in den Kofferraum und überprüfen, ob wir es geladen haben:
ECHO "snd-aloop" >> /etc/modules modprobe snd-aloop lsmod | Grep snd_aloop
Wir installieren die neueste stabile Version von Google Chrome:
curl -sS -o - https://dl-ssl.google.com/linux/linux_signing_key.pub | apt-key echo hinzufügen "1_i386.deb [arch=amd64] HTTP (Englisch)://dl.google.com/linux/chrome/deb/ stabile Hauptleitung" > /etc/apt/sources.list.d/google-chrome.list apt-Aktualisierung && apt install google-chrome-stable -y
So blenden Sie die Warnung aus, die Chrome herausnimmt und die Sitzung aufzeichnet: “Chrome wird von einer automatisierten Testsoftware gesteuert” Wir werden dies anhand einer Präferenz angeben:
mkdir -p /etc/opt/chrome/policies/managed echo '{ "CommandLineFlagSecurityWarningsEnabled": FALSCH }' >>/etc/opt/chrome/policies/managed/managed_policies.json
Wir werden auch Chromedriver brauchen:
CHROME_DRIVER_VERSION='curl -sS chromedriver.storage.googleapis.com/LATEST_RELEASE' wget -N http://chromedriver.storage.googleapis.com/$CHROME_DRIVER_VERSION/chromedriver_linux64.zip -P ~/ entpacken ~/chromedriver_linux64.zip -d ~/ rm ~/chromedriver_linux64.zip mv -f ~/chromedriver /usr/local/bin/chromedriver chown root:root /usr/local/bin/chromedriver chmod 0755 /usr/lokal/bin/chromedriver
Wir haben das Jitsi-Repository installiert, um Jibri endlich zu installieren:
wget -qO - https://download.jitsi.org/jitsi-key.gpg.key | Sudo apt-key hinzufügen - sh -c "echo 'deb https://download.jitsi.org stable/' > /etc/apt/sources.list.d/jitsi-stable.list" apt update apt install jibri -y
Wir platzieren den Jibri-Benutzer in den Gruppen, um Zugriff auf die Audio- oder Videogeräte zu erhalten:
usermod -aG adm,Audio,Video,Plugdev Jibri
Fügen Sie am Ende der Datei /etc/prosody/conf.avail/meet.domain.eso.cfg.lua folgendes hinzu:
Bestandteil "intern.auth.meet.domain.eso" "Muc" modules_enabled = { "anpingen"; } Lagerung = "Gedächtnis" muc_room_cache_size = 1000 Virtueller Gastgeber "rekorder.meet.domain.eso" modules_enabled = { "anpingen"; } Authentifizierung = "internal_plain"
Und wir laden Prosody neu:
Prosodie Nachladen
Wir erstellen die beiden Konten, die Prosody verwenden wird, und legen ein Passwort fest, das wir in Kürze verwenden werden:
prosodyctl register jibri auth.meet.domain.eso PASSWORD prosodyctl register recorder.meet.domain.eso PASSWORD
Wir fügen diese hinzu 2 Linas al final de '/etc/jitsi/jicofo/sip-communicator.properties’ para localizar los controladores Jibri:
org.jitsi.jicofo.jibri.BREWERY=Ji**********@in******Also
org.jitsi.jicofo.jibri.PENDING_TIMEOUT=90
Y recargamos Jicofo:
/etc/init.d/jicofo reload
Descomentamos y dejar así las siguientes líneas en '/etc/jitsi/meet/meet.dominio.eso-config.js’ Para habilitar las grabaciones o streaming:
fileRecordingsEnabled: STIMMT,
liveStreamingEnabled: STIMMT,
hiddenDomain: 'recorder.meet.dominio.eso',
Creamos el fichero de configuración de Jibri '/etc/jitsi/jibri/config.json':
{ "recording_directory":"/srv/Aufnahmen", "finalize_recording_script_path": "/Pfad/zu/finalize_recording.sh", "xmpp_environments": [ { "Name": "PROD-Umgebung", "xmpp_server_hosts": [ "meet.dominio.eso" ], "xmpp_domain": "meet.dominio.eso", "control_login": { // Die Domain, die für die Anmeldung verwendet werden soll "Domäne": "auth.meet.dominio.eso", // Die Zugangsdaten für die Anmeldung "Nutzername": "Jibri", "Passwort": "PASSWORT" }, "control_muc": { "Domäne": "intern.auth.meet.domain.eso", "room_name": "JibriBrauerei", "Spitzname": "Jibri-Spitzname" }, "call_login": { "Domäne": "rekorder.meet.domain.eso", "Nutzername": "Blockflöte", "Passwort": "PASSWORT" }, "room_jid_domain_string_to_strip_from_start": "Konferenz.", "usage_timeout": "0" } ] }
Wir erstellen das Verzeichnis, in dem wir die Aufnahmen hinterlassen werden, und geben uns selbst Berechtigungen, Wir könnten sie auch in der Cloud oder in einer Freigabe speichern, die wir auf dem Computer mounten:
mkdir /srv/recordings chown jibri:jitsi /srv/aufnahmen
Wir starten Jitsi neu:
Service Jibri Neustart
Und das ist es! Wir können versuchen, ein Meeting abzuhalten und einen Live-Stream zu machen oder eine Aufzeichnung des Meetings zu machen.
Wenn Sie die Aufzeichnung starten, hören alle Teilnehmer eine Meldung, dass die Sitzung aufgezeichnet wird, und Sie können dies auch überprüfen, da wir oben rechts ein Symbol sehen.
Und wir werden in der Lage sein zu bestätigen, dass die Aufnahmen in dem von uns angegebenen Verzeichnis belassen wurden, In diesem Beispiel in '/srv/recordings/'.
Ich hoffe, dass ich wie immer, dass Sie es interessant gefunden haben und danken Sie allen, die diese Likes und Empfehlungen in sozialen Netzwerken geben.