ads_manager.js में, IMA SDK StreamManager के लिए रैपर क्लास तय करें. यह क्लास, स्ट्रीम के अनुरोध भेजती है, विज्ञापन पॉड का मेनिफ़ेस्ट हासिल करती है, IMA स्ट्रीम इवेंट सुनती है, और emsg इवेंट को IMA SDK पर पास करती है.
IMA HbbTV के सैंपल ऐप्लिकेशन में, ads_manager.js में ये तरीके सेट अप किए जाते हैं:
requestStream()onStreamEvent()onEmsgEvent()loadAdPodManifest()
विज्ञापन मैनेजर को शुरू करना
विज्ञापन मैनेजर क्लास को शुरू करें और IMA स्ट्रीम इवेंट के लिए लिसनर सेट करें. इस कॉल में, VideoPlayer.setEmsgEventHandler() तरीके से, emsg इवेंट हैंडलर सेट करें.
विज्ञापन पॉड स्ट्रीम के लिए अनुरोध करना
AdManager.requestStream() तरीका बनाएं. इससे, Google Ad Manager के नेटवर्क कोड और स्ट्रीम की कस्टम ऐसेट कुंजी का इस्तेमाल करके, PodStreamRequest ऑब्जेक्ट बनाया जा सकता है. IMA के सैंपल DASH पॉड सर्विंग स्ट्रीम का इस्तेमाल करके, अपने HbbTV ऐप्लिकेशन को टेस्ट करें. इसके लिए, स्ट्रीम के ये पैरामीटर इस्तेमाल करें:
- नेटवर्क कोड:
'21775744923' - कस्टम ऐसेट कुंजी:
'hbbtv-dash'
विज्ञापन स्ट्रीम इवेंट सुनना
AdManager.onStreamEvent() तरीका बनाएं. इससे, IMA स्ट्रीम इवेंट, STREAM_INITIALIZED, AD_BREAK_STARTED, और AD_BREAK_ENDED के लिए, आपके ऐप्लिकेशन की प्रतिक्रिया को मैनेज किया जा सकता है.
विज्ञापन स्ट्रीम के मेटाडेटा को मैनेज करना
emsg इवेंट की जानकारी IMA पर पास करने के लिए, StreamManager.processMetadata() तरीके का इस्तेमाल करके, AdManager.onEmsgEvent() तरीका बनाएं. वीडियो प्लेयर क्लास, VideoPlayer.setEmsgEventHandler() तरीके से इस तरीके को कॉल करती है.
विज्ञापन पॉड का मेनिफ़ेस्ट लोड करना
AdManager.loadAdPodManifest() तरीका बनाएं. इससे, वीडियो प्लेयर के साथ विज्ञापन पॉड का मेनिफ़ेस्ट पहले से लोड किया जा सकता है. तरीका: DASH पॉड मेनिफ़ेस्ट में दिए गए
स्ट्रक्चर का इस्तेमाल करके, पुष्टि किया गया मेनिफ़ेस्ट यूआरएल बनाएं.
HbbTV का सैंपल ऐप्लिकेशन, रैंडम तरीके से जनरेट की गई यूनीक adBreakId वैल्यू का इस्तेमाल करता है. प्रॉडक्शन ऐप्लिकेशन में, adBreakId वैल्यू एक अल्फ़ान्यूमेरिक स्ट्रिंग होती है. उदाहरण के लिए, ab-001. हर विज्ञापन ब्रेक के लिए, यह वैल्यू एक से बढ़ जाती है. इस बात की पुष्टि करें कि adBreakId वैल्यू, विज्ञापन ब्रेक देखने वाले सभी लोगों के लिए एक ही हो. adBreakId वैल्यू पाने के लिए, हमारा सुझाव है कि DAI Ad Break API का इस्तेमाल करें.
प्रॉडक्शन एनवायरमेंट में, HbbTV स्ट्रीम इवेंट AD_BREAK_ANNOUNCE में, adBreakId वैल्यू और podDuration वैल्यू शामिल करें.
इसके बाद, अपने HbbTV ऐप्लिकेशन के लिए मुख्य ऐप्लिकेशन क्लास बनाएं. यह क्लास, HbbTV ब्रॉडकास्ट के साथ इंटरैक्ट करती है.