In dieser Anleitung zeige ich euch, wie ihr eure Jitsi Meet Docker Instanz einfach anpassen könnt.

Update

02.05.2021 Leichte Anpassungen. Funktioniert nun mit der aktuellen Version stable-5765-1.
16.02.2021 Fehler bei Logoanpassung behoben. Neue Funktionen hinzugefügt.
15.02.2021 Angepasst an Version: stable-5390-3
03.01.2021 Erstellung dieser Anleitung

Alle Anpassungen bei Jitsi sind leider nicht dauerhaft. Dies bedeutet, dass ihr beim Start des Containers immer wieder die Anpassungen vornehmen müsst. Daher habe ich mir ein Skript geschrieben. Dies zeige ich euch später in diesem Artikel.

Zuerst zeige ich euch hier das Ergebnis meiner Anpassungen. So könnte es später bei euch aussehen.

Diese Anleitung funktioniert nur 1:1, wenn ihr meine Jitsi Anleitung genutzt habt.

1. Jitsi Logo anpassen

Ihr könnt sehr einfach das Logo anpassen. Dazu müsst ihr lediglich die docker-compose Datei anpassen.

nano /opt/containers/jitsi/docker-compose.yml

Hier fügt ihr folgendes hinzu:

- ./anpassungen/watermark.png:/usr/share/jitsi-meet/images/watermark.png

So sollte es aussehen:

    web:
        image: jitsi/web:latest
        restart: ${RESTART_POLICY}
...
        volumes:
            - ${CONFIG}/web:/config:Z
            - ${CONFIG}/transcripts:/usr/share/jitsi-meet/transcripts:Z
            - ./anpassungen/watermark.png:/usr/share/jitsi-meet/images/watermark.png

Nun müssen wir noch das Verzeichnis „anpassungen“ anlegen und mit einer Datei befüllen.

mkdir -p /opt/containers/jitsi/anpassungen

Datei downloaden und umbenennen. Ich lade hier als Beispiel eine Grafik von Wikipedia

cd /opt/containers/jitsi/anpassungen
wget https://upload.wikimedia.org/wikipedia/commons/thumb/5/52/Free_logo.svg/200px-Free_logo.svg.png
mv 200px-Free_logo.svg.png watermark.png

Bei Version stable-5390-3 müsst ihr noch folgende 2 Zeilen Code ausführen. Innerhalb der einzelnen Versionen wurde nämlich die zu erwartende Datei von der Endung „png“ auf „svg“ geändert.

sed -i "s#DEFAULT_LOGO_URL: 'images/watermark.svg',#DEFAULT_LOGO_URL: 'images/watermark.png',#" ~/.jitsi-meet-cfg/web/interface_config.js
sed -i "s#DEFAULT_WELCOME_PAGE_LOGO_URL: 'images/watermark.svg',#DEFAULT_WELCOME_PAGE_LOGO_URL: 'images/watermark.png',#" ~/.jitsi-meet-cfg/web/interface_config.js

Nachdem ihr nun den Container neu gestartet habt wird euer Logo angezeigt.

Bitte achtet hier auf eure Version

2. Anpassungen per Konfigurationsdatei (Version stable-5142-4)

Nun kommen wir zu Anpassungen, welche ihr per Skript erledigen könnt.

Diese Anpassungen habe ich vorgenommen:

  • Disable Watermark: Deaktiviert das Wasserzeichen in den Video Konferenzen (NICHT auf der Startseite)
  • Remove Blur menu entry: Entfernt die Einstellung mit dem „Blur“ Hintergrund
  • Disable measuring audio levels: Diese Funktion kontrolliert durchgehend das Audio Signal. Aktivieren spart CPU Performance, kann sich aber negativ auswirken. Jeder sollte hier ein Headset tragen.
  • Disable generated room names: Hier werden auf der Startseite diese zufälligen Raumvorschläge deaktiviert
  • Automatische Spracherkennung: Hier wird automatisch die Sprache des Benutzerinterfaces festgelegt
  • Sprache festlegen: Hier wird die Sprache per Konfiguration festgelegt
  • Login Namen erzwingen: Durch diese Einstellung wird zu Beginn jeder Konferenz der Benutzer aufgefordert einen Namen einzugeben
  • PreJoin Page: Hier kann der Benutzer einen Namen eingeben sowie sein Lautsprecher / Kamera an/abschalten.
  • Enable Layer Suspension: Optimierung um Bandbreite und CPU Last zu sparen
  • Disable third party requests: Deaktiviert Verbindungen zu Gravatar.com
  • Rename Local Display Name: Nennt sich selbst von „me“ zu „Ich“ um
  • Deutschen Titel ändern: Hier kann man den Titel der deutschen Startseite ändern
  • Deutschen Text ändern: Hier kann man den Infotext der deutschen Startseite ändern
  • Logo URL anpassen: Hier kann man die URL des Logos oben Links anpassen
  • Links zum Impressum aktivieren

Einige der Optionen habe ich mit „#“ auskommentiert. Wenn ihr diese aktivieren wollt müsst ihr lediglich das „#“ entfernen.

Zuerst erstellen wir uns ein neues Skript:

nano /opt/containers/jitsi/jitsi-start.sh

Inhalt:

#!/bin/bash

# Jitsi starten
docker-compose -f /opt/containers/jitsi/docker-compose.yml up -d

# Kurz warten, bis der Container gestartet ist
sleep 10

# Disable Watermark
sed -i 's/SHOW_JITSI_WATERMARK: true/SHOW_JITSI_WATERMARK: false/' ~/.jitsi-meet-cfg/web/interface_config.js
sed -i 's/SHOW_WATERMARK_FOR_GUESTS: true/SHOW_WATERMARK_FOR_GUESTS: false/' ~/.jitsi-meet-cfg/web/interface_config.js

# Remove blur menu entry
sed -i "s#'videobackgroundblur', ##" ~/.jitsi-meet-cfg/web/interface_config.js

# Disable generated room names
sed -i "s#GENERATE_ROOMNAMES_ON_WELCOME_PAGE: true,#GENERATE_ROOMNAMES_ON_WELCOME_PAGE: false,#" ~/.jitsi-meet-cfg/web/interface_config.js

# Auto Language
#sed -i 's/LANG_DETECTION: false/LANG_DETECTION: true/' ~/.jitsi-meet-cfg/web/interface_config.js

# Sprache festlegen
sed -i "s#// defaultLanguage: 'en'#defaultLanguage: 'de'#" ~/.jitsi-meet-cfg/web/config.js

# Disable measuring audio levels
# https://community.jitsi.org/t/performance-optimization-jitsi-with-separate-videobridges-rather-poor-quality/31699/9
#sed -i "s#// disableAudioLevels: false,#disableAudioLevels: true,#" ~/.jitsi-meet-cfg/web/config.js

# Enable Login Name
#sed -i "s#// requireDisplayName: true,#requireDisplayName: true,#" ~/.jitsi-meet-cfg/web/config.js
#echo "config.requireDisplayName=true;" >> ~/.jitsi-meet-cfg/web/config.js

# PreJoinPage enabled
sed -i "s#// prejoinPageEnabled: false,#prejoinPageEnabled: true,#" ~/.jitsi-meet-cfg/web/config.js
echo "config.prejoinPageEnabled=true;" >> ~/.jitsi-meet-cfg/web/config.js

# Enable Layer Suspension
# https://jitsi.org/blog/new-off-stage-layer-suppression-feature/
sed -i 's#// enableLayerSuspension: false,#enableLayerSuspension: true,#' ~/.jitsi-meet-cfg/web/config.js

# Disable third party requests (gravatar.com)
sed -i "s#// disableThirdPartyRequests: false,#disableThirdPartyRequests: true,#" ~/.jitsi-meet-cfg/web/config.js

# Rename Local Display Name
sed -i "s#DEFAULT_LOCAL_DISPLAY_NAME: 'me',#DEFAULT_LOCAL_DISPLAY_NAME: 'Ich',#" ~/.jitsi-meet-cfg/web/interface_config.js

# Set German Title Line
docker exec jitsi_web_1 sed -i 's/"title": "Sichere, voll funktionale und komplett kostenlose Videokonferenzen"/"title": "Videokonferenzen goNeuland.de"/' /usr/share/jitsi-meet/lang/main-de.json

# Set German Text
docker exec jitsi_web_1 sed -i 's/"appDescription": ".*"/"appDescription": "Viel Spaß hier :)"/' /usr/share/jitsi-meet/lang/main-de.json

# Change Logo URL
sed -i "s#JITSI_WATERMARK_LINK: 'https://jitsi.org',#JITSI_WATERMARK_LINK: 'https://euredomain.de',#" ~/.jitsi-meet-cfg/web/interface_config.js

# Links am unteren Bildschirm aktivieren
# dazu muesst ihr Kapitel 3 der Anleitung noch beachten
sed -i "s#DISPLAY_WELCOME_PAGE_TOOLBAR_ADDITIONAL_CONTENT: false,#DISPLAY_WELCOME_PAGE_TOOLBAR_ADDITIONAL_CONTENT: true,#" ~/.jitsi-meet-cfg/web/interface_config.js

2.1 Links zum Impressum / Statistik hinzufügen

Im unteren Bereich der Webseite habt ihr die Möglichkeit Links zum Impressum oder der Serverstatistik hinzuzufügen. Eine Anleitung zur Serverstatistik mit Grafana habe ich hier erstellt.

Dazu müsst ihr in der Konfiguration

"DISPLAY_WELCOME_PAGE_TOOLBAR_ADDITIONAL_CONTENT: true" 

gesetzt haben.

Nun müsst ihr die docker-compose Datei noch anpassen.

nano /opt/containers/jitsi/docker-compose.yml

Fügt folgende Zeile hinzu:

            - ./anpassungen/welcomePageAdditionalContent.html:/usr/share/jitsi-meet/static/welcomePageAdditionalContent.html

So sollte es aussehen:

    web:
        image: jitsi/web:latest
        restart: ${RESTART_POLICY}
        volumes:
...
            - ${CONFIG}/web:/config:Z
            - ${CONFIG}/transcripts:/usr/share/jitsi-meet/transcripts:Z
            - ./anpassungen/welcomePageAdditionalContent.html:/usr/share/jitsi-meet/static/welcomePageAdditionalContent.html

Nun müsst ihr diese Datei noch erstellen.

mkdir -p /opt/containers/jitsi/anpassungen
nano /opt/containers/jitsi/anpassungen/welcomePageAdditionalContent.html

Inhalt:

<template id = "welcome-page-additional-content-template">
    <div style="text-align: center; font-size: 16px; margin: 20px 0; margin-top: 10px; z-index: 900; position: relative; color: #fff;">
        Eure Firma |
        <a href="https://test.webrtc.org" style="color: #fff; text-decoration: underline;">Browser Test</a> |
        <a href="https://example.com/datenschutz" style="color: #fff; text-decoration: underline;">Datenschutz</a> |
        <a href=" https://example.com/impressum" style="color: #fff; text-decoration: underline;">Impressum</a>
    </div>
</template>

3. Anpassungen per Konfigurationsdatei (Version stable-5390-3 bis stable-5765-1)

Ich habe die aktuelle Version stable-5765-1 (02.05.2021) mit dieser Konfiguration zum laufen bekommen. Es kann sein, dass spätere Versionen auch noch so funktionieren.

Nun kommen wir zu Anpassungen, welche ihr per Skript erledigen könnt.

Diese Anpassungen habe ich vorgenommen:

  • Lobby aktivieren
  • Disable Watermark: Deaktiviert das Wasserzeichen in den Video Konferenzen (NICHT auf der Startseite)
  • Remove Blur menu entry: Entfernt die Einstellung mit dem „Blur“ Hintergrund
  • Disable measuring audio levels: Diese Funktion kontrolliert durchgehend das Audio Signal. Aktivieren spart CPU Performance, kann sich aber negativ auswirken. Jeder sollte hier ein Headset tragen.
  • Disable generated room names: Hier werden auf der Startseite diese zufälligen Raumvorschläge deaktiviert
  • Sprache festlegen: Hier wird die Sprache per Konfiguration festgelegt
  • Login Namen erzwingen: Durch diese Einstellung wird zu Beginn jeder Konferenz der Benutzer aufgefordert einen Namen einzugeben
  • PreJoin Page: Hier kann der Benutzer einen Namen eingeben sowie sein Lautsprecher / Kamera an/abschalten.
  • Enable Layer Suspension: Optimierung um Bandbreite und CPU Last zu sparen
  • Disable third party requests: Deaktiviert Verbindungen zu Gravatar.com
  • Rename Local Display Name: Nennt sich selbst von „me“ zu „Ich“ um
  • Deutschen Titel ändern: Hier kann man den Titel der deutschen Startseite ändern
  • Deutschen Text ändern: Hier kann man den Infotext der deutschen Startseite ändern
  • Logo URL anpassen: Hier kann man die URL des Logos oben Links anpassen
  • Links zum Impressum aktivieren
  • Standard Nutzername umbenennen
  • Entfernt die Werbung für die Apps im unteren Bereich
  • Sprach Erkennung deaktivieren
  • Name in der Browserleiste

Einige der Optionen habe ich mit „#“ auskommentiert. Wenn ihr diese aktivieren wollt müsst ihr lediglich das „#“ entfernen.

Zuerst erstellen wir uns ein neues Skript:

nano /opt/containers/jitsi/jitsi-start.sh

Inhalt:

#!/bin/bash

# Lobby aktivieren
sed -i "s#\#ENABLE_LOBBY=1#ENABLE_LOBBY=1#" .env

# Jitsi starten
docker-compose -f /opt/containers/jitsi/docker-compose.yml up -d

# Kurz warten, bis der Container gestartet ist
sleep 10

# Disable Watermark
sed -i 's/SHOW_JITSI_WATERMARK: true/SHOW_JITSI_WATERMARK: false/' ~/.jitsi-meet-cfg/web/interface_config.js
sed -i 's/SHOW_WATERMARK_FOR_GUESTS: true/SHOW_WATERMARK_FOR_GUESTS: false/' ~/.jitsi-meet-cfg/web/interface_config.js

# Anpassung, damit euer Logo angezeigt wird. Siehe Schritt 1 der Anleitung
sed -i "s#DEFAULT_LOGO_URL: 'images/watermark.svg',#DEFAULT_LOGO_URL: 'images/watermark.png',#" ~/.jitsi-meet-cfg/web/interface_config.js
sed -i "s#DEFAULT_WELCOME_PAGE_LOGO_URL: 'images/watermark.svg',#DEFAULT_WELCOME_PAGE_LOGO_URL: 'images/watermark.png',#" ~/.jitsi-meet-cfg/web/interface_config.js

# Remove blur menu entry
sed -i "s#'videobackgroundblur', ##" ~/.jitsi-meet-cfg/web/interface_config.js

# Disable generated room names
sed -i "s#GENERATE_ROOMNAMES_ON_WELCOME_PAGE: true,#GENERATE_ROOMNAMES_ON_WELCOME_PAGE: false,#" ~/.jitsi-meet-cfg/web/interface_config.js

# Standard Sprache festlegen
sed -i "s#// defaultLanguage: 'en'#defaultLanguage: 'de'#" ~/.jitsi-meet-cfg/web/config.js

# Disable measuring audio levels
# https://community.jitsi.org/t/performance-optimization-jitsi-with-separate-videobridges-rather-poor-quality/31699/9
#sed -i "s#// disableAudioLevels: false,#disableAudioLevels: true,#" ~/.jitsi-meet-cfg/web/config.js

# Enable Login Name
#sed -i "s#// requireDisplayName: true,#requireDisplayName: true,#" ~/.jitsi-meet-cfg/web/config.js
#echo "config.requireDisplayName=true;" >> ~/.jitsi-meet-cfg/web/config.js

# PreJoinPage enabled
sed -i "s#// prejoinPageEnabled: false,#prejoinPageEnabled: true,#" ~/.jitsi-meet-cfg/web/config.js
echo "config.prejoinPageEnabled=true;" >> ~/.jitsi-meet-cfg/web/config.js

# Enable Layer Suspension
# https://jitsi.org/blog/new-off-stage-layer-suppression-feature/
sed -i 's#// enableLayerSuspension: false,#enableLayerSuspension: true,#' ~/.jitsi-meet-cfg/web/config.js

# Disable third party requests (gravatar.com)
sed -i "s#// disableThirdPartyRequests: false,#disableThirdPartyRequests: true,#" ~/.jitsi-meet-cfg/web/config.js

# Rename Local Display Name
sed -i "s#DEFAULT_LOCAL_DISPLAY_NAME: 'me',#DEFAULT_LOCAL_DISPLAY_NAME: 'Ich',#" ~/.jitsi-meet-cfg/web/interface_config.js

# Change Logo URL
sed -i "s#JITSI_WATERMARK_LINK: 'https://jitsi.org',#JITSI_WATERMARK_LINK: 'https://euredomain.de',#" ~/.jitsi-meet-cfg/web/interface_config.js

# Links am unteren Bildschirm aktivieren
# dazu muesst ihr Kapitel 3.1 der Anleitung noch beachten
sed -i "s#DISPLAY_WELCOME_PAGE_CONTENT: false,#DISPLAY_WELCOME_PAGE_CONTENT: true,#" ~/.jitsi-meet-cfg/web/interface_config.js

# Umbenennen von unbekannten Nutzern
sed -i "s#DEFAULT_REMOTE_DISPLAY_NAME: 'Fellow Jitster',#DEFAULT_REMOTE_DISPLAY_NAME: 'Unbekannter Nutzer',#" ~/.jitsi-meet-cfg/web/interface_config.js

# entfernt die Werbung fuer die Apps am unteren Rand
#sed -i "s#DISPLAY_WELCOME_FOOTER: true,#DISPLAY_WELCOME_FOOTER: false,#" ~/.jitsi-meet-cfg/web/interface_config.js

# deaktiviert die Spracherkennung
#sed -i "s#LANG_DETECTION: true,#LANG_DETECTION: false,#" ~/.jitsi-meet-cfg/web/interface_config.js

# anpassen des Namens in der Browserleiste
sed -i "s#APP_NAME: 'Jitsi Meet',#APP_NAME: 'Eure Webseite',#" ~/.jitsi-meet-cfg/web/interface_config.js


### Anpassungen für stable-5390-3 ### 
# Set German Title Line
#docker exec jitsi_web_1 sed -i 's/"title": "Sichere, voll funktionale und komplett kostenlose Videokonferenzen"/"headerTitle": "Videokonferenzen euredomain.de"/' /usr/share/jitsi-meet/lang/main-de.json
# Set German Text
#docker exec jitsi_web_1 sed -i 's/"appDescription": ".*"/"headerSubtitle": "Viel Spaß hier :)"/' /usr/share/jitsi-meet/lang/main-de.json


### Anpassungen für stable-5765-1 ### 
# Set German Title Line
docker exec jitsi_web_1 sed -i 's/"headerTitle": "Jitsi Meet"/"headerTitle": "goNeuland.de Videokonferenzen"/' /usr/share/jitsi-meet/lang/main-de.json
# Set German Text
docker exec jitsi_web_1 sed -i 's/"headerSubtitle": "Sichere und hochqualitative Meetings"/"headerSubtitle": "kostenlose Videokonferenzen für alle"/' /usr/share/jitsi-meet/lang/main-de.json

3.1 Links zum Impressum / Statistik hinzufügen

Im unteren Bereich der Webseite habt ihr die Möglichkeit Links zum Impressum oder der Serverstatistik hinzuzufügen. Eine Anleitung zur Serverstatistik mit Grafana habe ich hier erstellt.

Dazu müsst ihr in der Konfiguration

"DISPLAY_WELCOME_PAGE_CONTENT: true" 

gesetzt haben.

Nun müsst ihr die docker-compose Datei noch anpassen.

nano /opt/containers/jitsi/docker-compose.yml

Fügt folgende Zeile hinzu:

            - ./anpassungen/welcomePageAdditionalContent.html:/usr/share/jitsi-meet/static/welcomePageAdditionalContent.html

So sollte es aussehen:

    web:
        image: jitsi/web:latest
        restart: ${RESTART_POLICY}
        volumes:
...
            - ${CONFIG}/web:/config:Z
            - ${CONFIG}/transcripts:/usr/share/jitsi-meet/transcripts:Z
            - ./anpassungen/welcomePageAdditionalContent.html:/usr/share/jitsi-meet/static/welcomePageAdditionalContent.html

Nun müsst ihr diese Datei noch erstellen.

mkdir -p /opt/containers/jitsi/anpassungen
nano /opt/containers/jitsi/anpassungen/welcomePageAdditionalContent.html

Inhalt:

<template id = "welcome-page-additional-content-template">
    <div style="text-align: center; font-size: 16px; margin: 20px 0; margin-top: 10px; z-index: 900; position: relative; color: #000;">
        Eure Firma |
        <a href="https://test.webrtc.org" style="color: #000; text-decoration: underline;">Browser Test</a> |
        <a href="https://example.com/datenschutz" style="color: #000; text-decoration: underline;">Datenschutz</a> |
        <a href=" https://example.com/impressum" style="color: #000; text-decoration: underline;">Impressum</a>
    </div>
</template>

4. Dateirechte anpassen

Nun müssen wir die eben erstelle Konfigurationsdatei noch ausführbar machen.

chmod +x /opt/containers/jitsi/jitsi-start.sh

5. Jitsi mit geänderter Konfiguration starten

Nun können wir Jitsi endlich starten und uns die Änderungen anschauen.

/opt/containers/jitsi/./jitsi-start.sh

6. Quellen

https://scheible.it/datenschutzfreundliche-konfiguration-jitsi-meet/

https://adminforge.de/linux-allgemein/jitsi-meet-docker-instanz-anpassen/

https://scheible.it/jitsi-meet-ressourcensparend/

Teile diesen Beitrag
Christian

Categories:

3 Kommentare

  1. Zwischenantwort an mich selbst:
    Die Jitsi-web version findet sich durch Anmelden im Container per
    > docker exec -it jitsi_web_1 bash
    und Abfrage der Jitsi-version z.B. per
    > dpkg -l | grep jitsi
    Nutzt hier aber nix, da die Version vom Docker Container gemeint ist, wie sie hier zu finden ist:
    https://github.com/jitsi/docker-jitsi-meet
    Damit lässt sich anhand des Installationsdatums abschätzen, welche Version man wohl laufen hat.
    Eine Abfrage von
    > docker inspect jitsi_web_1
    liefert zwar allerhand Informationen, aber nicht die Version des Containers. Suche weiter.

    • Hallo Christoph,
      ich habe hier mal eine Anleitung geschrieben, wie man Jitsi Updaten kann. Ich habe mir für die aktuelle Version die Datei „CHANGELOG.md“ angeschaut. Eine genaue Version habe ich sonst nämlich auch nirgends gefunden.

      LG
      Christian

Schreibe einen Kommentar

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