ข้อกําหนดในการเข้าถึง

ผู้ใช้ต้องการดูหรือฟังเนื้อหาที่มีสิทธิ์เข้าถึงอยู่แล้ว เช่น เนื้อหาที่สมัครใช้บริการที่มีอยู่ ถ้า Google รู้เนื้อหาที่ผู้ใช้สามารถทำได้ เข้าถึงแอปหรือแพลตฟอร์มของคุณ Google จะสร้างผลการค้นหาที่ดีขึ้นได้ หรือตอบสนองเพื่อนำทางผู้ใช้ ไปยังเนื้อหานั้น

วันที่
รูปที่ 1 ข้อกำหนดในการเข้าถึงช่วยให้สมาชิกของคุณเข้าถึง เนื้อหาในแอปหรือแพลตฟอร์มของคุณ

ระบุข้อกำหนดในการเข้าถึงเนื้อหา

คุณต้องระบุข้อกำหนดการเข้าถึงสำหรับแพ็กเกจเนื้อหาแต่ละแพ็กเกจใน แคตตาล็อก เมื่อคุณทำเช่นนั้น โปรดพิจารณาคำถามต่อไปนี้

  • ผู้ใช้ต้องเข้าสู่ระบบในแอปหรือแพลตฟอร์มของคุณเพื่อเข้าถึงเนื้อหาหรือไม่
  • ผู้ใช้ต้องมีการสมัครใช้บริการไหม

    การดำเนินการเพื่อรับชมเท่านั้น

    • ผู้ใช้จำเป็นต้องสมัครใช้บริการจากผู้ให้บริการภายนอกไหม
    • คุณเสนอการสมัครใช้บริการแบบเป็นขั้น หลายแพ็กเกจ หรือส่วนเสริมไหม
  • การดำเนินการเพื่อรับชมเท่านั้น: ผู้ใช้ต้องเช่าหรือซื้อเนื้อหาไหม

  • ข้อกำหนดการเข้าถึงมีการเปลี่ยนแปลงเมื่อเวลาผ่านไปหรือไม่

  • ข้อกำหนดในการเข้าถึงขึ้นอยู่กับตำแหน่งของอุปกรณ์หรือไม่

ประเภทการจํากัดการเข้าถึง

การจำกัดการเข้าถึงมี 2 ประเภทดังนี้

ประเภทเพย์วอลล์

คุณจำกัดการเข้าถึงเนื้อหาได้ตามประเภทเพย์วอลล์ ตารางต่อไปนี้ ให้รายละเอียดเกี่ยวกับเพย์วอลล์ประเภทต่างๆ

ประเภทเพย์วอลล์ ตัวอย่าง หมวดหมู่
ไม่จำเป็นต้องซื้อหรือเข้าสู่ระบบ Crackle nologinrequired
ผู้ใช้ต้องเข้าสู่ระบบ แต่ไม่จำเป็นต้องสมัครใช้บริการแบบชำระเงิน วูดู (AVOD) free
ผู้ใช้ต้องมีการสมัครใช้บริการที่ใช้งานอยู่ การเข้าถึงไม่ขึ้นอยู่กับ ระดับการสมัครใช้บริการ Netflix

subscription

ผู้ใช้ต้องมีการสมัครใช้บริการที่ใช้งานอยู่ สิทธิ์เข้าถึงขึ้นอยู่กับ ระดับการสมัครใช้บริการ Hulu (ส่วนเสริม)

subscription

เนื้อหาจะพร้อมให้บริการเป็นระยะเวลาหนึ่งหลังจาก การซื้อ Vudu rental
เนื้อหาพร้อมให้ใช้งานได้ไม่จำกัดระยะเวลาหลังจาก การซื้อ Vudu purchase
เนื้อหาพร้อมใช้งานโดยการสมัครใช้บริการเคเบิล HBO Go externalSubscription

ประเภทเพย์วอลล์สำหรับการดำเนินการเกี่ยวกับนาฬิกา

หากต้องการระบุประเภทเพย์วอลล์เนื้อหาสำหรับการดำเนินการเพื่อรับชม ให้ใช้ 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"
    }
  },
  ...
}

ประเภทเพย์วอลล์สำหรับการดำเนินการเพื่อฟัง

หากต้องการระบุประเภทเพย์วอลล์ของเนื้อหาสำหรับการดำเนินการเพื่อฟัง ให้ใช้ 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"
    }
  },
  ...
}

พื้นที่ทางภูมิศาสตร์

คุณต้องระบุพื้นที่ทางภูมิศาสตร์ที่เนื้อหาพร้อมให้บริการ ใช้รายการเดียวหรือ ทั้ง 2 พร็อพเพอร์ตี้ต่อไปนี้

ผู้ใช้จะเข้าถึงเนื้อหาได้หากตําแหน่งของอุปกรณ์อยู่ภายในภูมิภาคที่ ที่ระบุใน eligibleRegion และไม่ได้อยู่ภายในภูมิภาคที่ระบุไว้ใน ineligibleRegion

พร็อพเพอร์ตี้ eligibleRegion และ ineligibleRegion อนุญาตสิ่งต่อไปนี้ มีดังนี้

หากเนื้อหามีให้บริการทั่วโลก ให้ใช้ค่าพิเศษต่อไปนี้สำหรับ eligibleRegion:

"eligibleRegion": "EARTH",

กรณีการใช้งานในภูมิภาคที่มีสิทธิ์

ต่อไปนี้คือตัวอย่างกรณีการใช้งานของพร็อพเพอร์ตี้ eligibleRegion

  • ตัวอย่างที่ 1: eligibleRegion ที่มีรายชื่อประเทศ
  • ตัวอย่างที่ 2: eligibleRegion ที่มีออบเจ็กต์ GeoShape ที่ มีรายการรหัสไปรษณีย์
  • ตัวอย่างที่ 3: eligibleRegion ที่มีออบเจ็กต์ GeoShape ที่ มีรายการรหัส Forward Sortation Area (FSA)
  • ตัวอย่างที่ 4: eligibleRegion ที่มีออบเจ็กต์ GeoShape ที่ มีรหัส DMA
  • ตัวอย่างที่ 5: eligibleRegion ที่มีรายการออบเจ็กต์ GeoShape รายการ โดยแต่ละรายการจะมีรหัส DMA
  • ตัวอย่างที่ 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

eligibleRegion ที่มีออบเจ็กต์ GeoShape ที่ มีรายการรหัสไปรษณีย์:


"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"
    ]
  }
}

ตัวอย่างที่ 3

eligibleRegion ที่มีออบเจ็กต์ GeoShape ที่ มีรายการรหัส Forward Sortation Area (FSA) ดังนี้


"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"
    ]
  }
}

ตัวอย่าง 4

eligibleRegion ที่มีออบเจ็กต์ GeoShape ที่ มีรหัส DMA:


"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

eligibleRegion ที่มีรายการออบเจ็กต์ GeoShape รายการ แต่ละรายการจะมีรหัส DMA ดังนี้


"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"
         }
      }
   ]
}

ตัวอย่างที่ 6

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. เราได้เรียก API ไปยัง ปลายทางการให้สิทธิ์เพื่อรับ ตัวระบุการให้สิทธิ์
  2. เราจะค้นหาตัวระบุการให้สิทธิ์ที่จำเป็นของเนื้อหาจากสื่อของคุณ ฟีดการดำเนินการ
  3. เราจับคู่ entitlementId ของผู้ใช้กับ identifier ของ ออบเจ็กต์การสมัครใช้บริการสื่อในฟีด หากมีอย่างน้อย entitlementId ที่ตรงกัน 1 รายการ เราจะพิจารณาว่าผู้ใช้สามารถเข้าถึง เนื้อหา
วันที่
รูปที่ 2 หนึ่งในตัวระบุการให้สิทธิ์ของผู้ใช้ตรงกับ ตัวระบุการให้สิทธิ์ที่จำเป็นของเนื้อหา

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
        ...
      },
      ...
    }
  },
  ...
}

Use Case การเข้าถึงทั่วไป

กรณีการใช้งานการเข้าถึงที่พบบ่อยมีดังนี้

  • ฟรี (ไม่ต้องเข้าสู่ระบบ): เนื้อหาพร้อมใช้งานโดยไม่ต้องเข้าสู่ระบบ สมัครสมาชิก หรือซื้อ
  • ฟรี (ต้องเข้าสู่ระบบ): ผู้ใช้ต้องเข้าสู่ระบบ แต่เนื้อหาไม่จำเป็นต้องสมัครรับข้อมูล
  • การสมัครใช้บริการระดับเดียว ต้องสมัครใช้บริการเพื่อดูเนื้อหานี้ สมาชิกทุกคนสามารถเข้าถึงเนื้อหา เนื้อหาต่างๆ ไม่ว่าจะเป็นภาพยนตร์หรือตอน โดยไม่คำนึงถึงการติดตาม ใหม่
  • การสมัครใช้บริการแบบหลายชั้น: คุณต้องสมัครใช้บริการเพื่อดูเนื้อหา สมาชิกสามารถเข้าถึง เนื้อหาที่แตกต่างกัน ไม่ว่าจะเป็นภาพยนตร์หรือตอน โดยอิงตามระดับการสมัครใช้บริการ ตัวอย่างเช่น Silver กับ Gold
  • การสมัครใช้บริการส่วนเสริม: เนื้อหา ต้องสมัครใช้บริการ สมาชิกสามารถเพิ่มเนื้อหาพรีเมียมนอกเหนือจาก สมาชิกเป็นประจำ
  • การซื้อครั้งเดียว: เนื้อหาสามารถ ซื้อได้เรื่อยๆ หลังจากนั้นผู้ใช้จะเข้าถึงได้โดยไม่มีกำหนด
  • รายการทีวีสด: การสมัครใช้บริการรวมสิทธิ์เข้าถึง ช่องระดับท้องถิ่น ระดับประเทศ และช่องพรีเมียม
  • การสมัครใช้บริการของบุคคลที่สาม: เนื้อหาดังกล่าวกำหนดให้ผู้ใช้เข้าสู่ระบบด้วยผู้ให้บริการเคเบิล

ฟรี (ไม่ต้องเข้าสู่ระบบ)

ไม่จำเป็นต้องเข้าสู่ระบบ

เนื้อหาพร้อมใช้งานโดยไม่ต้องเข้าสู่ระบบหรือสมัครสมาชิก


{
  "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"
    }
  }
}

การสมัครใช้บริการแบบหลายระดับ

ในรูปแบบการสมัครใช้บริการแบบเป็นระดับ ผู้ให้บริการจะมี ระดับการสมัครใช้บริการ เช่น Gold, Silver และ Bronze ผู้ใช้ที่มีการสมัครใช้บริการระดับสูงกว่าจะเข้าถึงได้ทั้งหมด เนื้อหาระดับล่างสุด อย่างไรก็ตาม ผู้ใช้ที่มีสมาชิกระดับต่ำกว่า ไม่สามารถเข้าถึงเนื้อหาระดับบนได้

วันที่
รูปที่ 3 รูปแบบการสมัครใช้บริการแบบเป็นขั้นและ ของการให้สิทธิ์

พิจารณาสถานการณ์ต่อไปนี้

  • Jane สมัครระดับ Gold การให้สิทธิ์ของคุณ ปลายทางแสดงผลตัวระบุ entitlementId ต่อไปนี้
    • example.com:bronze
    • example.com:silver
    • example.com:gold
  • จอห์นสมัครใช้บริการระดับบรอนซ์ การให้สิทธิ์ของคุณ ปลายทางแสดง entitlementId ต่อไปนี้
    • example.com:bronze
  • ฟีดการใช้สื่อของคุณจะอธิบายข้อกำหนดต่อไปนี้
    • ภาพยนตร์ A ต้องใช้ example.com:bronze
    • ภาพยนตร์ ข ต้องใช้ example.com:silver

ในสถานการณ์นี้ Google จะกำหนดระดับการเข้าถึงต่อไปนี้สำหรับเจน และวิชัย:

  • ทั้ง Jane และ John มีสิทธิ์เข้าถึงภาพยนตร์ A ได้
  • เจนจิรามีสิทธิ์เข้าถึงภาพยนตร์ ข แต่จอห์นไม่สามารถเข้าถึงได้
{
  "actionAccessibilityRequirement": {
    "@type": "ActionAccessSpecification",
    "category": "subscription",
    "requiresSubscription": {
      "@type": "MediaSubscription",
      "@id": "http://www.example.com/basic_subscription",
      "name": "Bronze",
      "commonTier": true
      ...
    },
    ...
  }
}

การสมัครใช้บริการเสริม

ในรูปแบบการสมัครใช้บริการส่วนเสริม ผู้ให้บริการอนุญาตให้ผู้ใช้ ขยายการให้สิทธิ์และเพิ่มช่องไปยังการติดตามพื้นฐาน ผู้ใช้ สามารถเพิ่มช่องได้มากเท่าที่ต้องการ

วันที่
รูปที่ 4 รูปแบบการสมัครใช้บริการส่วนเสริมและ ของการให้สิทธิ์

พิจารณาสถานการณ์ต่อไปนี้

  • Jane มี PRO และ Sportz นอกเหนือจาก การสมัครใช้บริการ Basic ปลายทางการให้สิทธิ์จะแสดงผล ตัวระบุ entitlementId ต่อไปนี้
    • example.com:basic
    • example.com:pro
    • example.com:sportz
  • วิชัยสมัครใช้บริการเฉพาะรุ่น Basic การให้สิทธิ์ของคุณ ปลายทางแสดง entitlementId ต่อไปนี้
    • example.com:basic
  • ฟีดการใช้สื่อของคุณจะอธิบายข้อกำหนดต่อไปนี้
    • ภาพยนตร์ A ต้องใช้ example.com:basic
    • ภาพยนตร์ ข ต้องใช้ example.com:pro

ในสถานการณ์นี้ Google จะกำหนดระดับการเข้าถึงต่อไปนี้สำหรับเจน และวิชัย:

  • ทั้ง Jane และ John มีสิทธิ์เข้าถึงภาพยนตร์ A ได้
  • เจนจิรามีสิทธิ์เข้าถึงภาพยนตร์ ข แต่จอห์นไม่สามารถเข้าถึงได้
{
  "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
  • รวม expectAcceptanceOf ไว้ใน actionAccessibilityRequirement เพื่อแสดงราคาของ การซื้อ

บริการเช่า

เนื้อหาจะพร้อมให้บริการเป็นระยะเวลาหนึ่งหลังจาก การซื้อ


{
  "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
  • รวม expectAcceptanceOf ไว้ใน actionAccessibilityRequirement เพื่อแสดงราคาของ ให้เช่า

รายการทีวีสด

ในฟีดการใช้สื่อ คุณสามารถจำกัดการเข้าถึงรายการทีวีสดได้ channel หรือ เหตุการณ์โดยอิงจาก เงื่อนไขของผู้ใช้ 2 ประการดังต่อไปนี้

  • ตำแหน่งอุปกรณ์ของผู้ใช้

    ในการจำกัดการเข้าถึงช่องทีวี ให้ระบุพื้นที่ที่ผู้ใช้ เข้าถึงได้ ปกติเงื่อนไขนี้จะมีผลกับการออกอากาศในท้องถิ่น ช่องทีวี

  • สถานะบัญชีของผู้ใช้

    หากการเข้าถึงช่องทีวีขึ้นอยู่กับการตั้งค่าระดับบัญชีของผู้ใช้ ใช้ ตัวระบุการให้สิทธิ์แก่ ถือเป็นข้อจำกัด

    เงื่อนไขนี้มักใช้กับกรณีการใช้งานต่อไปนี้

    • แพ็กเกจ: ช่องระดับประเทศมักรวมอยู่ในแพ็กเกจ แพ็กเกจ แล้วเลือกแพ็กเกจที่ต้องการสมัครใช้บริการ
    • ส่วนเสริม: ช่องพรีเมียมบางช่องกำหนดให้ผู้ใช้ต้อง เลือกเพิ่มช่องเพิ่มเติมในการสมัครรับข้อมูล
    • เครือข่ายกีฬาระดับภูมิภาค (RSN): โดยปกติแล้ว RSN จะเป็น ที่เชื่อมโยงกับ "บ้าน" ของผู้ใช้ ตำแหน่งนั้น ผู้ใช้ดูเนื้อหาได้ บน RSN แม้ในเวลาที่เดินทางออกนอก "บ้าน" ของตนเอง ตำแหน่งนั้น

การสมัครใช้บริการของบุคคลที่สาม

การสมัครใช้บริการของบุคคลที่สาม

สมาชิกสามารถดูเนื้อหาได้จากบริการอื่น


{
  "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 กำหนดให้ต้องมี จากผู้ให้บริการเคเบิล

แพ็กเกจระดับทั่วไป

สมาชิกทุกคนสามารถดูคอนเทนต์ระดับทั่วไปได้ ไม่ว่าสมาชิก แพ็กเกจการสมัครใช้บริการ ระดับทั่วไปใช้กับเนื้อหาทั้งหมดที่มี category ของ subscription สำหรับข้อมูลเพิ่มเติมเกี่ยวกับพร็อพเพอร์ตี้ category โปรดดู ส่วนประเภทเพย์วอลล์

เหตุใดจึงต้องมีแพ็กเกจระดับทั่วไป

ผลิตภัณฑ์ Google หลายอย่างมีทีวีและ คำแนะนำภาพยนตร์แก่ผู้ใช้ นี้ ประกอบด้วย Google Search, Android TV และ Google Assistant วิธีตั้งค่าผู้ใช้ ความคาดหวังด้านต้นทุน Google ต้องเข้าใจว่าเนื้อหาใดบ้างที่พร้อมให้ทุกคนใช้งาน ผ่านการใช้ระดับร่วม นอกจากนี้ Google ยังต้องเข้าใจด้วยว่า เนื้อหาพร้อมให้บริการแก่สมาชิกที่มีแพ็กเกจการสมัครรับข้อมูลเฉพาะ

Google แนะนำภาพยนตร์/รายการทีวีที่ให้บริการในระดับทั่วไป เว้นแต่คุณจะรองรับ entitlement API API ช่วยให้ Google เข้าใจชื่อระดับทั่วไป ผู้ใช้งานเข้าถึงได้

ฉันควรสร้างแพ็กเกจระดับทั่วไปเมื่อใด

คุณต้องมีแพ็กเกจระดับทั่วไปเมื่อบริการเสนอเนื้อหาที่ ใช้งานได้สำหรับสมาชิกทุกคน ซึ่งรวมถึงบริการที่มีเพียงแพ็กเกจเดียว และบริการที่นำเสนอแพ็กเกจหรือส่วนเสริมหลายรายการ

ผู้ให้บริการที่ไม่มีเนื้อหาสำหรับสมาชิกทุกรายไม่จำเป็นต้องสร้าง แพ็กเกจระดับทั่วไป เช่น ผู้ให้บริการที่มอบ เนื้อหาในแพ็กเกจทั้งหมดของตน

ตัวอย่างระดับทั่วไป

ต่อไปนี้คือตัวอย่างของระดับทั่วไป

การสมัครใช้บริการแบบเป็นขั้น

ในรูปแบบการสมัครใช้บริการแบบเป็นขั้น ผู้ให้บริการมีการสมัครใช้บริการหลายรายการ เช่น ระดับ Gold, Silver และ Bronze ผู้ใช้ที่มีส่วนเสริม การสมัครใช้บริการระดับบนสุดจะมีสิทธิ์เข้าถึงเนื้อหาทั้งหมดในระดับที่ต่ำกว่า ผู้ใช้ ผู้ที่สมัครใช้บริการในระดับต่ำกว่าจะไม่มีสิทธิ์เข้าถึงเนื้อหาที่ด้านบน ภาพต่อไปนี้เป็นตัวอย่างของโครงสร้างแพ็กเกจ

วันที่ ระดับโกลด์มีเนื้อหาทั้งหมดของระดับ Silver ซึ่ง
            เองก็มีระดับ Bronze ทั้งหมด
รูปที่ 5 โครงสร้างแพ็กเกจการสมัครใช้บริการแบบเป็นขั้น

ในตัวอย่างโค้ดต่อไปนี้ แพ็กเกจ Bronze คือระดับทั่วไปเนื่องจาก ผู้ใช้จะมีสิทธิ์เข้าถึงเนื้อหาทั้งหมดในระดับนั้น

"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
    }
  ],

ส่วนเสริม

ในรูปแบบการสมัครใช้บริการส่วนเสริม ผู้ให้บริการอนุญาตให้ผู้ใช้ขยาย และเพิ่มช่องไปยังการสมัครใช้บริการแบบพื้นฐาน ผู้ใช้สามารถเพิ่มเป็น ช่องทางที่หลากหลายตามต้องการ ภาพต่อไปนี้เป็นตัวอย่างของแพ็กเกจ ใหม่

วันที่ ผู้ใช้ทุกคนเริ่มต้นด้วยช่องพื้นฐาน และสามารถเลือกเพิ่ม
            ช่อง PRO, Sportz และ Moviemax ผสมกัน
รูปที่ 6 โครงสร้างแพ็กเกจการสมัครใช้บริการส่วนเสริม

หากคุณมีช่องที่พร้อมใช้งานสำหรับผู้ใช้ทุกคน และไม่มีค่าใช้จ่ายสำหรับ คุณจะสามารถรวมแพ็กเกจ กับแพ็กเกจระดับทั่วไปได้

ในตัวอย่างโค้ดต่อไปนี้ แพ็กเกจพื้นฐานคือระดับทั่วไปเนื่องจาก ผู้ใช้ มีสิทธิ์เข้าถึงเนื้อหาทั้งหมดในแพ็กเกจนี้

"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
            ที่มีป้ายกำกับ &quot;Common Tier&quot;
รูปที่ 7 โครงสร้างแพ็กเกจที่มีเนื้อหาทับซ้อนกัน

ในตัวอย่างโค้ดต่อไปนี้ ผู้ให้บริการมีข้อเสนอ 3 แพ็กเกจ เนื้อหาซ้อนทับกันในทุกแพ็กเกจ ในกรณีนี้ แพ็กเกจที่ 4 ที่แสดงถึงระดับทั่วไปที่จำเป็น ต้องมีเนื้อหาทั้งหมด พร้อมให้ใช้งานในทั้ง 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
    },
    {
      "@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 แยกจากกันโดยสิ้นเชิง
รูปที่ 8 โครงสร้างแพ็กเกจที่ไม่ตัดกัน เนื้อหา

ในตัวอย่างต่อไปนี้ ผู้ให้บริการเสนอแพ็กเกจ 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
    }
  ],

ปลายทางของการให้สิทธิ์

ใช้ข้อมูลจากส่วนนี้เพื่อโฮสต์ปลายทาง HTTPS ที่แสดงผล การให้สิทธิ์ที่เชื่อมโยงกับผู้ใช้

วิชาบังคับก่อน

ก่อนที่จะเริ่มต้น โปรดยืนยันว่าบริการของคุณรองรับ ขั้นตอน OAuth 2.0 กับ Google

ส่งคำขอ

ในการรับการให้สิทธิ์ของผู้ใช้ 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 ซึ่งรวมถึงเขตเวลา ดูรายละเอียดเพิ่มเติมได้ที่ วันที่หมดอายุ

วันที่หมดอายุ

มีพร็อพเพอร์ตี้ 2 รายการในการตอบกลับปลายทางที่จัดการกับการหมดอายุ วันที่: subscription.expiration_date และ entitlements.expiration_date คุณ สามารถรวมรายการใดรายการหนึ่งได้หรือไม่มีก็ได้ แต่ไม่ใช่ทั้ง 2 อย่างไม่ได้ คุณจะใช้วิธีใดนั้นขึ้นอยู่กับ รูปแบบการสมัครสมาชิกของคุณ

รูปแบบการสมัครสมาชิก
การเข้าถึงแคตตาล็อกสตรีมมิงของคุณจะเหมือนกันสำหรับสมาชิกทุกราย เนื่องจากคุณไม่ต้องระบุ 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 จะรีเฟรชข้อมูลการให้สิทธิ์ของผู้ใช้สูงสุดทุก 6 ชั่วโมง ถึง ปรับจำนวนคำค้นหาสูงสุดต่อวินาที (QPS) ให้ราบรื่น โดย Google จะกระจายคำค้นหา ไปยังปลายทางอย่างสม่ำเสมอตลอด ดังนั้น คุณจะสามารถประเมินค่าเฉลี่ยที่คาดไว้ QPS สำหรับปลายทางของคุณโดยใช้สูตรต่อไปนี้

QPS เฉลี่ยที่คาดหวัง = <จำนวนผู้ใช้ทั้งหมด> / 21,600 วินาที (6 ชั่วโมง x 60 นาที x 60 วินาที)

หากคุณรองรับผู้ใช้จำนวนมาก Google จะปรับช่วงเวลา 6 ชั่วโมงได้ หากจำเป็น ให้ติดต่อ Google เพื่อพูดคุยเกี่ยวกับการกำหนดค่า

ติดต่อ Google

เมื่อปลายทางพร้อมแล้ว โปรดติดต่อ Google เพื่อแจ้ง URL ของปลายทาง

พร็อพเพอร์ตี้ข้อกำหนดการเข้าถึงการดำเนินการ

โปรดดู ส่วนพร็อพเพอร์ตี้ข้อกำหนดการเข้าถึงการดำเนินการสำหรับการอ้างอิง