इस गाइड में, वीडियो प्लेयर ऐप्लिकेशन में IMA डीएआई एसडीके को इंटिग्रेट करने का तरीका बताया गया है. अगर आपको इंटिग्रेशन का पूरा सैंपल देखना है या उसे फ़ॉलो करना है, तो GitHub से आसान उदाहरण डाउनलोड करें.
आईएमए डीएआई के बारे में खास जानकारी
आईएमए डीएआई एसडीके को लागू करने के लिए, दो मुख्य कॉम्पोनेंट की ज़रूरत होती है. इनके बारे में इस गाइड में बताया गया है:
StreamRequest—VODStreamRequestयाLiveStreamRequest: यह एक ऐसा ऑब्जेक्ट है जो स्ट्रीम के अनुरोध के बारे में बताता है. स्ट्रीम के अनुरोध, मांग पर वीडियो या लाइव स्ट्रीम के लिए हो सकते हैं. लाइव स्ट्रीम के अनुरोधों में ऐसेट कुंजी की जानकारी दी जाती है. वहीं, वीओडी के अनुरोधों में कॉन्टेंट मैनेजमेंट सिस्टम आईडी और वीडियो आईडी की जानकारी दी जाती है. दोनों तरह के अनुरोधों में, एपीआई पासकोड को शामिल किया जा सकता है. इसकी ज़रूरत, चुनिंदा स्ट्रीम को ऐक्सेस करने के लिए होती है. साथ ही, इनमें Google Ad Manager नेटवर्क कोड को भी शामिल किया जा सकता है. इसकी ज़रूरत, IMA SDK को होती है, ताकि वह Google Ad Manager की सेटिंग में बताए गए विज्ञापन आइडेंटिफ़ायर को मैनेज कर सके.StreamManager: यह एक ऐसा ऑब्जेक्ट है जो डाइनैमिक ऐड इंसर्शन स्ट्रीम और डीएआई बैकएंड के साथ इंटरैक्शन को मैनेज करता है. स्ट्रीम मैनेजर, ट्रैकिंग पिंग को भी मैनेज करता है. साथ ही, स्ट्रीम और विज्ञापन इवेंट को पब्लिशर को फ़ॉरवर्ड करता है.
ज़रूरी शर्तें
- तीन खाली फ़ाइलें
- dai.html
- dai.css
- dai.js
- आपके कंप्यूटर पर Python इंस्टॉल होना चाहिए या टेस्टिंग के लिए वेब सर्वर होना चाहिए
डेवलपमेंट सर्वर शुरू करना
आईएमए डीएआई एसडीके, डिपेंडेंसी को लोड करने के लिए उसी प्रोटोकॉल का इस्तेमाल करता है जिसका इस्तेमाल वह पेज करता है जिससे इसे लोड किया गया है. इसलिए, आपको अपने ऐप्लिकेशन की जांच करने के लिए, वेब सर्वर का इस्तेमाल करना होगा. लोकल डेवलपमेंट सर्वर को शुरू करने का सबसे आसान तरीका, Python के पहले से मौजूद सर्वर का इस्तेमाल करना है.
कमांड लाइन का इस्तेमाल करके, उस डायरेक्ट्री से जिसमें आपकी
index.htmlफ़ाइल मौजूद है, यह कमांड चलाएं:python -m http.server 8000किसी वेब ब्राउज़र में,
http://localhost:8000/पर जाएंइसके अलावा, किसी दूसरे वेब सर्वर का भी इस्तेमाल किया जा सकता है. जैसे, Apache HTTP Server.
वीडियो प्लेयर बनाना
सबसे पहले, dai.html में बदलाव करके, एचटीएमएल5 वीडियो एलिमेंट और क्लिकथ्रू के लिए इस्तेमाल किया जाने वाला div बनाएं. यहां दिए गए उदाहरण में, आईएमए डीएआई एसडीके को इंपोर्ट किया गया है. ज़्यादा जानकारी के लिए, आईएमए डीएआई एसडीके इंपोर्ट करना लेख पढ़ें.
साथ ही, dai.css और dai.js फ़ाइलों को लोड करने के लिए ज़रूरी टैग जोड़ें. इसके अलावा, hls.js वीडियो प्लेयर को इंपोर्ट करने के लिए भी ज़रूरी टैग जोड़ें. इसके बाद, पेज के एलिमेंट का साइज़ और पोज़िशन तय करने के लिए, dai.css में बदलाव करें.
आखिर में, dai.js में, स्ट्रीम के अनुरोध की जानकारी को सेव करने के लिए वैरिएबल तय करें. साथ ही, पेज लोड होने पर चलने वाला initPlayer() फ़ंक्शन तय करें. इसके बाद, क्लिक करने पर स्ट्रीम का अनुरोध करने के लिए, 'चलाएं' बटन सेट अप करें.
वीडियो रुकने पर दिखने वाले विज्ञापन के लिए ब्रेक के दौरान प्लेबैक फिर से शुरू करने के लिए, वीडियो एलिमेंट के pause और start इवेंट के लिए इवेंट लिसनर सेट अप करें. इससे प्लेयर कंट्रोल को दिखाया और छिपाया जा सकेगा.
आईएमए डीएआई एसडीके लोड करना
इसके बाद, dai.html में स्क्रिप्ट टैग का इस्तेमाल करके, आईएमए फ़्रेमवर्क जोड़ें. इसे dai.js के टैग से पहले जोड़ें.
StreamManager को शुरू करना
विज्ञापनों के सेट का अनुरोध करने के लिए, ima.dai.api.StreamManager बनाएं. यह डीएआई स्ट्रीम का अनुरोध करने और उन्हें मैनेज करने के लिए ज़िम्मेदार होता है. कंस्ट्रक्टर, विज्ञापन पर होने वाले क्लिक को मैनेज करने के लिए, वीडियो एलिमेंट और विज्ञापन के यूज़र इंटरफ़ेस (यूआई) एलिमेंट का इस्तेमाल करता है.
स्ट्रीम का अनुरोध करना
स्ट्रीम का अनुरोध करने के लिए फ़ंक्शन तय करें. इस उदाहरण में, वीओडी और लाइव स्ट्रीम, दोनों के लिए फ़ंक्शन शामिल हैं. ये फ़ंक्शन, VODStreamRequest क्लास और LiveStreamRequest क्लास के इंस्टेंस बनाते हैं. streamRequest इंस्टेंस मिलने के बाद, स्ट्रीम अनुरोध इंस्टेंस के साथ streamManager.requestStream() वाले तरीके को कॉल करें.
स्ट्रीम के अनुरोध के दोनों तरीकों में, एपीआई पासकोड का इस्तेमाल करना ज़रूरी नहीं है. अगर सुरक्षित स्ट्रीम का इस्तेमाल किया जा रहा है, तो आपको डीएआई की पुष्टि करने वाली कुंजी बनानी होगी. ज़्यादा जानकारी के लिए, डीएआई वीडियो स्ट्रीम के अनुरोधों की पुष्टि करना लेख पढ़ें.
इस उदाहरण में, किसी भी स्ट्रीम को डीएआई की पुष्टि करने वाली कुंजी का इस्तेमाल करके सुरक्षित नहीं किया गया है. इसलिए, apiKey का इस्तेमाल नहीं किया गया है.
स्ट्रीम मेटाडेटा को पार्स करना
आपको टाइम किए गए मेटाडेटा इवेंट को सुनने के लिए एक हैंडलर भी जोड़ना होगा. साथ ही, इवेंट को StreamManager क्लास में फ़ॉरवर्ड करना होगा, ताकि आईएमए, विज्ञापन के लिए ब्रेक के दौरान विज्ञापन इवेंट दिखा सके:
इस गाइड में, स्ट्रीम प्लेबैक के लिए hls.js प्लेयर का इस्तेमाल किया गया है. हालांकि, मेटाडेटा को लागू करने का तरीका, आपके इस्तेमाल किए जा रहे प्लेयर के टाइप पर निर्भर करता है.
स्ट्रीम इवेंट मैनेज करना
वीडियो के मुख्य इवेंट के लिए, इवेंट लिसनर लागू करें. इस उदाहरण में, onStreamEvent() फ़ंक्शन को कॉल करके, LOADED, ERROR, AD_BREAK_STARTED, और AD_BREAK_ENDED इवेंट को मैनेज किया गया है. यह फ़ंक्शन, स्ट्रीम लोड होने, स्ट्रीम से जुड़ी गड़बड़ियों, और विज्ञापन चलने के दौरान प्लेयर कंट्रोल बंद करने की सुविधा को मैनेज करता है. IMA SDK के लिए, यह ज़रूरी है.
स्ट्रीम लोड होने पर, वीडियो प्लेयर loadUrl() फ़ंक्शन का इस्तेमाल करके, दिए गए यूआरएल को लोड करता है और चलाता है.
हो गया! अब आईएमए डीएआई एसडीके की मदद से, विज्ञापनों का अनुरोध किया जा रहा है और उन्हें दिखाया जा रहा है. SDK टूल की अन्य ऐडवांस सुविधाओं के बारे में जानने के लिए, अन्य गाइड या GitHub पर मौजूद सैंपल देखें.