Google is committed to advancing racial equity for Black communities. See how.
Questa pagina è stata tradotta dall'API Cloud Translation.
Switch to English

TURN server

Affinché la maggior parte delle applicazioni WebRTC funzionino, è necessario un server per l'inoltro del traffico tra i peer, poiché spesso non è possibile un socket diretto tra i client (a meno che non risiedano sulla stessa rete locale). Il modo comune per risolvere questo problema è utilizzare un server TURN. Il termine sta per Traversal Using Relay NAT ed è un protocollo per l'inoltro del traffico di rete.

Attualmente ci sono diverse opzioni per i server TURN disponibili online, sia come applicazioni self-hosted (come il progetto open source COTURN) che come servizi forniti dal cloud.

Una volta che hai un server TURN disponibile online, tutto ciò di cui hai bisogno è la corretta RTCConfiguration per l'applicazione client per usarlo. Il seguente frammento di codice illustra una configurazione di esempio per un RTCPeerConnection cui il server TURN ha il nome host my-turn-server.mycompany.com ed è in esecuzione sulla porta 19403 . L'oggetto di configurazione supporta anche il username e credentials proprietà delle credentials per proteggere l'accesso al server. Questi sono necessari quando ci si connette a un server TURN.

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

const peerConnection = new RTCPeerConnection(iceConfiguration);