IMA डीएआई SDK टूल का इस्तेमाल शुरू करना

अपनी पसंद का डीएआई सलूशन चुनें

पूरी सेवा वाला डीएआई

इस गाइड में IMA सीएएफ़ डीएआई SDK टूल का इस्तेमाल करके, डीएआई स्ट्रीम चलाने का तरीका बताया गया है. अगर आपने आपको इंटिग्रेशन के पूरे सैंपल को देखना या उसके साथ फ़ॉलो करना हो, उदाहरण डाउनलोड करें.

इस गाइड का इस्तेमाल करने से पहले, Chromecast के बारे में अच्छे से जान लें ऐप्लिकेशन फ़्रेमवर्क का वेब रिसीवर प्रोटोकॉल. यह सीएएफ़ रिसीवर सिद्धांतों के साथ बुनियादी जानकारी को अच्छी तरह से समझकर गाइड करता है, जैसे मैसेज इंटरसेप्टर और mediaInformation साथ ही, आपको कास्ट करने के निर्देश और कंट्रोल' का इस्तेमाल करना होगा टूल का इस्तेमाल किया जा सकता है.

IMA डीएआई का इस्तेमाल करने के लिए, आपके पास Ad Manager 360 खाता. अगर आपके पास कोई विज्ञापन है मैनेजर खाते के बारे में ज़्यादा जानकारी के लिए, अपने खाता मैनेजर से संपर्क करें. जानकारी के लिए Ad Manager में साइन अप करने के बारे में जानने के लिए, Ad Manager सहायता केंद्र पर जाएं Center.

अन्य प्लैटफ़ॉर्म के साथ इंटिग्रेट करने के बारे में जानकारी पाने या IMA का इस्तेमाल करने के बारे में जानकारी क्लाइंट-साइड SDK टूल, इंटरैक्टिव मीडिया विज्ञापन SDK टूल देखें.

CAF डीएआई की खास जानकारी

IMA सीएएफ़ डीएआई SDK टूल का इस्तेमाल करके डीएआई को लागू करने के दो मुख्य कॉम्पोनेंट इस गाइड में बताए गए हैं:

  • StreamRequest: एक ऐसा ऑब्जेक्ट जो Google के विज्ञापन सर्वर को स्ट्रीम करने के अनुरोध के बारे में जानकारी देता है. स्ट्रीम के अनुरोध दो मुख्य तरह से आते हैं:

    • LiveStreamRequest: एक ऐसेट कुंजी और एक वैकल्पिक एपीआई पासकोड के साथ-साथ अन्य वैकल्पिक पैरामीटर.
    • VODStreamRequest: यह Content सोर्स आईडी, वीडियो आईडी, और एक वैकल्पिक एपीआई की जानकारी देता है कुंजी के साथ-साथ अन्य वैकल्पिक पैरामीटर भी होते हैं.
  • StreamManager: एक ऐसा ऑब्जेक्ट जो वीडियो स्ट्रीम और IMA डीएआई के बीच कम्यूनिकेशन को मैनेज करता है SDK टूल, जैसे कि ट्रैकिंग पिंग और स्ट्रीम इवेंट को प्रकाशक हैं.

ज़रूरी शर्तें

  • Cast Developer Console खाता रजिस्टर किया गया टेस्ट डिवाइस.
  • होस्ट किया गया वेब रिसीवर ऐप जिसे आपके Cast Developer Console के साथ रजिस्टर होता है और जिसे होस्ट करने के लिए बदला जा सकता है इस गाइड से मिला कोड.
  • ईमेल भेजने वाला ऐसा ऐप्लिकेशन जिसे आपके वेब रिसीवर ऐप्लिकेशन का इस्तेमाल करने के लिए कॉन्फ़िगर किया गया है. यह उदाहरण कास्ट कमांड और कंट्रोल टूल का इस्तेमाल इस तरह से करता है न्योता भेजने वाला.

भेजने वाले के MediaInfo ऑब्जेक्ट कॉन्फ़िगर करें

सबसे पहले, अपने भेजने वाले ऐप्लिकेशन का MediaInfo कॉन्फ़िगर करें ऑब्जेक्ट को शामिल करने के लिए ये फ़ील्ड शामिल होंगे:

contentId इस मीडिया आइटम के लिए यूनीक आइडेंटिफ़ायर
contentUrl अगर DAI StreamRequest किसी भी स्ट्रीम के लिए DAI StreamRequest नहीं हो पाता है, तो फ़ॉलबैक स्ट्रीम यूआरएल को लोड होना चाहिए कारण
streamType लाइव स्ट्रीम के लिए, यह वैल्यू `LIVE` पर सेट होनी चाहिए. वीओडी (वीडियो ऑन डिमांड) स्ट्रीम के लिए, यह वैल्यू `BUFFERED` पर सेट होनी चाहिए
customData assetKey सिर्फ़ लाइव स्ट्रीम. यह लोड की जाने वाली लाइव स्ट्रीम की पहचान करता है
contentSourceId सिर्फ़ वीओडी (वीडियो ऑन डिमांड) स्ट्रीम. उस मीडिया फ़ीड की पहचान करता है जिसमें स्ट्रीम करने का अनुरोध किया गया है.
videoId सिर्फ़ वीओडी (वीडियो ऑन डिमांड) स्ट्रीम. इसमें अनुरोध की गई स्ट्रीम की पहचान करता है बताया गया मीडिया फ़ीड.
ApiKey एक वैकल्पिक एपीआई पासकोड, जिसकी ज़रूरत स्ट्रीम यूआरएल को वापस पाने के लिए पड़ सकती है IMA डीएआई SDK टूल
senderCanSkip एक बूलियन वैल्यू, जिससे मैसेज पाने वाले व्यक्ति को पता चलता है कि ईमेल भेजने वाले डिवाइस में 'स्किप करें' बटन दिखाने की सुविधा. साथ ही, स्किप किए जा सकने वाले विज्ञापनों के लिए सहायता पाने की सुविधा

कास्ट कमांड और कंट्रोल टूल में इन वैल्यू को कॉन्फ़िगर करने के लिए, लोड करें मीडिया टैब चुनें और पसंद के मुताबिक लोड करने के अनुरोध के टाइप को LOAD पर सेट करें. इसके बाद, टेक्स्ट एरिया में JSON डेटा, जिसमें इनमें से कोई एक JSON ऑब्जेक्ट मौजूद है:

लाइव

{
  "media": {
    "contentId": "bbb",
    "contentUrl": "https://storage.googleapis.com/interactive-media-ads/media/bbb.m3u8",
    "streamType": "LIVE",
    "customData": {
      "assetKey": "sN_IYUG8STe1ZzhIIE_ksA",
      "ApiKey": "",
      "senderCanSkip": true
    }
  },
  "credentials": "testCredentials"
}

वीओडी

{
  "media": {
    "contentId": "tos",
    "contentUrl": "https://storage.googleapis.com/interactive-media-ads/media/tos.m3u8",
    "streamType": "BUFFERED",
    "customData": {
      "contentSourceId": "2548831",
      "videoId": "tears-of-steel",
      "ApiKey": "",
      "senderCanSkip": true
    }
  },
  "credentials": "testCredentials"
}

लोड करने के इस अनुरोध के ऑब्जेक्ट को, पाने वाले को भेजा जा सकता है, ताकि नीचे दिया गया तरीका अपनाएं.

एक सामान्य CAF रिसीवर बनाएं

CAF SDK बेसिक रिसीवर गाइड का पालन करके, एक बेसिक वेब रिसीवर बनाएं.

पैसे पाने वाले व्यक्ति का कोड इस तरह दिखना चाहिए:

<html>
<head>
  <script type="text/javascript"
      src="//www.gstatic.com/cast/sdk/libs/caf_receiver/v3/cast_receiver_framework.js">
  </script>
</head>
<body>
  <cast-media-player></cast-media-player>
  <script>
    cast.framework.CastReceiverContext.getInstance().start();
  </script>
</body>
</html>

IMA डीएआई SDK टूल इंपोर्ट करें और प्लेयर मैनेजर पाएं

सीएएफ़ के लिए IMA डीएआई SDK टूल को अपने वेब रिसीवर में इंपोर्ट करने के लिए, स्क्रिप्ट टैग जोड़ें सीएएफ़ लोड होने के बाद. सीएएफ़ डीएआई SDK टूल हमेशा लोकप्रिय रहता है. इसलिए, इसकी ज़रूरत नहीं है का इस्तेमाल करें. फिर, आने वाले स्क्रिप्ट टैग में, रिसीवर कॉन्टेक्स्ट और प्लेयर मैनेजर को कॉन्सटेंट के तौर पर देखें.

<html>
<head>
  <script type="text/javascript"
      src="//www.gstatic.com/cast/sdk/libs/caf_receiver/v3/cast_receiver_framework.js"></script>
  <script src="//imasdk.googleapis.com/js/sdkloader/cast_dai.js"></script>
</head>
<body>
  <cast-media-player></cast-media-player>
  <script>
    const castContext = cast.framework.CastReceiverContext.getInstance();
    const playerManager = castContext.getPlayerManager();

    castContext.start();
  </script>
</body>
</html>

IMA स्ट्रीम मैनेजर को शुरू करना

सीएएफ़ डीएआई SDK टूल की स्ट्रीम शुरू करें मैनेजर.

<html>
<head>
  <script type="text/javascript"
      src="//www.gstatic.com/cast/sdk/libs/caf_receiver/v3/cast_receiver_framework.js"></script>
  <script src="//imasdk.googleapis.com/js/sdkloader/cast_dai.js"></script>
</head>
<body>
  <cast-media-player></cast-media-player>
  <script>
    const castContext = cast.framework.CastReceiverContext.getInstance();
    const playerManager = castContext.getPlayerManager();
    const streamManager = new google.ima.cast.dai.api.StreamManager();

    castContext.start();
  </script>
</body>
</html>

लोड मैसेज इंटरसेप्टर बनाएं

सीएएफ़ डीएआई SDK टूल, सीएएफ़ लोड मैसेज का इस्तेमाल करता है इंटरसेप्टर का इस्तेमाल करें. मैसेज इंटरसेप्टर, streamManager.requestStream() को कॉल करता है, जो विज्ञापन के लिए ब्रेक सेट करना, स्ट्रीम का अनुरोध करना, और मौजूदा contentURL.

लोड मैसेज इंटरसेप्टर का सिर्फ़ एक ही इस्तेमाल किया जा सकता है. इसलिए, अगर आपके ऐप्लिकेशन को का इस्तेमाल करने के लिए, आपको किसी भी कस्टम फ़ंक्शन को कॉलबैक.

<html>
<head>
  <script type="text/javascript"
      src="//www.gstatic.com/cast/sdk/libs/caf_receiver/v3/cast_receiver_framework.js"></script>
  <script src="//imasdk.googleapis.com/js/sdkloader/cast_dai.js"></script>
</head>
<body>
  <cast-media-player></cast-media-player>
  <script>
    const castContext = cast.framework.CastReceiverContext.getInstance();
    const playerManager = castContext.getPlayerManager();
    const streamManager = new google.ima.cast.dai.api.StreamManager();

    const getStreamRequest = (request) => null;

    playerManager.setMessageInterceptor(
        cast.framework.messages.MessageType.LOAD, (request) => {
          return streamManager.requestStream(request, getStreamRequest(request))
              .then((request) => {
                this.broadcast('Stream request successful.');
                return Promise.resolve(request);
              })
              .catch((error) => {
                this.broadcast('Stream request failed.');
                return Promise.resolve(request);
              });
        });

    castContext.start();
  </script>
</body>
</html>

स्ट्रीम का अनुरोध करें

सीएएफ़ के डीएआई इंटिग्रेशन को पूरा करने के लिए, आपको अपनी स्ट्रीम बनानी होगी अनुरोध भेजने वाले के mediaInfo ऑब्जेक्ट में शामिल डेटा का इस्तेमाल करके.

<html>
<head>
  <script type="text/javascript"
      src="//www.gstatic.com/cast/sdk/libs/caf_receiver/v3/cast_receiver_framework.js"></script>
  <script src="//imasdk.googleapis.com/js/sdkloader/cast_dai.js"></script>
</head>
<body>
  <cast-media-player></cast-media-player>
  <script>
    const castContext = cast.framework.CastReceiverContext.getInstance();
    const playerManager = castContext.getPlayerManager();
    const streamManager = new google.ima.cast.dai.api.StreamManager();

    const getStreamRequest = (request) => {
      const imaRequestData = request.media.customData;
      let streamRequest = null;
      if (imaRequestData.assetKey) {
        // Live stream
        streamRequest = new google.ima.cast.dai.api.LiveStreamRequest();
        streamRequest.assetKey = imaRequestData.assetKey;
      } else if (imaRequestData.contentSourceId) {
        // VOD stream
        streamRequest = new google.ima.cast.dai.api.VODStreamRequest();
        streamRequest.contentSourceId = imaRequestData.contentSourceId;
        streamRequest.videoId = imaRequestData.videoId;
      }
      if (streamRequest && imaRequestData.ApiKey) {
        streamRequest.ApiKey = imaRequestData.ApiKey;
      }
      if (streamRequest && imaRequestData.senderCanSkip) {
        streamRequest.senderCanSkip = imaRequestData.senderCanSkip;
      }
      return streamRequest;
    };

    playerManager.setMessageInterceptor(
        cast.framework.messages.MessageType.LOAD, (request) => {
          return streamManager.requestStream(request, getStreamRequest(request))
              .then((request) => {
                return Promise.resolve(request);
              })
              .catch((error) => {
                this.broadcast('Stream request failed.');
                return Promise.resolve(request);
              });
        });

    castContext.start();
  </script>
</body>
</html>

अब Google के सीएएफ़ डीएआई SDK टूल से, डीएआई स्ट्रीम का अनुरोध किया जा सकता है और उन्हें चलाया जा सकता है. SDK टूल की ज़्यादा बेहतर सुविधाओं के बारे में जानने के लिए, अन्य गाइड देखें या हमारे सैंपल रिसीवर को डाउनलोड करें ऐप्लिकेशन में दिया गया है.