meta data for this page
  •  

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
sw:nextcloud:talk:spreed [2020/11/18 20:46]
niziak
sw:nextcloud:talk:spreed [2020/11/19 08:40] (current)
niziak
Line 1: Line 1:
 ====== Spreed standalone signaling server ====== ====== Spreed standalone signaling server ======
 +
 +aka HPB (High Performance Backend) is now available as OpenSource.
 +
  
 It is composed from following services: It is composed from following services:
   * Spreed backend (it is REST api service) which control everything   * Spreed backend (it is REST api service) which control everything
   * NATS (Messaging server)   * NATS (Messaging server)
 +    * can be message broker to connect cluster of signaling servers
   * [[https://​janus.conf.meetecho.com/​|Janus WebRTC server]]   * [[https://​janus.conf.meetecho.com/​|Janus WebRTC server]]
     * [[https://​github.com/​meetecho/​janus-gateway|github]]     * [[https://​github.com/​meetecho/​janus-gateway|github]]
Line 23: Line 27:
   * CoTURN UDP/TCP ports 49152-65535 (range required by RFC)   * CoTURN UDP/TCP ports 49152-65535 (range required by RFC)
   * Janus WebRTC ports 20000-40000 (set by cmd line argument ''​-r 20000-40000''​)   * Janus WebRTC ports 20000-40000 (set by cmd line argument ''​-r 20000-40000''​)
 +
 +
 +===== Verify and debug ======
 +
 +Check if web frontend for signaling server is working:
 +<code bash>
 +curl -k -i https://​signaling.example.com/​standalone-signaling/​api/​v1/​welcome
 +</​code>​
 +
 +During NC Talk call, open WebRTC diagnose page in browser:
 +    * Firefox [[about:​webrtc]]
 +    * Chrome [[chrome://​webrtc-internals]]
 +and check what is **Remote Candidate** column. It should be only external configured IP of signaling server.
 +If TURN or JANUS is incorrectly configured (especially if it is running behind NAT) it can offer some wrong local IPs collected from all interfaces of machine on which is running (it can be some local LAN addresses like 192.168.x.x or Docker virtual interfaces like 172.17.x.x).
  
  
Line 34: Line 52:
          * set [Turn API KEY] (set in ''​server.conf''​ in section ''​[turn]''​ ''​secret=''​          * set [Turn API KEY] (set in ''​server.conf''​ in section ''​[turn]''​ ''​secret=''​
        * **Signaling servers**        * **Signaling servers**
-         * ''​https://​signaling.grinn-global.com/​standalone-signaling/'' ​+         * ''​https://​signaling.example.com/​standalone-signaling/'' ​
          * check ''​Validate SSL certificate''​          * check ''​Validate SSL certificate''​
          * Shared secret: [Nextcloud-Secret-Key] (set in ''​server.conf''​ in section ''​[backend]''​ ''​secret=''​          * Shared secret: [Nextcloud-Secret-Key] (set in ''​server.conf''​ in section ''​[backend]''​ ''​secret=''​