Einleitung

WebRTC (Web Real-Time Communication) ist ein offener W3C/IETF-Standard, der direkten Audio-, Video- und Datenaustausch zwischen Browsern ermöglicht. Aus Asterisk-Sicht sind zwei Teilaspekte interessant:

  • Signalisierung per SIP über WebSocket (WSS). Das SIP-Protokoll selbst ändert sich nicht — nur der Transport ist ein anderer. PJSIP unterstützt WSS als Transport nativ.

  • Medien per DTLS-SRTP mit ICE. WebRTC-Browser akzeptieren grundsätzlich keine unverschlüsselten Medien. Alles läuft über SRTP mit per DTLS ausgehandelten Schlüsseln. ICE/STUN/TURN helfen beim NAT-Traversal.

Das bedeutet für den Server:

  • Ein TLS-Zertifikat für die HTTP-Schnittstelle (WSS läuft über denselben Port wie HTTPS), idealerweise von Let’s Encrypt oder einer anderen anerkannten CA.

  • Ein TLS-Transport für PJSIP, plus ein WS- bzw. WSS-Transport.

  • SRTP aktiviert und DTLS-Zertifikate hinterlegt.

  • Für entfernte Clients außerhalb des eigenen Netzes: Ein STUN- oder ein TURN-Server (letzterer auch als Media-Relay für Clients, die gar keine direkte UDP-Verbindung aufbauen können).