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