So integrieren Sie Spreed Me WebRTC mit NextCloud
Ziel von Spreed ME WebRTC ist es, den Menschen private Text- und Audio-/Video-Chats zurückzugeben. Es ist wie eine kostenlose Open-Source- und selbstgehostete Alternative zu Google Hangouts. In früheren Tutorials haben wir besprochen, wie man Spreed WebRTC mithilfe des Docker-Images installiert. Dieses Tutorial zeigt Ihnen, wie Sie Spreed WebRTC mit NextCloud integrieren.
Um diesem Tutorial folgen zu können, wird davon ausgegangen, dass Sie bereits einen NextCloud-Server mit aktiviertem HTTPS eingerichtet haben und unsere vorherigen Tutorials zur Installation von Spreed WebRTC befolgt haben.
Sobald Sie dieses Tutorial abgeschlossen haben, haben Sie die Möglichkeit:
- Starten Sie über die NextCloud-Installation privaten Text-, Audio-/Video-Chat mit NextCloud-Benutzern oder Nicht-NextCloud-Benutzern.
- Teilen Sie Dateien von NextCloud oder speichern Sie freigegebene Dateien in NextCloud.
- Teilen Sie Ihren Computerbildschirm oder Ihr YouTube-Video.
Also ohne weitere Umschweife, fangen wir an.
Gleicher Ursprung
Um die Screensharing-Funktion nutzen zu können, müssen wir Spreed und NextCloud auf demselben Ursprung laufen lassen. Gleicher Ursprung bedeutet, dass auf Spreed und Nextcloud über dasselbe Protokollschema, denselben Domänennamen und dieselbe Portnummer zugegriffen werden kann.
Wenn also auf Ihre Nextcloud-Installation zugegriffen wird über
https://nextcloud.your-domain.comAnschließend können Sie Spreed WebRTC in einem Unterverzeichnis Ihrer NextCloud-Installation ablegen.
https://nextcloud.your-domain.com/webrtcDamit sie den gleichen Ursprung haben.
BasePath ändern
Um Spreed WebRTC darüber zu informieren, dass über das Unterverzeichnis /webrtc darauf zugegriffen wird, müssen wir die Datei server.conf bearbeiten.
sudo nano /etc/spreed/server.confSuchen Sie die folgende Zeile.
;basePath = /some/sub/path/Ändern Sie es in
basePath = /webrtcSpeichern und schließen Sie die Datei. Starten Sie dann den Spreed WebRTC-Server neu, damit die Änderungen wirksam werden.
Wenn Sie Spreed über das offizielle PPA unter Ubuntu 16.04 installiert haben, starten Sie es neu mit:
sudo systemctl restart spreed-webrtcWenn Sie Spreed mit dem Docker-Image installiert haben, starten Sie den Docker-Container neu mit:
sudo docker restart my-spreed-webrtcReverse-Proxy einrichten
Um Spreed WebRTC in einem Unterverzeichnis der NextCloud-Installation zu platzieren, müssen wir einen Reverse-Proxy einrichten. Wir können entweder Apache oder Nginx verwenden. Sehen wir uns zunächst an, wie man es mit Apache macht.
Apache Reverse Proxy-Konfiguration
Öffnen Sie die https-Version der virtuellen Hostdatei von NextCloud.
sudo nano /etc/apache2/sites-available/nextcloud-ssl.confFügen Sie dann die folgenden Zeilen über ein.
<Location /webrtc>
ProxyPass http://127.0.0.1:8080/webrtc
ProxyPassReverse /webrtc
</Location>
<Location /webrtc/ws>
ProxyPass ws://127.0.0.1:8080/webrtc/ws
</Location>
ProxyVia On
ProxyPreserveHost On
RequestHeader set X-Forwarded-Proto 'https' env=HTTPSSpeichern und schließen Sie die Datei. Führen Sie dann den folgenden Befehl aus, um einige Apache-Module zu aktivieren, damit der Proxy funktioniert.
sudo a2enmod proxy proxy_http proxy_wstunnel headersLaden Sie Apache neu, damit die Änderungen wirksam werden.
sudo systemctl reload apache2Jetzt sollten Sie über das Unterverzeichnis /webrtc Ihrer NextCloud-Installation auf Spreed WebRTC zugreifen können. Wenn Ihr Browser Sie auffordert, auf Ihre Kamera zuzugreifen, klicken Sie auf Zulassen.
Nginx Reverse Proxy-Konfiguration
Öffnen Sie Ihre NextCloud-Serverblockdatei.
sudo nano /etc/nginx/conf.d/nextcloud.confFügen Sie die folgenden Zeilen unter den https server-Kontext ein.
location ^~ /webrtc {
proxy_pass http://127.0.0.1:8080;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_buffering on;
proxy_ignore_client_abort off;
proxy_redirect off;
proxy_connect_timeout 90;
proxy_send_timeout 90;
proxy_read_timeout 90;
proxy_buffer_size 4k;
proxy_buffers 4 32k;
proxy_busy_buffers_size 64k;
proxy_temp_file_write_size 64k;
proxy_next_upstream error timeout invalid_header http_502 http_503 http_504;
}Speichern und schließen Sie die Datei. Testen Sie dann die Nginx-Konfiguration und laden Sie sie neu.
sudo nginx -t
sudo systemctl reload nginxJetzt sollten Sie über das Unterverzeichnis /webrtc Ihrer NextCloud-Installation auf Spreed WebRTC zugreifen können. Wenn Ihr Browser Sie auffordert, auf Ihre Kamera zuzugreifen, klicken Sie auf Zulassen.
Installation der Spreed ME NextCloud-App
Gehen Sie zum NextCloud App Store.
Klicken Sie dann links auf die Registerkarte Tools. Suchen Sie die Spreed.ME-App. Klicken Sie auf die Schaltfläche Aktivieren.
Gehen Sie als Nächstes zur Nextcloud-Administratorseite, klicken Sie auf Zusätzliche Einstellungen und scrollen Sie nach unten zum Ende der Seite. Sobald Sie den Abschnitt Spreed.ME sehen, klicken Sie auf die Schaltfläche Spreed WebRTC-Konfiguration generieren.
Kopieren Sie nun die von der Spreed.ME-App generierte Spreed WebRTC-Konfiguration und vergessen Sie nicht, auf Einstellungen speichern zu klicken.
Benennen Sie dann /etc/spreed/server.conf in /etc/spreed/server.conf.bak um.
sudo mv /etc/spreed/server.conf /etc/spreed/server.conf.bakErstellen Sie eine neue server.conf-Datei.
sudo nano /etc/spreed/server.confUnd fügen Sie die Spreed WebRTC-Konfiguration in die Datei ein. Speichern und schließen Sie die Datei. Starten Sie den Spreed WebRTC-Server neu.
sudo systemctl restart spreed-webrtcWenn Sie Spreed WebRTC mit dem Docker-Image ausführen, müssen Sie zunächst die Zeile listen=127.0.0.1:8080 in server.conf auskommentieren, indem Sie ein Semikolon hinzufügen.
; listen = 127.0.0.1:8080Anschließend sollten Sie den vorhandenen Spreed WebRTC-Container stoppen und entfernen.
sudo docker stop my-spreed-webrtc
sudo docker rm my-spreed-webrtcAls nächstes müssen Sie einen neuen Spreed WebRTC-Container starten und auch /var/www/nextcloud/apps/spreedme/extra/ in den Container einhängen. Ersetzen Sie /var/www/nextcloud durch Ihren eigenen NextCloud-Webroot-Pfad.
sudo docker run -d --name my-spreed-webrtc -p 8080:8080 -p 8443:8443 -v /etc/spreed:/etc/spreed -v /var/log/spreed:/var/log/spreed -v /var/www/nextcloud/apps/spreedme/extra:/var/www/nextcloud/apps/spreedme/extra -i -t spreed/webrtc -c /etc/spreed/server.confZugriff auf Spreed ME über NextCloud
Sobald die oben genannten Schritte erledigt sind, rufen Sie die Speed.ME-App über die NextCloud-Weboberfläche auf.
Und jetzt können Sie direkt über die NextCloud-Installation auf den Spreed ME-Chatroom zugreifen.
Um Nicht-Nextcloud-Benutzer zum Beitritt zum Raumchat einzuladen, müssen Sie zunächst das temporäre Passwort aktivieren, indem Sie zur Nextcloud-Administratorseite > Zusätzliche Einstellungen > Spree.ME > Erweitert gehen Einstellungen. Überprüfen Sie dann OWNCLOUD_TEMPORARY_PASSWORD_LOGIN_ENABLED. Speichern Sie Ihre Einstellungen.
Nun erscheint neben dem Spreed.ME-Chatroom ein Schlüsselsymbol, mit dem Sie ein temporäres Passwort generieren können.
Hinweis: Mit NextCloud 11 wurde eine weitere App namens Spreed Video Calls eingeführt, mit der Nextcloud-Benutzer Videoanrufe tätigen können. Dies unterscheidet sich von der Spreed ME-App.
Das ist es!
Ich hoffe, dieses Tutorial hat Ihnen bei der Integration von Spreed ME WebRTC mit NextCloud geholfen. Wie immer gilt: Wenn Sie diesen Beitrag nützlich fanden, abonnieren Sie unseren kostenlosen Newsletter. Sie können uns auch auf Google+, Twitter oder unserer Facebook-Seite folgen.








