Serveur TURN

Pour que la plupart des applications WebRTC fonctionnent, un serveur est nécessaire pour relayer entre pairs, étant donné qu'il est souvent impossible d'établir un socket direct entre (sauf s'ils se trouvent sur le même réseau local). La façon courante de résoudre consiste à utiliser un serveur TURN. Le terme "balayage à l'aide de relais" signifie "balayage à l'aide de relais". autour de la NAT et c'est un protocole pour relayer le trafic réseau.

Il existe actuellement plusieurs options pour les serveurs TURN disponibles en ligne, à la fois en tant que des applications auto-hébergées (comme le projet Open Source COTURN) et en tant que les services fournis.

Une fois que vous avez un serveur TURN en ligne, tout ce dont vous avez besoin est RTCConfiguration pour que votre application cliente l'utilise. Le code suivant un extrait de code illustre un exemple de configuration pour une RTCPeerConnection où le Le serveur TURN possède le nom d'hôte my-turn-server.mycompany.com et s'exécute sur port 19403. L'objet de configuration prend également en charge les propriétés username et credential pour sécuriser l'accès au serveur. Il s'agit requise lors de la connexion à un serveur TURN.

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

const peerConnection = new RTCPeerConnection(iceConfiguration);