सर्वर बदलें

ज़्यादातर WebRTC ऐप्लिकेशन के काम करने के लिए, एक सर्वर की ज़रूरत होती है, ताकि एक-दूसरे के बीच ट्रैफ़िक को रिले किया जा सके. ऐसा इसलिए होता है, क्योंकि क्लाइंट के बीच सीधे सोकेट का इस्तेमाल अक्सर तब तक नहीं किया जा सकता, जब तक वे एक ही लोकल नेटवर्क पर मौजूद न हों. आम तौर पर, इस समस्या को हल करने के लिए TURN सर्वर का इस्तेमाल किया जाता है. इसका मतलब है, एनएटी के आस-पास रिले का इस्तेमाल करके ट्रैवर्सल. यह नेटवर्क ट्रैफ़िक को रिले करने के लिए इस्तेमाल किया जाने वाला प्रोटोकॉल है.

फ़िलहाल, ऑनलाइन TURN सर्वर के कई विकल्प उपलब्ध हैं. ये विकल्प, खुद होस्ट किए जाने वाले ऐप्लिकेशन (जैसे, ओपन-सोर्स COTURN प्रोजेक्ट) और क्लाउड की सेवाओं, दोनों के तौर पर उपलब्ध हैं.

ऑनलाइन उपलब्ध TURN सर्वर का इस्तेमाल करने के लिए, आपको अपने क्लाइंट ऐप्लिकेशन के लिए सही RTCConfiguration की ज़रूरत होती है. यहां दिए गए कोड स्निपेट में, RTCPeerConnection के लिए कॉन्फ़िगरेशन का एक सैंपल दिखाया गया है. इसमें, TURN सर्वर का होस्टनेम my-turn-server.mycompany.com है और वह पोर्ट 19403 पर चल रहा है. कॉन्फ़िगरेशन ऑब्जेक्ट, सर्वर के ऐक्सेस को सुरक्षित करने के लिए username और credential प्रॉपर्टी के साथ भी काम करता है. TURN सर्वर से कनेक्ट करने के लिए, इनकी ज़रूरत होती है.

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

const peerConnection = new RTCPeerConnection(iceConfiguration);