ऐक्सेस की ज़रूरी शर्तें

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

पहली इमेज. ऐक्सेस की ज़रूरी शर्तों से, आपके सदस्यों को आपके ऐप्लिकेशन या प्लैटफ़ॉर्म पर कॉन्टेंट ऐक्सेस करने में मदद मिलती है.

कॉन्टेंट ऐक्सेस करने के लिए ज़रूरी शर्तों की पहचान करना

आपको अपने कैटलॉग में हर कॉन्टेंट पैकेज के लिए, ऐक्सेस से जुड़ी ज़रूरी शर्त की पहचान करनी होगी. ऐसा करते समय, इन सवालों पर ध्यान दें:

  • क्या कॉन्टेंट ऐक्सेस करने के लिए, उपयोगकर्ताओं को आपके ऐप्लिकेशन या प्लैटफ़ॉर्म में लॉग इन करना होगा?
  • क्या उपयोगकर्ताओं को सदस्यता की ज़रूरत है?

    सिर्फ़ स्मार्ट वॉच के लिए:

    • क्या उपयोगकर्ताओं को बाहरी सेवा देने वाले की सदस्यता लेनी होगी?
    • क्या आप अलग-अलग कैटगरी वाले, कई पैकेज वाले या ऐड-ऑन सदस्यता ऑफ़र करते हैं?
  • सिर्फ़ कार्रवाइयों के लिए देखें: क्या उपयोगकर्ताओं को कॉन्टेंट किराये पर लेने या खरीदने की ज़रूरत है?

  • क्या समय के साथ ऐक्सेस की ज़रूरत बदलती है?

  • क्या ऐक्सेस की ज़रूरत, डिवाइस की जगह के हिसाब से तय होती है?

ऐक्सेस पर लगी पाबंदी के टाइप

ऐक्सेस पर पाबंदी दो तरह से लगाई जाती है:

Paywall का प्रकार

आप paywall के प्रकार के हिसाब से, कॉन्टेंट के ऐक्सेस पर पाबंदी लगा सकते हैं. नीचे दी गई टेबल में अलग-अलग तरह के paywall के बारे में जानकारी दी गई है:

Paywall का प्रकार उदाहरण कैटगरी
खरीदारी या लॉगिन की कोई ज़रूरत नहीं है. क्रैकल nologinrequired
उपयोगकर्ता ने लॉग इन किया होना चाहिए. हालांकि, इसके लिए उसे पैसे देकर ली गई सदस्यता की ज़रूरत नहीं है. वुडु (AVOD) free
उपयोगकर्ता के पास चालू सदस्यता होनी चाहिए. ऐक्सेस, सदस्यता के स्तर से अलग होता है. Netflix

subscription

उपयोगकर्ता के पास चालू सदस्यता होनी चाहिए. ऐक्सेस इस बात पर निर्भर करता है कि सदस्यता किस लेवल की है. Hulu (ऐड-ऑन)

subscription

कॉन्टेंट, खरीदारी के बाद सीमित समय के लिए उपलब्ध रहता है. Vudu rental
खरीदारी के बाद, कॉन्टेंट हमेशा के लिए उपलब्ध होता है. Vudu purchase
कॉन्टेंट, केबल सदस्यता से उपलब्ध होता है. HBO Go externalSubscription

स्मार्ट वॉच ऐक्शन के लिए Paywall का टाइप

वॉच ऐक्शन के लिए paywall का कॉन्टेंट किस तरह का है, यह बताने के लिए कार्रवाई के ऐक्सेस की खास बातों में category प्रॉपर्टी का इस्तेमाल करें:

"potentialAction": {
  "@type":"WatchAction",
  "target": { … },
  "actionAccessibilityRequirement": {
    "@type": "ActionAccessSpecification",
    "category": "subscription",
    "availabilityStarts": "2018-06-01T10:35:29Z",
    "availabilityEnds": "2019-05-31T10:35:29Z",
    "eligibleRegion": {
      "@type": "Country",
      "name": "US"
    }
  },
  ...
}

कार्रवाइयां सुनने के लिए paywall का प्रकार

'सुनें' कार्रवाइयों के लिए, paywall से जुड़ा कॉन्टेंट किस तरह का है, यह बताने के लिए ऑफ़र ऑब्जेक्ट में category प्रॉपर्टी का इस्तेमाल करें:

"potentialAction": {
  "@type":"ListenAction",
  "target": { … },
  "expectsAcceptanceOf":{
    "@type":"Offer",
    "category":"subscription",
    "availabilityStarts": "2018-06-01T10:35:29Z",
    "availabilityEnds": "2019-05-31T10:35:29Z",
    "eligibleRegion": {
      "@type":"Country",
      "name":"US"
    }
  },
  ...
}

भौगोलिक इलाका

आपको वे भौगोलिक क्षेत्र बताने होंगे जहां कॉन्टेंट उपलब्ध है. इनमें से एक या दोनों प्रॉपर्टी का इस्तेमाल करें:

अगर डिवाइस की जगह, eligibleRegion में बताई गई किसी भी जगह पर है और ineligibleRegion में बताए गए किसी भी इलाके में नहीं है, तो उपयोगकर्ता कॉन्टेंट को ऐक्सेस कर सकता है.

eligibleRegion और ineligibleRegion प्रॉपर्टी में इन वैल्यू का इस्तेमाल किया जा सकता है:

  • Country,City, और State की सूची.
  • एक GeoShape ऑब्जेक्ट. ज़रूरी शर्तों के बारे में जानने के लिए, GeoShape प्रॉपर्टी सेक्शन देखें.
  • GeoShape ऑब्जेक्ट की सूची.

अगर कॉन्टेंट दुनिया भर में उपलब्ध है, तो eligibleRegion के लिए इन खास वैल्यू का इस्तेमाल करें:

"eligibleRegion": "EARTH",

इस्तेमाल करने के ज़रूरी शर्तें

यहां eligibleRegion प्रॉपर्टी के इस्तेमाल के उदाहरण दिए गए हैं:

  • पहला उदाहरण: eligibleRegion देशों की सूची के साथ.
  • उदाहरण 2: ऐसे GeoShape ऑब्जेक्ट के साथ eligibleRegion जिसमें पिन कोड की सूची शामिल है.
  • उदाहरण 3: eligibleRegion के साथ GeoShape ऑब्जेक्ट, जिसमें फ़ॉरवर्ड सॉर्टेशन एरिया (एफ़एसए) कोड की सूची है.
  • उदाहरण 4: GeoShape ऑब्जेक्ट के साथ eligibleRegion जिसमें डीएमए आईडी शामिल है.
  • उदाहरण 5: GeoShape ऑब्जेक्ट की सूची के साथ eligibleRegion. हर एक में डीएमए आईडी होता है.
  • उदाहरण 6: ब्लॉक किए गए पिन कोड के साथ ineligibleRegion.

उदाहरण 1

इन देशों की सूची के साथ eligibleRegion:


"actionAccessibilityRequirement": {
  "@type": "ActionAccessSpecification",
  "category": "subscription",
  "requiresSubscription": {
    "@type": "MediaSubscription",
    "@id": "http://www.example.com/north_america_network/subscription",
    "name": "Example Subscription",
    "commonTier": true
  },
  "eligibleRegion": [
    {
      "@type": "Country",
      "name": "US"
    },
    {
      "@type": "Country",
      "name": "CA"
    }
  ]
}

उदाहरण 2

GeoShape ऑब्जेक्ट वाले eligibleRegion जिसमें पिन कोड की सूची शामिल होती है:


"actionAccessibilityRequirement": {
  "@type": "ActionAccessSpecification",
  "category": "subscription",
  "requiresSubscription": {
    "@type": "MediaSubscription",
    "@id": "http://www.example.com/local_tv_network/subscription",
    "name": "Example Subscription",
    "commonTier": true
  },
  "eligibleRegion": {
    "@type": "GeoShape",
    "@id": "http://example.com/area1",
    "addressCountry": "US",
    "postalCode": [
      "94118",
      "94119"
    ]
  }
}

तीसरा उदाहरण

GeoShape ऑब्जेक्ट वाले eligibleRegion, जिसमें फ़ॉरवर्ड सॉर्टेशन एरिया (एफ़एसए) कोड की सूची है:


"actionAccessibilityRequirement": {
  "@type": "ActionAccessSpecification",
  "category": "subscription",
  "requiresSubscription": {
    "@type": "MediaSubscription",
    "@id": "http://www.example.com/local_tv_network/subscription",
    "name": "Example Subscription",
    "commonTier": true
  },
  "eligibleRegion":{
    "@type": "GeoShape",
    "@id": "http://example.com/area2",
    "addressCountry": "CA",
    "postalCode": [
      "1A1",
      "K1A"
    ]
  }
}

चौथा उदाहरण

GeoShape ऑब्जेक्ट वाले eligibleRegion, जिसमें डीएमए आईडी शामिल है:


"actionAccessibilityRequirement": {
  "@type": "ActionAccessSpecification",
  "category": "subscription",
  "requiresSubscription": {
    "@type": "MediaSubscription",
    "@id": "http://www.example.com/abcd/subscription",
    "name": "Example Subscription",
    "commonTier": true
  },
  "eligibleRegion":{
    "@type": "GeoShape",
    "@id": "http://example.com/area3",
    "addressCountry": "US",
    "identifier": [
      {
        "@type": "PropertyValue",
        "propertyID": "DMA_ID",
        "value": "501"
      }
    ]
  }
}

उदाहरण 5

GeoShape ऑब्जेक्ट की सूची के साथ eligibleRegion. हर एक में डीएमए आईडी होता है:


"actionAccessibilityRequirement" : {
   "@type" : "ActionAccessSpecification",
   "eligibleRegion" : [
      {
         "@id" : "http://example.com/dma/601",
         "@type" : "GeoShape",
         "addressCountry" : "US",
         "identifier" : {
            "@type" : "PropertyValue",
            "propertyID" : "DMA_ID",
            "value" : "601"
         }
      },
      {
         "@id" : "http://example.com/dma/602",
         "@type" : "GeoShape",
         "addressCountry" : "US",
         "identifier" : {
            "@type" : "PropertyValue",
            "propertyID" : "DMA_ID",
            "value" : "602"
         }
      }
   ]
}

छठा उदाहरण

ineligibleRegion पिन कोड के ज़रिए ब्लॉक किया गया:


"actionAccessibilityRequirement": {
  "@type": "ActionAccessSpecification",
  "category": "subscription",
  "requiresSubscription": {
    "@type": "MediaSubscription",
    "@id": "http://www.example.com/local_tv_network/subscription",
    "name": "Example Subscription",
    "commonTier": true
  },
 "eligibleRegion":   {
      "@type": "Country",
      "name": "US"
    },
  "ineligibleRegion": {
    "@type": "GeoShape",
    "@id": "http://example.com/area1",
    "addressCountry": "US",
    "postalCode": [
      "94118",
      "94119"
    ]
  }
}

एनटाइटलमेंट आइडेंटिफ़ायर

एनटाइटलमेंट आइडेंटिफ़ायर, entitlementId, एक ऐसी स्ट्रिंग को दिखाता है जो आपके मीडिया कैटलॉग में कॉन्टेंट के ग्रुप का ऐक्सेस दिखाती है. यह पता करने के लिए कि उपयोगकर्ता के पास आपके कॉन्टेंट का ऐक्सेस है या नहीं, Google ये तरीके अपनाता है:

  1. उपयोगकर्ता के एनटाइटलमेंट के आइडेंटिफ़ायर पाने के लिए, हम आपके एनटाइटलमेंट एंडपॉइंट पर एपीआई कॉल करते हैं.
  2. हम आपके मीडिया ऐक्शन फ़ीड से, कॉन्टेंट के लिए ज़रूरी एनटाइटलमेंट आइडेंटिफ़ायर खोजते हैं.
  3. हम किसी उपयोगकर्ता की entitlementId का मिलान आपके फ़ीड के मीडिया सदस्यता ऑब्जेक्ट की identifier प्रॉपर्टी से करते हैं. अगर कम से कम एक entitlementId मेल खाता है, तो हम तय करते हैं कि उपयोगकर्ता कॉन्टेंट को ऐक्सेस कर सकता है.
दूसरी इमेज. उपयोगकर्ता के किसी एक एनटाइटलमेंट आइडेंटिफ़ायर, कॉन्टेंट से जुड़े ज़रूरी एनटाइटलमेंट आइडेंटिफ़ायर से मेल खाते हैं.

Google का सुझाव है कि आप entitlementId के लिए, नीचे दिए गए सिंटैक्स का इस्तेमाल करें:

<domain name> + colon (:) + <access level to content>

सिंटैक्स के उदाहरण:

  • example.com:basic
  • example.com:premium
  • example.com:sports

एनटाइटलमेंट आइडेंटिफ़ायर का उदाहरण

MediaExampleCompany फ़ीड में यह बताया गया है कि Movie XYZ के लिए example.com:basic entitlementId की ज़रूरत है, जैसा कि दिखाया गया है:

{
  "@context": ["http://schema.org", {"@language": "en"}],
  "@type": "Movie",
  "@id": "www.example.com/movie_xyz",
  "url": "www.example.com/movie_xyz",
  "name": "Movie XYZ",
  "potentialAction": {
    "@type": "WatchAction",
    "target": [ … ],
    "actionAccessibilityRequirement": {
      "@type": "ActionAccessSpecification",
      "category": "subscription",
      "requiresSubscription": {
        "@type": "MediaSubscription",
        "@id": "http://www.example.com/basic_subscription",
        "name": "Basic subscription",
        "commonTier": true
        ...
      },
      ...
    }
  },
  ...
}

इस्तेमाल के सामान्य उदाहरण

ऐक्सेस के इस्तेमाल के ये सामान्य उदाहरण हैं:

  • मुफ़्त (लॉगिन करने की ज़रूरत नहीं है): लॉगिन, सदस्यता या खरीदारी के बिना कॉन्टेंट उपलब्ध है.
  • मुफ़्त (लॉगिन ज़रूरी है): कॉन्टेंट ऐक्सेस करने के लिए, उपयोगकर्ताओं को लॉग इन करना ज़रूरी है. हालांकि, इसके लिए सदस्यता लेने की ज़रूरत नहीं है.
  • एक टियर की सदस्यता: कॉन्टेंट के लिए सदस्यता ज़रूरी है. सभी सदस्य अपनी सदस्यता के पैकेज पर ध्यान दिए बिना, एक ही कॉन्टेंट को ऐक्सेस कर सकते हैं. जैसे, फ़िल्में या एपिसोड.
  • कई लेवल की सदस्यता: कॉन्टेंट के लिए सदस्यता ज़रूरी है. सदस्य अपनी सदस्यता के टियर के हिसाब से, अलग-अलग तरह का कॉन्टेंट ऐक्सेस कर सकते हैं. जैसे, फ़िल्में या एपिसोड. उदाहरण के लिए, सिल्वर बनाम गोल्ड.
  • ऐड-ऑन सदस्यता: कॉन्टेंट के लिए सदस्यता ज़रूरी है. सदस्य अपनी नियमित सदस्यता के साथ-साथ, प्रीमियम कॉन्टेंट भी जोड़ सकते हैं.
  • एक बार की गई खरीदारी: कॉन्टेंट खरीदा जा सकता है और इसके बाद उपयोगकर्ता इसे हमेशा के लिए ऐक्सेस कर सकता है.
  • लाइव टीवी: किसी सदस्यता में स्थानीय, राष्ट्रीय, और प्रीमियम चैनलों का ऐक्सेस शामिल है.
  • तीसरे पक्ष की सदस्यता: कॉन्टेंट की मदद से, उपयोगकर्ता को केबल सेवा देने वाली कंपनी की मदद से लॉग इन करना होगा.

मुफ़्त (लॉगिन की ज़रूरत नहीं)

लॉगिन करने की ज़रूरत नहीं है

सामग्री लॉगिन या सदस्यता के बिना उपलब्ध है.


{
  "actionAccessibilityRequirement": {
    "@type": "ActionAccessSpecification",
    "category": "nologinrequired",
    "availabilityStarts": "2015-01-01T00:00Z",
    "availabilityEnds": "2015-12-31T00:00Z",
    "eligibleRegion": {
      "@type": "Country",
      "name": "US"
    }
  }
}
  • category को nologinrequired पर सेट करें.
  • expectAcceptanceOf शामिल न करें.

मुफ़्त (लॉगिन ज़रूरी है)

लॉगिन ज़रूरी है

कॉन्टेंट को ऐक्सेस करने के लिए, उपयोगकर्ताओं को लॉग इन करना ज़रूरी है. हालांकि, इसके लिए किसी सदस्यता की ज़रूरत नहीं है.


{
  "actionAccessibilityRequirement": {
    "@type": "ActionAccessSpecification",
    "category": "free",
    "availabilityStarts": "2015-01-01T00:00Z",
    "availabilityEnds": "2015-12-31T00:00Z",
    "eligibleRegion": {
      "@type": "Country",
      "name": "US"
    }
  }
}
  • category को free पर सेट करें.
  • expectAcceptanceOf शामिल न करें.

एक टियर की सदस्यता

एक टियर वाले सदस्यता मॉडल में, सेवा देने वाली कंपनी के पास एक सदस्यता लेवल होता है. सभी सदस्य एक ही कॉन्टेंट को ऐक्सेस कर सकते हैं, भले ही वे फ़िल्म या एपिसोड हों या न हों. भले ही, उनका सदस्यता पैकेज कुछ भी हो.


{
  "actionAccessibilityRequirement": {
    "@type": "ActionAccessSpecification",
    "category": "subscription",
    "availabilityStarts": "2015-01-01T00:00Z",
    "availabilityEnds": "2015-12-31T00:00Z",
    "requiresSubscription": {
        "@type": "MediaSubscription",
        "name": "Example Package",
        "commonTier": true,
        "@id": "http://www.example.com/example_package"
    },
    "eligibleRegion": {
      "@type": "Country",
      "name": "US"
    }
  }
}

मल्टी-टियर सदस्यता

अलग-अलग तरह की सदस्यताओं वाले मॉडल में, सेवा देने वाली कंपनी में गोल्ड, सिल्वर, और ब्रॉन्ज़ जैसे कई सदस्यता टियर होते हैं. जिन उपयोगकर्ताओं के पास ऊपरी टीयर की सदस्यता है वे हर तरह का कॉन्टेंट ऐक्सेस कर सकते हैं. हालांकि, जिन उपयोगकर्ताओं के पास कम टीयर वाली सदस्यता है वे टियर वाले कॉन्टेंट को ऐक्सेस नहीं कर सकते.

तीसरी इमेज. अलग-अलग तरह की सदस्यता का मॉडल और इसके एनटाइटलमेंट की जानकारी.

नीचे दिया गया उदाहरण देखें:

  • जेन गोल्ड टियर की सदस्यता लेती हैं. आपका एनटाइटलमेंट एंडपॉइंट, ये entitlementId आइडेंटिफ़ायर दिखाता है:
    • example.com:bronze
    • example.com:silver
    • example.com:gold
  • राजेश ब्रॉन्ज़ टीयर की सदस्यता लेता है. आपका एनटाइटलमेंट एंडपॉइंट, ये entitlementId दिखाता है:
    • example.com:bronze
  • आपका मीडिया ऐक्शन फ़ीड इन शर्तों के बारे में बताता है:
    • फ़िल्म A के लिए example.com:bronze ज़रूरी है.
    • फ़िल्म B के लिए example.com:silver ज़रूरी है.

इस मामले में, Google जेन और जॉन के लिए ये ऐक्सेस लेवल तय करता है:

  • जेन और जॉन, दोनों के पास फ़िल्म A का ऐक्सेस है.
  • जेन के पास फ़िल्म B का ऐक्सेस है, लेकिन अमिताभ के पास नहीं है.
{
  "actionAccessibilityRequirement": {
    "@type": "ActionAccessSpecification",
    "category": "subscription",
    "requiresSubscription": {
      "@type": "MediaSubscription",
      "@id": "http://www.example.com/basic_subscription",
      "name": "Bronze",
      "commonTier": true
      ...
    },
    ...
  }
}

ऐड-ऑन सदस्यता

ऐड-ऑन की सदस्यता वाले मॉडल में, सेवा देने वाली कंपनी, उपयोगकर्ताओं को अपनी सदस्यताएं बढ़ाने और मूल सदस्यता वाले चैनल जोड़ने की अनुमति देती है. उपयोगकर्ता जितने चाहें उतने चैनल जोड़ सकते हैं.

चौथी इमेज. ऐड-ऑन सदस्यता का मॉडल और एनटाइटलमेंट की जानकारी.

नीचे दिया गया उदाहरण देखें:

  • जेन के पास बुनियादी सदस्यता के साथ-साथ PRO और Sportz भी है. आपका एनटाइटलमेंट एंडपॉइंट, entitlementId आइडेंटिफ़ायर दिखाता है:
    • example.com:basic
    • example.com:pro
    • example.com:sportz
  • जय के पास सिर्फ़ बेसिक की सदस्यता है. आपका एनटाइटलमेंट एंडपॉइंट, ये entitlementId दिखाता है:
    • example.com:basic
  • आपका मीडिया ऐक्शन फ़ीड इन शर्तों के बारे में बताता है:
    • फ़िल्म A के लिए example.com:basic ज़रूरी है.
    • फ़िल्म B के लिए example.com:pro ज़रूरी है.

इस मामले में, Google जेन और जॉन के लिए ये ऐक्सेस लेवल तय करता है:

  • जेन और जॉन, दोनों के पास फ़िल्म A का ऐक्सेस है.
  • जेन के पास फ़िल्म B का ऐक्सेस है, लेकिन अमिताभ के पास नहीं है.
{
  "actionAccessibilityRequirement": {
    "@type": "ActionAccessSpecification",
    "category": "subscription",
    "availabilityStarts": "2015-01-01T00:00Z",
    "availabilityEnds": "2015-12-31T00:00Z",
    "eligibleRegion": {
      "@type": "Country",
      "name": "US"
    "requiresSubscription": [
      {
          "@type": "MediaSubscription",
          "@id": "https://www.example.com/package/basic",
          "name": "Basic",
          "sameAs": "https://www.example.com/package/basic",
          "commonTier": true
        },
        {
          "@type": "MediaSubscription",
          "@id": "https://www.example.com/packages/basic/pro",
          "name": "PRO",
          "sameAs": "https://www.example.com/package/pro",
          "identifier": "example.com:pro",
          "commonTier": false
        },
        {
          "@type": "MediaSubscription",
          "@id": "https://www.example.com/package/sportz",
          "name": "Sportz",
          "sameAs": "https://www.example.com/package/sports",
          "identifier": "example.com:sportz",
          "commonTier": false
        }
    }
  }
}

एक बार की जाने वाली खरीदारी

खरीदारी

खरीदारी के बाद, कॉन्टेंट हमेशा के लिए उपलब्ध होता है.


{
  "actionAccessibilityRequirement": {
    "@type": "ActionAccessSpecification",
    "category": "purchase",
    "availabilityStarts": "2015-01-01T00:00Z",
    "availabilityEnds": "2015-12-31T00:00Z",
    "eligibleRegion": {
      "@type": "Country",
      "name": "US"
    },
    "expectsAcceptanceOf": {
      "@type": "Offer",
      "price": 7.99,
      "priceCurrency": "USD",
      "seller": {
        "@type": "Organization",
        "name": "Example",
        "sameAs": "http://www.example.com/"
      }
    }
  }
}
  • category को purchase पर सेट करें.
  • खरीदारी की कीमत दिखाने के लिए, actionAccessibilityRequirement में expectAcceptanceOf शामिल करें.

किराये के तौर पर की जाने वाली खरीदारी

कॉन्टेंट, खरीदारी के बाद सीमित समय के लिए उपलब्ध रहता है.


{
  "actionAccessibilityRequirement": {
    "@type": "ActionAccessSpecification",
    "category": "rental",
    "availabilityStarts": "2015-01-01T00:00Z",
    "availabilityEnds": "2015-12-31T00:00Z",
    "eligibleRegion": {
      "@type": "Country",
      "name": "US"
    },
    "expectsAcceptanceOf": {
      "@type": "Offer",
      "price": 7.99,
      "priceCurrency": "USD",
      "seller": {
        "@type": "Organization",
        "name": "Example",
        "sameAs": "http://www.example.com/"
      }
    }
  }
}
  • category को rental पर सेट करें.
  • किराये की कीमत बताने के लिए, actionAccessibilityRequirement में expectAcceptanceOf शामिल करें.

लाइव टीवी

मीडिया से जुड़ी कार्रवाइयों वाले फ़ीड में, उपयोगकर्ता की इन दो शर्तों के आधार पर, लाइव टीवी के चैनल या इवेंट के ऐक्सेस पर पाबंदी लगाई जा सकती है:

  • उपयोगकर्ता के डिवाइस की जगह की जानकारी

    टीवी चैनल के ऐक्सेस पर पाबंदी लगाने के लिए, उस इलाके की जानकारी दें जहां उपयोगकर्ताओं को इसका ऐक्सेस मिला है. यह शर्त आम तौर पर लोकल ब्रॉडकास्ट टीवी चैनलों पर लागू होती है.

  • उपयोगकर्ता के खाते की स्थिति

    अगर टीवी चैनल का ऐक्सेस, उपयोगकर्ता के खाता-लेवल की सेटिंग पर निर्भर करता है, तो इस पाबंदी के बारे में बताने के लिए, एनटाइटलमेंट आइडेंटिफ़ायर का इस्तेमाल करें.

    यह शर्त आम तौर पर इन उपयोग के उदाहरणों पर लागू होती है:

    • बंडल: अक्सर राष्ट्रीय चैनल, बंडल में शामिल किए जाते हैं और उपयोगकर्ता उन बंडल को चुनते हैं जिनकी सदस्यता वे लेना चाहते हैं.
    • ऐड-ऑन: कुछ प्रीमियम चैनलों के लिए, उपयोगकर्ताओं को अपनी सदस्यता में चुनिंदा चैनल जोड़ने की ज़रूरत होती है.
    • रीजनल स्पोर्ट्स नेटवर्क (आरएसएन): आम तौर पर, आरएसएन उपयोगकर्ता की "घर" की जगह से जुड़े होते हैं. मैसेज का जवाब देते समय, उपयोगकर्ता अपने "घर" वाले देश से बाहर जाने पर भी कॉन्टेंट देख सकते हैं.

तीसरे पक्ष की सदस्यता

तीसरे पक्ष की सदस्यता

कॉन्टेंट, सदस्यों के लिए अलग सेवा से उपलब्ध है.


{
  "actionAccessibilityRequirement": {
    "@type": "ActionAccessSpecification",
    "category": "externalsubscription"
    "availabilityStarts": "2015-01-01T00:00Z",
    "availabilityEnds": "2015-12-31T00:00Z",
    "requiresSubscription":{
      "@type": "MediaSubscription",
      "@id": "https://www.example.com/faq",
      "name": "Example",
      "sameAs": "https://www.example.com/faq",
      "authenticator": {
        "@type": "Organization",
        "name": "TVE"
      }
    },
    "eligibleRegion": {
      "@type": "Country",
      "name": "US"
    }
  }
}
  • authenticator जोड़कर, यह बताएं कि अलग सेवा से सदस्यों की पुष्टि होती है. उदाहरण के लिए, HBO GO को केबल की सेवा देने वाली कंपनी से सदस्यता लेनी होगी.

सामान्य टियर पैकेज

सामान्य सदस्यता वाला कॉन्टेंट, सभी सदस्यों के लिए उपलब्ध है. भले ही, उनका सदस्यता पैकेज कुछ भी हो. कॉमन टियर, subscription के category के साथ सभी कॉन्टेंट पर लागू होता है. category प्रॉपर्टी के बारे में ज़्यादा जानने के लिए, paywall type सेक्शन पर जाएं.

एक सामान्य टियर पैकेज की ज़रूरत क्यों है?

Google के कई प्रॉडक्ट के लिए, टीवी और फ़िल्मों के सुझाव दिए जाते हैं. इनमें Google Search, Android TV, और Google Assistant शामिल हैं. उपयोगकर्ता को लागत से जुड़ी उम्मीदें सेट करने के लिए, Google को यह समझना चाहिए कि सामान्य टीयर का इस्तेमाल करके, सभी सदस्यों के लिए कौनसा कॉन्टेंट उपलब्ध है. Google को यह भी समझना होगा कि सदस्यों के लिए खास पैकेज के साथ कौनसा कॉन्टेंट उपलब्ध है.

Google तब तक सामान्य टीयर पर उपलब्ध शीर्षकों का सुझाव देता है, जब तक कि आप एनटाइटलमेंट एपीआई के साथ काम नहीं करते. एपीआई की मदद से, Google यह पता कर पाता है कि हर उपयोगकर्ता को किस शीर्षक के सामान्य उपयोगकर्ता ने ऐक्सेस दिया है.

मुझे आम टियर पैकेज कब बनाना चाहिए?

जब आपकी सेवा ऐसा कॉन्टेंट ऑफ़र करती है जो सभी सदस्यों के लिए उपलब्ध हो, तो एक सामान्य टियर पैकेज ज़रूरी होता है. इसमें एक ही पैकेज ऑफ़र करने वाली सेवाएं और ऐसी सेवाएं शामिल हैं जो कई पैकेज या ऐड-ऑन ऑफ़र करती हैं.

जिन कंपनियों के पास सभी सदस्यों के लिए कोई भी कॉन्टेंट उपलब्ध नहीं है उन्हें सामान्य टीयर पैकेज बनाने की ज़रूरत नहीं होती. उदाहरण के लिए, सेवा देने वाली ऐसी कंपनियां जो अपने सभी पैकेज में साथ मिलकर काम करने का खास कॉन्टेंट देती हैं.

टियर के सामान्य उदाहरण

सामान्य टीयर के उदाहरण नीचे दिए गए हैं.

अलग-अलग स्तर की सदस्यता

अलग-अलग तरह की सदस्यता वाले मॉडल में, सेवा देने वाली कंपनी के पास कई सदस्यता टियर होते हैं, जैसे कि गोल्ड, सिल्वर, और ब्रॉन्ज़ टियर. उच्च स्तर की सदस्यता वाले उपयोगकर्ता, नीचे के लेवल का सारा कॉन्टेंट ऐक्सेस कर सकते हैं. निचले स्तर की सदस्यता वाले उपयोगकर्ताओं के पास, ऊपर के लेवल वाले कॉन्टेंट का ऐक्सेस नहीं होता. पैकेज के स्ट्रक्चर का उदाहरण, नीचे दी गई इमेज है.

गोल्ड टीयर में सिल्वर टीयर का पूरा कॉन्टेंट शामिल होता है, जिसमें
            सभी ब्रॉन्ज़ लेवल शामिल होते हैं.
पांचवीं इमेज. अलग-अलग सदस्यता के पैकेज की बनावट.

नीचे दिए गए कोड के उदाहरण में, ब्रॉन्ज़ पैकेज एक सामान्य टीयर है, क्योंकि सभी उपयोगकर्ताओं के पास उस टियर के पूरे कॉन्टेंट का ऐक्सेस है.

"requiresSubscription": [
    {
      "@type": "MediaSubscription",
      "@id": "https://www.example.com/package/bronze",
      "name": "Bronze",
      "sameAs": "https://www.example.com/package/bronze",
      "commonTier": true
    },
    {
      "@type": "MediaSubscription",
      "@id": "https://www.example.com/package/silver",
      "name": "Silver",
      "sameAs": "https://www.example.com/package/silver",
      "identifier": "example.com:silver",
      "commonTier": false
    },
    {
      "@type": "MediaSubscription",
      "@id": "https://www.example.com/package/gold",
      "name": "Gold",
      "sameAs": "https://www.example.com/package/gold",
      "identifier": "example.com:gold",
      "commonTier": false
    }
  ],

ऐड-ऑन जोड़ें

किसी ऐड-ऑन सदस्यता मॉडल में, सेवा देने वाली कंपनी, उपयोगकर्ताओं को अपनी सदस्यता का दायरा बढ़ाने और मूल सदस्यता में चैनल जोड़ने की सुविधा देती है. उपयोगकर्ता जितने चाहें उतने चैनल जोड़ सकते हैं. नीचे दी गई इमेज, पैकेज स्ट्रक्चर का एक उदाहरण है.

हर उपयोगकर्ता, बेसिक चैनल से शुरुआत करता है. साथ ही, वह पीआरओ, स्पोर्टज़, और मूवीमैक्स चैनलों को किसी भी प्लैटफ़ॉर्म पर जोड़ सकता है.
छठी इमेज. ऐड-ऑन सदस्यता पैकेज का स्ट्रक्चर.

अगर आपका चैनल सभी उपयोगकर्ताओं के लिए उपलब्ध है और इसके लिए अलग से पैसे नहीं देने होते हैं, तो आप पैकेज को सामान्य टीयर पैकेज के साथ मर्ज कर सकते हैं.

कोड के नीचे दिए गए उदाहरण में, बुनियादी पैकेज एक सामान्य टियर है, क्योंकि सभी उपयोगकर्ताओं के पास इस पैकेज में मौजूद सभी कॉन्टेंट का ऐक्सेस है.

"requiresSubscription": [
    {
      "@type": "MediaSubscription",
      "@id": "https://www.example.com/package/basic",
      "name": "Basic",
      "sameAs": "https://www.example.com/package/basic",
      "commonTier": true
    },
    {
      "@type": "MediaSubscription",
      "@id": "https://www.example.com/packages/basic/pro",
      "name": "PRO",
      "sameAs": "https://www.example.com/package/pro",
      "identifier": "example.com:pro",
      "commonTier": false
    },
    {
      "@type": "MediaSubscription",
      "@id": "https://www.example.com/package/sportz",
      "name": "Sportz",
      "sameAs": "https://www.example.com/package/sports",
      "identifier": "example.com:sportz",
      "commonTier": false
    },
    {
      "@type": "MediaSubscription",
      "@id": "https://www.example.com/package/moviemax",
      "name": "Moviemax",
      "sameAs": "https://www.example.com/package/moviemax",
      "identifier": "example.com:moviemax",
      "commonTier": false
    }
  ],

काटे जाने वाले कॉन्टेंट के पैकेज

कॉन्टेंट मॉडल में, पैकेज में मौजूद कॉन्टेंट को काटे जाने के बाद, सेवा देने वाली कंपनी ऐसे पैकेज बेचती है जिनमें अन्य पैकेज का कुछ कॉन्टेंट शामिल होता है. नीचे दी गई इमेज, पैकेज स्ट्रक्चर का एक उदाहरण है.

वेन डायग्राम, जिसमें पैकेज 1, 2, और 3 के बीच ओवरलैप को
            &#39;कॉमन टियर&#39; लेबल दिया गया है.
सातवीं इमेज. एक-दूसरे से जुड़े कॉन्टेंट के साथ पैकेज का स्ट्रक्चर.

नीचे दिए गए कोड के उदाहरण में, सेवा देने वाली कंपनी तीन पैकेज ऑफ़र करती है, जिनमें से कुछ पैकेज सभी पैकेज में बंटे होते हैं. इस मामले में, चौथे पैकेज जो सामान्य टियर को दिखाता है, ज़रूरी है. इसमें वे तीनों कॉन्टेंट शामिल होने चाहिए जो तीनों पैकेज में उपलब्ध हैं.

"requiresSubscription": [
    {
      "@type": "MediaSubscription",
      "@id": "https://www.example.com/package/1",
      "name": "Package 1",
      "sameAs": "https://www.example.com/package/1",
      "identifier": "example.com:package1",
      "commonTier": false
    },
    {
      "@type": "MediaSubscription",
      "@id": "https://www.example.com/package/2",
      "name": "Package 2",
      "sameAs": "https://www.example.com/package/2",
      "identifier": "example.com:package2",
      "commonTier": false
    },
    {
      "@type": "MediaSubscription",
      "@id": "https://www.example.com/package/3",
      "name": "Package 3",
      "sameAs": "https://www.example.com/package/3",
      "identifier": "example.com:package3",
      "commonTier": false
    },
    {
      "@type": "MediaSubscription",
      "@id": "https://www.example.com/package/common",
      "name": "Common Tier Package",
      "sameAs": "https://www.example.com/package/common",
      "commonTier": true
    }
  ],

एक जैसे कॉन्टेंट के बिना पैकेज देखना

ऐसे कॉन्टेंट मॉडल में जहां सभी कॉन्टेंट पैकेज एक-दूसरे से अलग नहीं होते, तो सेवा देने वाली कंपनी ऐसे पैकेज बेचती है जिनमें दूसरे पैकेज का कोई कॉन्टेंट शामिल नहीं होता. नीचे दी गई इमेज, पैकेज स्ट्रक्चर का एक उदाहरण है.

पैकेज 1, 2, और 3 पूरी तरह से अलग हैं.
आठवीं इमेज. पैकेज की बनावट, जिसमें एक भी कॉन्टेंट मेल न खाता हो.

नीचे दिए गए उदाहरण में, सेवा देने वाली कंपनी तीन पैकेज ऑफ़र करती है. इनमें सभी पैकेज को अलग-अलग नहीं करते. किसी सामान्य टियर पैकेज की ज़रूरत नहीं है.

"requiresSubscription": [
    {
      "@type": "MediaSubscription",
      "@id": "https://www.example.com/package/1",
      "name": "Package 1",
      "sameAs": "https://www.example.com/package/1",
      "identifier": "example.com:package1",
      "commonTier": false
    },
    {
      "@type": "MediaSubscription",
      "@id": "https://www.example.com/package/2",
      "name": "Package 2",
      "sameAs": "https://www.example.com/package/2",
      "identifier": "example.com:package2",
      "commonTier": false
    },
    {
      "@type": "MediaSubscription",
      "@id": "https://www.example.com/package/3",
      "name": "Package 3",
      "sameAs": "https://www.example.com/package/3",
      "identifier": "example.com:package3",
      "commonTier": false
    }
  ],

एनटाइटलमेंट एंडपॉइंट

इस सेक्शन की जानकारी का इस्तेमाल करके, एचटीटीपीएस एंडपॉइंट होस्ट करें. इस एंडपॉइंट पर, उपयोगकर्ता से जुड़े एनटाइटलमेंट दिखते हैं.

पहले से आवश्यक

शुरू करने से पहले, पुष्टि करें कि आपकी सेवा, Google पर OAuth 2.0 फ़्लो के साथ काम करती है.

अनुरोध करें

उपयोगकर्ता के एनटाइटलमेंट पाने के लिए, Google एक अनुरोध भेजता है. इसमें, उपयोगकर्ता का OAuth टोकन शामिल होता है. आपके एंडपॉइंट को उस OAuth टोकन के आधार पर उपयोगकर्ता की पहचान करनी होगी. यह उदाहरण देखें:

GET /resource HTTP/1.1
Host: server.example.com
Authorization: Bearer <OAuthToken>

जवाब

आपके एंडपॉइंट को इन प्रॉपर्टी के साथ रिस्पॉन्स देने की ज़रूरत है:

प्रॉपर्टी
subscription

ज़रूरी

यह एक फ़ील्ड है जो रूट रिस्पॉन्स में शामिल है.

subscription.type

ज़रूरी

इस प्रॉपर्टी में ये वैल्यू हो सकती हैं:

  • ActiveSubscription: उपयोगकर्ता के पास सेवा देने वाली कंपनी की चालू सदस्यता है.
  • ActiveTrial: उपयोगकर्ता ने सेवा देने वाली कंपनी के लिए मुफ़्त में आज़माने की सुविधा चालू की हुई है.
  • InactiveSubscription: उपयोगकर्ता के पास चालू सदस्यता या चालू ट्रायल नहीं है.
subscription.expiration_date

ज़रूरी नहीं

ISO 8601 फ़ॉर्मैट में, इस एनटाइटलमेंट की समयसीमा खत्म होने की तारीख, जिसमें समय क्षेत्र भी शामिल है. ज़्यादा जानकारी के लिए, खत्म होने की तारीख देखें.

entitlements

ज़रूरी नहीं

इस रूट प्रॉपर्टी में, entitlementId वैल्यू मौजूद होती हैं.

entitlements.entitlement

अगर आपके स्ट्रीमिंग कैटलॉग का ऐक्सेस, सदस्यता के हिसाब से अलग-अलग होता है, तो ज़रूरी है.

इस प्रॉपर्टी में entitlementId है. ज़्यादा जानकारी के लिए, एनटाइटलमेंट आइडेंटिफ़ायर देखें.

entitlements.expiration_date

ज़रूरी नहीं

इस सदस्यता के खत्म होने की तारीख, ISO 8601 फ़ॉर्मैट में होनी चाहिए. इसमें समय क्षेत्र भी शामिल है. ज़्यादा जानकारी के लिए, खत्म होने की तारीख देखें.

खत्म होने की तारीखें

एंडपॉइंट के जवाब में दो प्रॉपर्टी होती हैं, जो खत्म होने की तारीखों से जुड़ी होती हैं: subscription.expiration_date और entitlements.expiration_date. आप इनमें से एक या दोनों को शामिल कर सकते हैं, लेकिन दोनों को नहीं. आप कौनसा सदस्यता इस्तेमाल करेंगे, यह आपकी सदस्यता के मॉडल पर निर्भर करता है.

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

आपके स्ट्रीमिंग कैटलॉग का ऐक्सेस, उपयोगकर्ता की सदस्यता की जानकारी के हिसाब से अलग-अलग होता है.

अगर आपकी सदस्यता के मॉडल में कई टीयर या ऐसे ऐड-ऑन हैं जो समय के साथ खत्म हो जाते हैं, तो इनमें से कोई एक काम करें:

  • अगर entitlements.entitlement की सभी वैल्यू एक ही समय पर खत्म हो जाती हैं, तो subscription.expiration_date की जानकारी दें.
  • अगर कुछ entitlements.entitlement वैल्यू की समयसीमा अलग-अलग है, तो entitlements.expiration_date की जानकारी दें.

रिस्पॉन्स के उदाहरण

नीचे अलग-अलग सदस्यता स्थितियों के जवाब के उदाहरण दिए गए हैं:

  • सक्रिय सदस्यता
  • सदस्यता खत्म होने की तारीख के साथ चालू सदस्यता
  • कोई सदस्यता नहीं ली गई है
  • कई टियर या ऐड-ऑन वाली चालू सदस्यताएं

सक्रिय सदस्यता

चालू सदस्यता

उपयोगकर्ता के पास example.com की चालू सदस्यता है. इस मामले में, सभी सदस्यों के पास आपके पूरे स्ट्रीमिंग कैटलॉग का ऐक्सेस होगा, भले ही उन्होंने किसी भी तरह की सदस्यता ली हो.


{
  "subscription" : {
    "type": "ActiveSubscription",
  }
}

सदस्यता खत्म होने की तारीख के साथ चालू सदस्यता

खत्म होने की तारीख के साथ चालू सदस्यता

उपयोगकर्ता के पास example.com की चालू सदस्यता है और उसकी सदस्यता खत्म होने की तारीख है. ऐसे मामले में, सभी सदस्यों के पास आपके पूरे स्ट्रीमिंग कैटलॉग का ऐक्सेस होता है, भले ही उन्होंने किसी भी तरह की सदस्यता ली हो.


{
  "subscription" : {
    "type": "ActiveSubscription",
    "expiration_date": "2019-11-10T10:00:00Z"
  }
}

कोई सदस्यता नहीं ली गई है

कोई सदस्यता नहीं

उपयोगकर्ता के पास example.com की सदस्यता नहीं है.


{
  "subscription" : {
    "type": "InactiveSubscription"
  }
}

कई टियर या ऐड-ऑन वाली चालू सदस्यताएं

कई टियर या ऐड-ऑन पर चालू सदस्यताएं

उपयोगकर्ता के पास किसी तय तारीख तक example.com:premium की सदस्यता है.


{
  "subscription" : {
    "type": "ActiveSubscription",
  }
  "entitlements": [
    {
      "entitlement": "example.com:premium",
      "expiration": "2019-11-10T10:00:00Z"
    }
  ]
}

तय सीमा

Google, उपयोगकर्ता के एनटाइटलमेंट से जुड़ी जानकारी को हर छह घंटे में रीफ़्रेश करता है. हर सेकंड में ज़्यादा से ज़्यादा क्वेरी (क्यूपीएस) को आसान बनाने के लिए, Google समय के साथ आपके एंडपॉइंट पर क्वेरी को बराबर रूप से बांटता है. इसलिए, आप नीचे दिए गए फ़ॉर्मूला का इस्तेमाल करके, अपने एंडपॉइंट के लिए अनुमानित औसत क्यूपीएस का अनुमान लगा सकते हैं:

अनुमानित QPS = <उपयोगकर्ताओं की कुल संख्या> / 21,600 सेकंड (6 घंटे x 60 मिनट x 60 सेकंड)

अगर आपके पास बड़ी संख्या में उपयोगकर्ता हैं, तो Google छह घंटे के अंतराल में बदलाव कर सकता है. अगर ज़रूरी हो, तो कॉन्फ़िगरेशन के बारे में चर्चा करने के लिए Google से संपर्क करें.

Google से संपर्क करें

आपका एंडपॉइंट तैयार होने पर, एंडपॉइंट का यूआरएल बताने के लिए Google से संपर्क करें.

कार्रवाई के लिए ऐक्सेस की खास बातें

रेफ़रंस के बारे में जानकारी पाने के लिए, ऐक्शन ऐक्सेस की खास बातों से जुड़ी प्रॉपर्टी सेक्शन देखें.