Ativar o servidor

Para a maioria dos aplicativos WebRTC funcionar, um servidor é necessário para retransmitir o tráfego entre pares, já que geralmente não é possível estabelecer um soquete direto entre as clientes (a menos que eles residam na mesma rede local). A maneira comum de resolver usando um servidor TURN. O termo "traversal using Relays" (travessia usando retransmissão) em torno do NAT e é um protocolo para redirecionar o tráfego de rede.

Atualmente, há várias opções de servidores TURN disponíveis on-line, como aplicativos auto-hospedados (como o projeto de código aberto COTURN) e como recursos ou serviços oferecidos.

Depois de ter um servidor TURN disponível on-line, você só precisa do RTCConfiguration para que seu aplicativo cliente a use. O código a seguir snippet ilustra um exemplo de configuração para uma RTCPeerConnection em que o O servidor TURN tem o nome de host my-turn-server.mycompany.com e está sendo executado em porta 19403. O objeto de configuração também oferece suporte aos métodos username e credential para proteger o acesso ao servidor. São necessária ao se conectar a um servidor TURN.

const iceConfiguration = {
    iceServers: [
        {
            urls: 'turn:my-turn-server.mycompany.com:19403',
            username: 'optional-username',
            credential: 'auth-token'
        }
    ]
}

const peerConnection = new RTCPeerConnection(iceConfiguration);