Expand description
Peer websocket forwarding.
When a client connects to /call (or /call/sip, /call/webrtc) with a
session id that is not hosted on this node, the node polls every configured
peer (crate::config::Config::peers) and tunnels the websocket to the
first peer that accepts the call. Forwarding requests carry forward=1 and
a visited list so that a peer never silently creates a new call for a
find-phase request and so that A→B→A loops cannot occur.
Functions§
- try_
forward - Attempt to forward a websocket to the first peer that hosts
session_id. - tunnel
- Bidirectionally relay frames between the client websocket and the peer websocket until either side closes.