इस पेज पर, Google Meet की लाइव स्ट्रीमिंग के लिए, Google Meet के Enterprise कॉन्टेंट डिलीवरी नेटवर्क (eCDN) के ऑन-प्रिमाइसेस एपीआई का इस्तेमाल करने का तरीका बताया गया है.
यहां बताए गए एपीआई की मदद से, ग्राहक Meet eCDN की सभी सुविधाओं का इस्तेमाल कर सकते हैं. साथ ही, Google के साथ निजी आईपी की जानकारी शेयर करने से बचा जा सकता है. अपने नेटवर्क में, ऑन-प्रिमाइसेस वेब सेवा तय की जा सकती है. यह सेवा, निजी आईपी पते की जानकारी के बजाय आईडी पास करती है.
Meet eCDN की खास जानकारी
eCDN, Meet में पहले से मौजूद होता है. Google Workspace एडमिन के इसे सेट अप करने के बाद, यह लाइव स्ट्रीम के दौरान अपने-आप चालू हो जाता है. Meet eCDN चालू होने पर, लोकल नेटवर्क में लाइव स्ट्रीम देखने वाले लोग, पीयर-टू-पीयर (P2P) शेयरिंग की मदद से, नेटवर्क में मौजूद अन्य लोगों के साथ लाइव स्ट्रीम किया गया मीडिया शेयर कर सकते हैं. ज़्यादातर डिवाइसों को लाइव स्ट्रीम किया गया मीडिया, आस-पास के पीयर से मिलता है. इसलिए, उन्हें Google के सर्वर से मीडिया फ़ेच करने की ज़रूरत नहीं होती. इससे, दर्शकों के इस्तेमाल किए जाने वाले कुल बैंडविड्थ में कमी आती है. Meet eCDN को सेट अप करने और इसका इस्तेमाल करने के बारे में ज़्यादा जानने के लिए, बड़े पैमाने पर लाइव स्ट्रीम होस्ट करना लेख पढ़ें.
eCDN के लिए, Meet की लाइव स्ट्रीमिंग देखने वाले लोगों को पीयरिंग ग्रुप में शामिल करना ज़रूरी है. पीयरिंग ग्रुप, नोड का कलेक्शन होता है. इन नोड को एक-दूसरे के साथ मीडिया शेयर करने की अनुमति होती है. पीयरिंग ग्रुप में शामिल डिवाइसों को पीयर करने की अनुमति दी जा सकती है या उन्हें पीयर करने से रोका जा सकता है. अनुमति वाले डिवाइस, सिर्फ़ एक ही पीयरिंग ग्रुप में मौजूद अन्य डिवाइसों से कनेक्ट हो सकते हैं. पीयरिंग ग्रुप के बारे में ज़्यादा जानने के लिए, बड़े पैमाने पर लाइव स्ट्रीम होस्ट करने से पहले लेख पढ़ें.
एपीआई का इस्तेमाल कब करें
eCDN, पीयरिंग ग्रुप बनाने के लिए, पीयरिंग की अलग-अलग नीतियों का इस्तेमाल कर सकता है. जैसे: random, subnet या custom rules. इनमें से आखिरी नीति, Google के eCDN ट्रैकर सर्वर के साथ निजी नेटवर्क की रेंज वाली टेबल शेयर करती है. इससे, हर पीयर नोड के निजी आईपी पतों को पीयरिंग ग्रुप से मैप किया जा सकता है. custom rules नीति, पसंदीदा समाधान है. यह ज़्यादातर प्रोडक्शन एनवायरमेंट के लिए सही है.
हालांकि, custom rules नीति के लिए, आपको Google के साथ अपने निजी नेटवर्क के स्ट्रक्चर के बड़े हिस्से शेयर करने होंगे. इसके अलावा, eCDN का इस्तेमाल करते समय, हर उपयोगकर्ता Google के साथ अपने स्थानीय तौर पर पता लगाए गए निजी आईपी पते शेयर करता है. कुछ संगठनों के लिए, सुरक्षा से जुड़े उनके दिशा-निर्देशों के तहत, निजी आईपी की जानकारी शेयर करने की अनुमति नहीं होती.
Meet eCDN के ऑन-प्रिमाइसेस एपीआई की मदद से डेवलपमेंट करना
Meet eCDN का ऑन-प्रिमाइसेस एपीआई, वेब सर्वर की ऐसी खास जानकारी देता है जिसे आपके संगठन के नेटवर्क में स्थानीय तौर पर लागू और होस्ट किया जा सकता है. एपीआई के साथ काम करने वाली कस्टम वेब सेवा बनाई जा सकती है. इससे, निजी आईपी की जानकारी पर निर्भर सभी टास्क पूरे किए जा सकते हैं. इससे, Google के साथ जानकारी शेयर नहीं की जाती.
एपीआई में, निजी आईपी पतों को मैच करने के लिए दो अहम चरण शामिल हैं . आम तौर पर, इन्हें eCDN ट्रैकर सर्वर मैनेज करता है: निजी आईपी पतों को पीयरिंग ग्रुप से मैप करना और WebRTC सिग्नलिंग के दौरान, सेशन के बारे में जानकारी देने वाले प्रोटोकॉल (एसडीपी) के ऑफ़र-जवाब के डेटा का आदान-प्रदान करना.
वेब सेवा पूरी होने के बाद, आपको configure the
Admin console को कॉन्फ़िगर करना होगा, ताकि On-premises
service पीयरिंग नीति का इस्तेमाल किया जा सके. साथ ही, इसमें अपनी कस्टम वेब सेवा का यूआरएल शामिल करना होगा.
ज़रूरी शर्तें
अगर आपको अपने संगठन के लिए इनमें से किसी भी शर्त को चालू करना है, तो अपने Google Workspace एडमिन से संपर्क करें:
एचटीटीपीएस का इस्तेमाल करने वाला कोई भी वेब सर्वर, इस एपीआई को लागू कर सकता है.
मिले-जुले कॉन्टेंट से जुड़ी गड़बड़ियों से बचने के लिए, एचटीटीपीएस का इस्तेमाल करें.
JSON डेटा स्वीकार करें और उसे वापस भेजें. कॉन्टेंट को एनकोड करने के लिए, अपने ब्राउज़र के साथ काम करने वाले किसी भी तरीके का इस्तेमाल करें.
एंडपॉइंट को
/vnरूट के तहत उपलब्ध कराएं. यहांnएपीआई का चुना गया वर्शन है. उदाहरण के लिए,/v1/get-peering-group.Google Admin console की मदद से, Meet की लाइव स्ट्रीमिंग देखने वाले लोग आपकी वेब सेवा के यूआरएल के बारे में जान सकते हैं. यूआरएल को ग्लोबल तौर पर, हर संगठन की इकाई के लिए या हर ग्रुप के लिए सेट किया जा सकता है. पक्का करें कि दर्शक, सेवा के असाइन किए गए इंस्टेंस से कनेक्ट हो सकें. ज़्यादा जानकारी के लिए, Admin console को कॉन्फ़िगर करना लेख पढ़ें.
आपकी सेवा को दो सेकंड के अंदर जवाब देना चाहिए. ऐसा न होने पर, eCDN क्लाइंट बंद हो जाता है और दर्शक, लाइव इवेंट को सामान्य उपयोगकर्ता के तौर पर देखते हैं. इससे उन्हें बैंडविड्थ की बचत नहीं होती.
आपकी सेवा को, क्रॉस-ऑरिजिन रिसॉर्स शेयरिंग (सीओआरएस) के ये हेडर सेट करने होंगे:
Access-Control-Allow-Origin: meet.google.comAccess-Control-Allow-Headers: GET, POST, OPTIONSAccess-Control-Allow-Credentials: true
निजी आईपी पतों को पीयरिंग ग्रुप से मैप करना
eCDN क्लाइंट, eCDN ट्रैकर सर्वर से फिर से कनेक्ट होने की कोशिश करते समय, हर बार कॉल करता है. किसी डिवाइस के निजी आईपी पते का पता लगाने के बाद, पते को सही पीयरिंग ग्रुप से मैप करना ज़रूरी है. आपको अपने नेटवर्क में मौजूद किसी सर्वर पर निजी आईपी पता भेजना होगा. साथ ही, get-peering-group() तरीके का इस्तेमाल करके, इसे मैन्युअल तरीके से पीयरिंग ग्रुप से जोड़ना होगा. जवाब में, पीयरिंग ग्रुप का आईडी मिलता है.
Google के साथ कम्यूनिकेट करते समय, निजी आईपी पतों के बजाय, पीयरिंग ग्रुप का आईडी पास किया जाता है.
यहां दिए गए कोड सैंपल में, get-peering-group() तरीके को कॉल करने का तरीका बताया गया है. इसमें, गड़बड़ी का संभावित जवाब और जवाब का अनुमानित मुख्य हिस्सा भी शामिल है:
POST /v1/get-peering-group
Content-Type: application/json
Request body:
{
"availableIPs": []{
"format": "ipv4"|"ipv6",
"address": "DETECTED_ADDRESS"
}
}
Error response:
{
"result": null,
"error": "ERROR_MESSAGE"
}
Response body:
{
"allowed": boolean,
"result": string,
"error": null
}
यहां दी गई टेबल में, जवाब के अनुमानित फ़ॉर्मैट दिखाए गए हैं:
| एचटीटीपी कोड स्थिति | गड़बड़ी | अनुमति है | नतीजा | क्लाइंट की प्रतिक्रिया |
|---|---|---|---|---|
| 200 | शून्य | सही | स्ट्रिंग खाली नहीं है | क्लाइंट को तय किए गए पीयरिंग ग्रुप में शामिल किया जाता है. इसके बाद, यह eCDN ट्रैकर सर्वर से कनेक्ट होता है. |
| 200 | शून्य | गलत | स्ट्रिंग खाली नहीं है | क्लाइंट को तय किए गए पीयरिंग ग्रुप से ब्लॉक किया जाता है. यह Meet की क्वालिटी टूल (एमक्यूटी) में दिखेगा. साथ ही, eCDN सेशन खत्म हो जाएगा. |
| 200 | शून्य | स्ट्रिंग खाली है | क्लाइंट का eCDN सेशन खत्म हो जाता है. | |
| 200 | स्ट्रिंग खाली नहीं है | क्लाइंट का eCDN सेशन खत्म हो जाता है. | ||
| 302 (मिले) | क्लाइंट, जवाब के मुख्य हिस्से के Location हेडर में तय किए गए नए यूआरएल पर रीडायरेक्ट होता है. |
|||
| कोई अन्य स्टेटस कोड | क्लाइंट का eCDN सेशन खत्म हो जाता है. |
जवाब का लेगसी फ़ॉर्मैट
allowed फ़ील्ड, पहले के वर्शन के जवाब के फ़ॉर्मैट का हिस्सा नहीं था. इसके बजाय, result के लिए रिज़र्व की गई खास वैल्यू से यह तय होता था कि दर्शक के आईपी पते को पीयर करने से ब्लॉक किया जाएगा या नहीं:
Legacy response body:
{
"result": string,
"error": null,
}
यहां दी गई टेबल में, जवाब के अनुमानित फ़ॉर्मैट दिखाए गए हैं. इनमें, जवाब के मैसेज में allowed फ़ील्ड सेट नहीं किया गया है:
| एचटीटीपी कोड स्थिति | गड़बड़ी | नतीजा | क्लाइंट की प्रतिक्रिया |
|---|---|---|---|
| 200 | शून्य | स्ट्रिंग खाली नहीं है | क्लाइंट को पीयरिंग ग्रुप में शामिल किया जाना चाहिए. इसके बाद, यह eCDN ट्रैकर सर्वर से कनेक्ट होता है. |
| 200 | शून्य | NOT_FOUND |
क्लाइंट का eCDN सेशन खत्म हो जाता है. |
| 200 | शून्य | BLOCKED |
क्लाइंट का eCDN सेशन खत्म हो जाता है. |
| 200 | स्ट्रिंग खाली नहीं है | क्लाइंट का eCDN सेशन खत्म हो जाता है. | |
| 302 (मिले) | क्लाइंट, जवाब के मुख्य हिस्से के Location हेडर में तय किए गए नए यूआरएल पर रीडायरेक्ट होता है. |
||
| कोई अन्य स्टेटस कोड | क्लाइंट का eCDN सेशन खत्म हो जाता है. |
एसडीपी ऑफ़र-जवाब के डेटा का आदान-प्रदान
WebRTC कनेक्शन शुरू करने के लिए, डिवाइसों को अपने एसडीपी ऑफ़र और जवाबों का आदान-प्रदान करना होगा. इनमें, इंटरैक्टिव कनेक्टिविटी एस्टैब्लिशमेंट (आईसीई) कैंडिडेट भी शामिल हैं. इनमें निजी आईपी की जानकारी होती है. ये डिवाइस, WebRTC सिग्नलिंग प्रोसेस के तहत ऐसा करते हैं.
क्लाइंट को अपने नेटवर्क में, Meet eCDN के ऑन-प्रिमाइसेस एपीआई की मदद से, आईसीई कैंडिडेट को एन्क्रिप्ट करना होगा. इसके लिए, encrypt-sdp() तरीके का इस्तेमाल करें. इस तरीके में ऐसी कुंजी का इस्तेमाल किया जाता है जो Google के साथ कभी शेयर नहीं की जाती. इसके बाद, एन्क्रिप्ट किए गए एसडीपी ऑफ़र को eCDN ट्रैकर सर्वर की मदद से पीयर को भेजा जाता है. क्लाइंट पीयर, अपने नेटवर्क में मिले डेटा को decrypt-sdp() तरीके का इस्तेमाल करके डिक्रिप्ट करता है. इसके बाद, Google कनेक्ट किए गए पीयर के बीच ऑफ़र और जवाब फ़ॉरवर्ड करता है.
Meet eCDN के ऑन-प्रिमाइसेस एपीआई का इस्तेमाल करके कनेक्शन एस्टैब्लिश होने के बाद, eCDN सामान्य तरीके से काम करता है. पीयर, सामान्य पीयरिंग नेटवर्क के ज़रिए मीडिया को रूट करते हैं. साथ ही, मीडिया ट्रैफ़िक, एपीआई के ज़रिए पास नहीं होता या इसका इस्तेमाल नहीं करता.
यहां दिए गए कोड सैंपल में, encrypt-sdp() तरीके को कॉल करने का तरीका बताया गया है. इसमें, गड़बड़ी का संभावित जवाब और जवाब का अनुमानित मुख्य हिस्सा भी शामिल है:
POST /v1/encrypt-sdp
Content-Type: application/json
Request body:
{
"data": "SDP_DATA"
},
Error response:
{
"result": null,
"error": "ERROR_MESSAGE"
}
Response body:
{
"result": "ENCRYPTED_DATA_STRING",
"error": null
}
यहां दिए गए कोड सैंपल में, decrypt-sdp() तरीके को कॉल करने का तरीका बताया गया है. इसमें, गड़बड़ी का संभावित जवाब और जवाब का अनुमानित मुख्य हिस्सा भी शामिल है:
POST /v1/decrypt-sdp
Content-Type: application/json
Request body:
{
"data": "ENCRYPTED_DATA_STRING"
},
Error response:
{
"result": null,
"error": "ERROR_MESSAGE"
}
Response body:
{
"result": "SDP_DATA",
"error": null
}
यहां दी गई टेबल में, जवाब के अनुमानित फ़ॉर्मैट दिखाए गए हैं:
| एचटीटीपी कोड स्थिति | गड़बड़ी | पीयरिंग ग्रुप आईडी | क्लाइंट की प्रतिक्रिया |
|---|---|---|---|
| 200 | शून्य | स्ट्रिंग खाली नहीं है | क्लाइंट को उम्मीद है कि सही तरीके से एनकोड या डिकोड किए गए एसडीपी डेटा का इस्तेमाल किया जाएगा. |
| 200 | कोई भी स्ट्रिंग जो खाली न हो | शून्य | क्लाइंट का eCDN सेशन खत्म हो जाता है. |
| 302 (मिले) | क्लाइंट, जवाब के मुख्य हिस्से के Location हेडर में तय किए गए नए यूआरएल पर रीडायरेक्ट होता है. |
||
| कोई अन्य स्टेटस कोड | कोई भी मान | कोई भी मान | क्लाइंट का eCDN सेशन खत्म हो जाता है. |
Admin console को कॉन्फ़िगर करना
Meet eCDN के ऑन-प्रिमाइसेस एपीआई का इस्तेमाल करने के लिए, आपको Admin console में eCDN को कॉन्फ़िगर करना होगा. इसमें, अपनी कस्टम वेब सेवा का यूआरएल शामिल करें.
eCDN सेट करने के लिए, On-premises service का इस्तेमाल करके पीयरिंग नीति बनाएं. इससे, आईपी की जानकारी को पीयरिंग ग्रुप से मैन्युअल तरीके से मैच किया जा सकेगा. अगर डिफ़ॉल्ट पोर्ट 443 का इस्तेमाल नहीं किया जा रहा है, तो पोर्ट नंबर भी शामिल किया जा सकता है. यूआरएल इस फ़ॉर्मैट में होना चाहिए:
WEB_SERVICE.example.com:8080. यहां WEB_SERVICE, आपकी वेब सेवा का नाम है.
पीयरिंग नीति सेट करने के बारे में ज़्यादा जानने के लिए, नेटवर्क ग्रुपिंग कॉन्फ़िगर करना लेख पढ़ें.
मिलते-जुलते विषय
Meet eCDN का इस्तेमाल करने का तरीका जानने के लिए, बड़े पैमाने पर लाइव स्ट्रीम होस्ट करना लेख में दिया गया तरीका अपनाएं.
eCDN सेट अप करने का तरीका जानने के लिए, बड़े पैमाने पर लाइव स्ट्रीम होस्ट करने से पहले लेख पढ़ें.
अपने नेटवर्क को सेट अप करने का तरीका जानने के लिए, Meet की मीटिंग और लाइव स्ट्रीम के लिए अपना नेटवर्क तैयार करना लेख पढ़ें.
एडमिन के तौर पर Google Admin console में साइन इन करने के लिए, साइन इन करने के लिए अपने Admin console लेख पढ़ें.