Canlı TV kanalları

Canlı TV kanalı entegrasyonu, kullanıcıların Google Home, Android, Android TV veya Google TV gibi Google Asistan'ı destekleyen herhangi bir cihazda TV kanallarını izlemek ve değiştirmek için sesli komutları kullanmasına olanak tanır.

TV kanallarını sesle değiştirme
Şekil 1. TV kanallarını sesle değiştirme

Hizmet sağlayıcılar, Media Actions feed'lerinde kanalların ayrıntılarını sağlamak için BroadcastService, CableOrSatelliteService, TelevisionChannel ve Organization işaretleme nesnelerini kullanabilir. Bu sayede Google, aşağıdaki kullanıcı sorgularını destekleyebilir:

  • "Ok Google, ExampleTV'yi aç."
  • "Ok Google, ÖrnekTV-HD'ye geç."
  • "Ok Google, 7. kanala geç."
  • "Ok Google, ExampleTV-Drama."

Canlı TV kanalı varlık türleri

Canlı TV kanalı entegrasyonu için medya kataloğu feed'inizde 4 öğe türü (Organization, BroadcastService, CableOrSatelliteService ve TelevisionChannel) gerekir. Bu varlık türleri aşağıdaki soruları yanıtlamanıza yardımcı olur:

  • TV servis sağlayıcısı kim ve hangi hizmetleri sunuyor?
  • Bu hizmetlerin her biri kapsamında sunulan kanal grubu (kanal listesi olarak da bilinir) nedir?

Aşağıdaki bölümlerde, öğe türleri daha ayrıntılı olarak ele alınmakta ve önceki sorulara yanıt verilmektedir.

Aşağıdaki bölümleri okurken aşağıdaki ilişki şemasını göz önünde bulundurun:

Çeşitli canlı TV kanalı öğe türleri arasındaki bağlantılar
Şekil. Çeşitli canlı TV kanalı öğesi türleri arasındaki bağlantılar.

TV servis sağlayıcıyı temsil etme

TV operatörü olarak da bilinen TV servis sağlayıcı, abonelere bir dizi TV programı sunan kuruluştur. Çoğu durumda bu kişi, medya kataloğu feed'inin de yaratıcısıdır. Bu, Organization öğesiyle gösterilir. Feed'e TV operatörünü temsil eden yalnızca bir Organization öğesi eklenmelidir.

Örneğin, "ExampleTV Digital" adlı kurgusal bir IPTV servis sağlayıcı, "Digital Prime+" adlı hizmeti kapsamında ABD'deki kullanıcı tabanına 180 kanala erişim sağlar.

{
  "@context": ["http://schema.org", {"@language": "en"}],
  "@type":"Organization",
  "@id":"http://example.com/exampletv/digital",
  "name":"ExampleTV Digital",
  "sameAs": "https://en.wikipedia.org/wiki/exampletv_digital"
}

TV servis sağlayıcısı tarafından sağlanan hizmeti temsil eder.

CableOrSatelliteService, bir TV operatörü tarafından sağlanan bölgesel kablo, uydu veya internet TV hizmetini temsil eder. Genellikle kanal listesiyle ilişkilendirilir ve Kuruluş öğesiyle temsil edilen TV operatörüne bağlanır. TV operatörü tarafından sağlanan hizmetlerin sayısına bağlı olarak feed'e bir veya daha fazla CableOrSatelliteService öğesi eklenebilir.

Bu örnekte, ABD'de ulusal kapsama sahip "Digital Prime+" hizmetini tanımlamak için bir CableOrSatelliteService öğesi oluşturulur. provider mülkünü kullanarak "ExampleTV Digital" TV servis sağlayıcısına nasıl referans verildiğini unutmayın.

{
  "@context": ["http://schema.org", {"@language": "en"}],
  "@type":"CableOrSatelliteService",
  "@id":"http://example.com/example_iptv/us",
  "name":"Example TV Digital Prime Plus US Service",
  "provider": {
    "@type": "Organization",
    "@id": "http://example.com/exampletv/digital",
  },
  "areaServed":[
    {
      "@type":"Country",
      "name": "US",
    }
  ]
}

TV servis sağlayıcısı tarafından sağlanan kanalları temsil eder.

Kanallar birlikte 3 öğeyle temsil edilir: Organization, BroadcastService ve TelevisionChannel.

  • BroadcastService varlığı, doğrusal program dağıtan bir televizyon kanalını temsil eden temel varlıktır. Organization ve TelevisionChannel varlıklarına bağlantı verir ve program rehberini (veya kanal programını) birlikte temsil eden BroadcastEvent varlık grubu tarafından referans verilir.

  • Organization varlığı, TV programları üretip dağıtan kanalı temsil eder. Çoğu durumda bu, BroadcastService öğesinin bir kopyasıdır. Diğer durumlarda ise BroadcastService öğesinin bağlı olduğu TV ağını temsil edebilir. BroadcastService öğesi, broadcastAffiliateOf özelliğini kullanarak Organization öğesine referans verir. Bu iki varlık türünün birbiriyle nasıl ilişkili olduğunu anlamak çok önemlidir. Bu konu hakkında bilgi edinmek için aşağıdaki Kuruluş ile BroadcastService öğesi arasındaki ilişkiyi anlama bölümünü inceleyin.

  • TelevisionChannel öğesi, BroadcastService'u kanal numarası veya dize gibi benzersiz bir tanımlayıcıyla ve bölgesel kablo, uydu veya internet TV hizmetinde (sağlayıcıların mülklerinde (ör. web siteleri veya uygulamalar) göründüğü sırayla) CableOrSatelliteService öğesi tarafından temsil edilen şekilde tanımlar.

TelevisionChannel, CableOrSatelliteService ve Organization varlıkları birlikte bir kadro kavramı oluşturur.

Örneğimizde, "ABC Movies "in, "ExampleTV Digital " TV servis sağlayıcısının ABD'deki "Digital Prime+" hizmeti kapsamında erişim sağladığı 180 kanaldan biri olduğunu varsayalım. Bu kanal, kanal listesinde 7. sırada ve ExampleTV Digital'ın Android TV uygulamasında 18. sırada gösterilir. Bu durum aşağıdaki şekilde gösterilmiştir:

Her biri kanalı temsil eden bir BroadcastService öğesi (bu durumda, ExampleTV-MovieChannel ve ExampleTV-ComedyChannel adlı kurgusal kanallar için iki BroadcastService öğesi)


{
 "@context": ["http://schema.org", {"@language": "en"}],
 "@type":"BroadcastService",
 "@id":"https://www.example.com/exampletv/broadcast/movie",
 "name": "ExampleTV-Movie Channel",
 "alternateName": [
    "Example Television Movie Channel",
    "Example TV Movie Channel"
 ],
 "description": "A fictional Internet Protocol TV movie channel.",
 "broadcastDisplayName":"ExampleTV-MovieChannel",
 "broadcastAffiliateOf":{
    "@type":"Organization",
    "@id":"http://www.example.com/exampletv/movie"
 },
 "identifier": [
    {
       "@type": "PropertyValue",
       "propertyID": "TMS_ID",
       "value": "12345"
    }
 ]
 }

TV ağını temsil eden bir kuruluş öğesi (bu örnekte ExampleTV Dijital Hizmeti (Kuruluş), ExampleTV-MovieChannel (Kuruluş) ve ExampleTV-ComedyChannel (Kuruluş) olmak üzere 2 kanala erişim sağlar)


{
 "@context": ["http://schema.org", {"@language": "en"}],
 "@type":"Organization",
 "@id":"http://example.com/exampletv/movie",
 "name":"ExampleTV Movie Channel",
 "sameAs": "https://en.wikipedia.org/wiki/exampletv_movie"
 },
 {
 "@context": ["http://schema.org", {"@language": "en"}],
 "@type":"Organization",
 "@id":"http://example.com/exampletv/comedy",
 "name":"ExampleTV Comedy Channel",
 "sameAs": "https://en.wikipedia.org/wiki/exampletv_comedy"
 }

Sağlayıcı (Kuruluş - TVOperatörü) tarafından sunulan (CableOrSatelliteService) hizmetinde bu öğenin kullanılabildiği kanal numarasını temsil eden her BroadcastService için bir (veya daha fazla) TelevisionChannel öğesi (bu durumda TelevisionChannel öğeleri, ExampleTV Digital Service IPTV'de 7. kanalda ExampleTV Movie programının ve 9. kanalda ExampleTV Comedy programının bulunduğunu gösterir)

  {
    "@context": ["http://schema.org", {"@language": "en"}],
    "@type":"TelevisionChannel",
    "@id":"http://example.com/exampletv/extv-movie",
    "broadcastChannelId":"7",
    "broadcastServiceTier":"Standard",
    "inBroadcastLineup":{
      "@type":"CableOrSatelliteService",
      "@id":"http://example.com/example_iptv/us"
    },
    "providesBroadcastService":{
      "@type":"BroadcastService",
      "@id":"https://www.example.com/exampletv/broadcast/movie"
    }
  }

Organization ve BroadcastService öğesi arasındaki ilişkiyi anlama

BroadcastService öğesi, TV kanalını temsil eden temel öğedir. Organization öğesi zorunlu bir feed öğesi olsa da aslında yalnızca sağlayıcıların aşağıda sunulan üç istisna kullanım alanını modellemelerine izin vermek için vardır. Bu nedenle, sağlayıcılar istisna kullanım alanları dışındaki tüm kullanım alanları için aşağıdaki önemli noktaya uymalıdır.

Bu kuralın 3 istisnası vardır. Bu istisnalarda Organization ve BroadcastService varlıkları arasında 1:N ilişkisi olmalıdır. Bunlar aşağıda açıklanmıştır:

Yerel veya satış ortağı kanalları

Örneğin, Fox'un Seattle, ABD'de KCPQ ve San Francisco, ABD'de KTVU adlı yerel satış ortağı kanalları vardır. KCPQ, Seattle'ı kapsayan yerel haberler yayınlarken KTVU, özellikle San Francisco'daki kullanıcı tabanının ihtiyaçlarına yönelik programlar yayınlayabilir. Çoğu durumda kullanıcılar kanalın yerel adını bilmeyebilir ve kanalı Fox olarak tanıyabilir.

Bu durumda, yerel veya satış ortağı kanallarının her biri kendi BroadcastService varlıklarıyla temsil edilmelidir. Bu varlıkların tümü tek bir Organization varlığına bağlanmalıdır. Kullanıcı bu kanallara geçmek istediğinde Google Asistan'dan "Fox'a geç" veya "KTVU/KCPQ'ya geç" demesini isteyebilir. Google, kullanıcının cihaz konumuna ve kullanıcının istenen kanalı izleme hakkına sahip olup olmadığına bağlı olarak uygun yerel kanala geçer. Önceki örnekte, Fox'u temsil eden bir kuruluş öğesi oluşturur ve bunu her biri yerel bir satış ortağı olan KCPQ ve KTVU'yu temsil eden iki BroadcastService öğesine bağlarsınız.

ABC kanalının ve yerel satış ortağı kanallarının nasıl modellenmesi gerektiğini gösteren başka bir örnek:

Kuruluş AdıBroadcastService Adıİlişkisi olanlar
ABCKAALOrganization ve BroadcastService öğesi arasında 1:N ilişkisi
ABCKABC
ABCKAEF
ABCKAKE
ABCKAMC
ABCKAPP
ABCKATC
ABCKATN
ABCKATU
ABCKATV

Başka bir örnek inceleyelim. Burada WXVT ve WYOU yerel CBS kanallarıdır. CBS Sports Network yerel bir kanal değildir ve daha önce bahsedilen yerel satış ortaklarından bağımsızdır.

Kuruluş AdıBroadcastService Adıİlişkisi olanlar
CBSWXVTOrganization ve BroadcastService öğesi arasında 1:N ilişkisi
CBSWYOU
CBS Sports NetworkCBS Sports Network HDOrganization ve BroadcastService öğesi arasında 1:1 ilişki

Bu konuyu daha iyi anlamak için EPIX ve EPIX 2 kanallarını örnek alalım. Her ikisi de ülke genelinde kullanılabilir, tamamen farklı programlar sunar, bir kanalın varyantları değildir ve bu nedenle yerel kanal olarak kabul edilmez.

Kuruluş Adı BroadcastService Adı İlişkisi olanlar
EPIX EPIX Organization ve BroadcastService öğesi arasında 1:1 ilişki
EPIX 2 EPIX 2 Organization ve BroadcastService öğesi arasında 1:1 ilişki

Zaman kaydırmalı kanallar

Bu durumda, her zaman kaydırılmış kanal kendi BroadcastService varlığıyla temsil edilmeli ve bunların tümü bir Organization varlığına bağlanmalıdır. Zaman kaydırmalı kanalların nasıl modellenmesi gerektiğini gösteren bir örnek aşağıda verilmiştir:

Kuruluş AdıBroadcastService Adıİlişkisi olanlar
STARZ EncoreSTARZ Encore WestOrganization ve BroadcastService öğesi arasında 1:N ilişkisi
STARZ EncoreSTARZ Encore East

Akış kalitesi farkı olan kanallar

Örneğin, STARZ Encore Action HD ve STARZ Encore Action SD kanalları aynı programları (EPG) taşır ve aralarındaki tek fark yayın kalitesidir. Bu durumda, her video kalitesi akış kanalı kendi BroadcastService varlığıyla temsil edilmeli ve bunların tümü bir Organization varlığına bağlanmalıdır.

Akış kalitesi farkı olan kanalların nasıl modellenmesi gerektiğini gösteren bir örnek aşağıda verilmiştir:

Kuruluş AdıBroadcastService Adıİlişkisi olanlar
SBSSBSOrganization ve BroadcastService öğesi arasında 1:N ilişkisi
SBSSBS HD

Aşağıda, tüm kullanım alanlarını bir araya getiren karmaşık bir kullanım alanı örneği verilmiştir:

Kuruluş Adı BroadcastService Adı İlişkisi olanlar
Starz STARZ East Zaman kaydırmalı kanallar nedeniyle Organization ve BroadcastService öğesi arasında 1:N ilişkisi
Starz STARZ West
STARZ Kids & FamilySTARZ Kids & FamilyOrganization ve BroadcastService öğesi arasında 1:1 ilişki
STARZ Encore BlackSTARZ Encore BlackOrganization ve BroadcastService öğesi arasında 1:1 ilişki
STARZ Encore ClsicSTARZ Encore ClassicOrganization ve BroadcastService öğesi arasında 1:1 ilişki
STARZ Encore FamilySTARZ Encore FamilyOrganization ve BroadcastService öğesi arasında 1:1 ilişki
STARZ Encore SuspenseSTARZ Encore SuspenseOrganization ve BroadcastService öğesi arasında 1:1 ilişki
STARZ Encore ActionSTARZ Encore Action HDAkış kalitesi farklılıkları nedeniyle Organization ve BroadcastService öğesi arasında 1:N ilişkisi
STARZ Encore ActionSTARZ Encore Action SD
STARZ EncoreSTARZ Encore WestZaman kaydırmalı kanallar nedeniyle Organization ve BroadcastService öğesi arasında 1:N ilişkisi
STARZ EncoreSTARZ Encore East

Örnekler

Bölgesel kanal listeleri olan ulusal TV hizmeti sağlayıcı

Example Cable TV Company (Organization) adlı kurgusal bir TV servis sağlayıcı, New York ve San Francisco'da bir kablo ağı üzerinden canlı TV hizmeti sunmaktadır. Hizmette iki kanal bulunur: ExampleTV (Organization) ve ExampleTV2 (Organization):

{
  "@context":"http://schema.org",
  "@type":"Organization",
  "@id": "http://example.com/example_cable_tv_company",
  "name": "Example Cable TV Company",
  "sameAs": "https://en.wikipedia.org/wiki/example_cable_company"
},
{
  "@context":"http://schema.org",
  "@type":"Organization",
  "@id":"http://example.com/exampletv",
  "name":"ExampleTV Network",
  "sameAs": "https://en.wikipedia.org/wiki/exampletv"
},
{
  "@context":"http://schema.org",
  "@type":"Organization",
  "@id":"http://example.com/exampletv2",
  "name":"ExampleTV2 Network",
  "sameAs": "https://en.wikipedia.org/wiki/exampletv2"
}

Bu BroadcastService öğeleri, HD kalitesindeki ExampleTV ve ExampleTV2 kanalları için derin bağlantıların ve erişim şartının ayrıntılarını sağlar:

{
  "@context":"http://schema.org",
  "@type":"BroadcastService",
  "@id":"https://www.example.com/exampletv/broadcast/hd",
  "name": "ExampleTV HD",
  "description": "A fictional TV broadcast service in HD",
  "broadcastDisplayName":"ExampleTV-HD",
  "broadcastAffiliateOf":{
    "@type":"Organization",
    "@id":"http://www.example.com/exampletv"
  },
  "potentialAction": {
    "@type": "WatchAction",
    "target": [
      {
        "@type": "EntryPoint",
        "urlTemplate": "http://www.example.com/exampletv/broadcast/hd?autoplay=true",
        "inLanguage": "en",
        "actionPlatform": [
          "http://schema.org/DesktopWebPlatform",
          "http://schema.org/MobileWebPlatform",
          "http://schema.org/AndroidPlatform",
          "http://schema.org/AndroidTVPlatform",
          "http://schema.org/IOSPlatform"
        ]
      },
      {
        "@type": "EntryPoint",
        "urlTemplate": "http://www.example.com/exampletv/broadcast/androidtv/hd?autoplay=true",
        "inLanguage": "en",
        "actionPlatform": [
          "http://schema.googleapis.com/GoogleVideoCast"
        ]
      }
    ],
    "actionAccessibilityRequirement": {
      "@type": "ActionAccessSpecification",
      "category": "subscription",
      "requiresSubscription": {
        "@type": "MediaSubscription",
        "@id": "http://www.example.com/exampletv/basic_subscription",
        "name": "Basic subscription",
        "identifier": "example.com:basic",
        "commonTier": true
      },
      "eligibleRegion": [
        {
          "@type": "Country",
          "name": "US"
        }
      ]
    }
  },
  "identifier": [
    {
      "@type": "PropertyValue",
      "propertyID": "TMS_ID",
      "value": "102610"
    },
    {
      "@type": "PropertyValue",
      "propertyID": "_PARTNER_ID_",
      "value": "exampletv-12345"
    }
  ]
},
{
  "@context":"http://schema.org",
  "@type":"BroadcastService",
  "@id":"https://www.example.com/exampletv2/broadcast",
  "name": "ExampleTV2",
  "description": "A fictional TV broadcast service ExampleTV 2",
  "broadcastDisplayName":"ExampleTV2",
  "broadcastAffiliateOf":{
    "@type":"Organization",
    "@id":"http://www.example.com/exampletv2"
  },
  "potentialAction": {
    "@type": "WatchAction",
    "target": [
      {
        "@type": "EntryPoint",
        "urlTemplate": "http://www.example.com/exampletv2/broadcast/?autoplay=true",
        "inLanguage": "en",
        "actionPlatform": [
          "http://schema.org/DesktopWebPlatform",
          "http://schema.org/MobileWebPlatform",
          "http://schema.org/AndroidPlatform",
          "http://schema.org/AndroidTVPlatform",
          "http://schema.org/IOSPlatform"
        ]
      },
      {
        "@type": "EntryPoint",
        "urlTemplate": "http://www.example.com/exampletv2/broadcast/androidtv/?autoplay=true",
        "inLanguage": "en",
        "actionPlatform": [
          "http://schema.googleapis.com/GoogleVideoCast"
        ]
      }
    ],
    "actionAccessibilityRequirement": {
      "@type": "ActionAccessSpecification",
      "category": "subscription",
      "requiresSubscription": {
        "@type": "MediaSubscription",
        "@id": "http://www.example.com/exampletv/basic_subscription",
        "name": "Basic subscription",
        "identifier": "example.com:basic",
        "commonTier": true
      },
      "eligibleRegion": [
        {
          "@type": "Country",
          "name": "US"
        }
      ]
    }
  },
  "identifier": [
    {
      "@type": "PropertyValue",
      "propertyID": "TMS_ID",
      "value": "333339"
    },
    {
      "@type": "PropertyValue",
      "propertyID": "_PARTNER_ID_",
      "value": "exampletv2-11115"
    }
  ]
}

Bu CableOrSatelliteService varlıkları, ülke genelinde TV hizmeti sağlayıcısı Örnek Kablolu TV Şirketi (Organization) tarafından New York'ta (DMA_ID=501) ve San Francisco Bay Bölgesi'nde (DMA_ID=807) sunulan kablolu TV hizmetlerini tanımlar:

{
  "@context":"http://schema.org",
  "@type":"CableOrSatelliteService",
  "@id":"http://example.com/example_cable_tv_company_new_york",
  "name":"Example Cable TV Company - New York",
  "provider": {
    "@type": "Organization",
    "@id": "http://example.com/example_cable_tv_company",
  },
  "areaServed":[
    {
      "@type": "GeoShape",
      "@id": "http://example.com/newyork_01",
      "identifier": [
        {
          "@type": "PropertyValue",
          "propertyID": "DMA_ID",
          "value": "501"
        }
      ]
    }
  ]
},
{
  "@context":"http://schema.org",
  "@type":"CableOrSatelliteService",
  "@id":"http://example.com/example_cable_tv_company_san_francisco_bay",
  "name":"Example Cable TV Company - San Francisco Bay",
  "provider": {
    "@type": "Organization",
    "@id": "http://example.com/example_cable_tv_company",
    "name": "Example Cable TV Company"
  },
  "areaServed":[
    {
      "@type": "GeoShape",
      "@id": "http://example.com/bayarea_01",
      "identifier": [
        {
          "@type": "PropertyValue",
          "propertyID": "DMA_ID",
          "value": "807"
        }
      ]
    }
  ]
}

Bu TelevisionChannel öğeleri, bölgesel TV servis sağlayıcısı Example Cable TV Company - San Francisco Bay'in 7. kanalda ExampleTV-HD ve 11. kanalda ExampleTV2, bölgesel TV servis sağlayıcısı Example Cable TV Company - New York'un ise 12. kanalda ExampleTV-HD ve 4. kanalda ExampleTV2 olduğunu gösterir:

{
  "@context":"http://schema.org",
  "@type":"TelevisionChannel",
  "@id":"http://example.com/example_cable_tv_company_san_francisco/exampletv",
  "broadcastChannelId":"7",
  "broadcastServiceTier":"Standard",
  "inBroadcastLineup":{
    "@type":"CableOrSatelliteService",
    "@id":"http://example.com/example_cable_tv_company_san_francisco_bay"
  },
  "providesBroadcastService":{
    "@type":"BroadcastService",
    "@id":"https://www.example.com/exampletv/broadcast/hd"
  }
},
{
  "@context":"http://schema.org",
  "@type":"TelevisionChannel",
  "@id":"http://example.com/example_cable_tv_company_san_francisco/exampletv2",
  "broadcastChannelId":"11",
  "broadcastServiceTier":"Standard",
  "inBroadcastLineup":{
    "@type":"CableOrSatelliteService",
    "@id":"http://example.com/example_cable_tv_company_san_francisco_bay"
  },
  "providesBroadcastService":{
    "@type":"BroadcastService",
    "@id":"https://www.example.com/exampletv2/broadcast"
  }
},
{
  "@context":"http://schema.org",
  "@type":"TelevisionChannel",
  "@id":"http://example.com/example_cable_tv_company_new_york/exampletv",
  "broadcastChannelId":"12",
  "broadcastServiceTier":"Standard",
  "inBroadcastLineup":{
    "@type":"CableOrSatelliteService",
    "@id":"http://example.com/example_cable_tv_company_new_york"
  },
  "providesBroadcastService":{
    "@type":"BroadcastService",
    "@id":"https://www.example.com/exampletv/broadcast/hd"
  }
},
{
  "@context":"http://schema.org",
  "@type":"TelevisionChannel",
  "@id":"http://example.com/example_cable_tv_company_new_york/exampletv2",
  "broadcastChannelId":"4",
  "broadcastServiceTier":"Standard",
  "inBroadcastLineup":{
    "@type":"CableOrSatelliteService",
    "@id":"http://example.com/example_cable_tv_company_new_york"
  },
  "providesBroadcastService":{
    "@type":"BroadcastService",
    "@id":"https://www.example.com/exampletv2/broadcast"
  }
}

İnternetteki ulusal TV servis sağlayıcısı

ExampleTV Dijital Hizmeti (Organization) adlı kurgusal bir internet protokolü televizyon hizmeti sağlayıcı, internette ExampleTV-Movie (Organization) ve ExampleTV-Comedy (Organization) adlı iki kanalı içeren canlı TV hizmeti sunmaktadır:

{
  "@context":"http://schema.org",
  "@type":"Organization",
  "@id":"http://example.com/exampletv/digital",
  "name":"ExampleTV Digital Service",
  "sameAs": "https://en.wikipedia.org/wiki/exampletv_digital_service"
},
{
  "@context":"http://schema.org",
  "@type":"Organization",
  "@id":"http://example.com/exampletv/movie",
  "name":"ExampleTV Movie",
  "sameAs": "https://en.wikipedia.org/wiki/exampletv_movie"
},
{
  "@context":"http://schema.org",
  "@type":"Organization",
  "@id":"http://example.com/exampletv/comedy",
  "name":"ExampleTV Comedy",
  "sameAs": "https://en.wikipedia.org/wiki/exampletv_comedy"
}

Bu iki BroadcastService öğesi, ExampleTV-Movie ve ExampleTV-Comedy adlı kurgusal kanallar için derin bağlantıların ve erişim şartının ayrıntılarını sağlar:

{
  "@context":"http://schema.org",
  "@type":"BroadcastService",
  "@id":"https://www.example.com/exampletv/broadcast/movie",
  "name": "ExampleTV-Movie",
  "description": "A fictional Internet Protocol TV movie channel.",
  "broadcastDisplayName":"ExampleTV-Movie",
  "broadcastAffiliateOf":{
    "@type":"Organization",
    "@id":"http://www.example.com/exampletv/movie"
  },
  "potentialAction": {
    "@type": "WatchAction",
    "target": {
      "@type": "EntryPoint",
      "urlTemplate": "http://www.example.com/exampletv/broadcast/movie?autoplay=true",
      "inLanguage": "en",
      "actionPlatform": [
        "http://schema.org/DesktopWebPlatform",
        "http://schema.org/MobileWebPlatform",
        "http://schema.org/AndroidPlatform",
        "http://schema.org/AndroidTVPlatform",
        "http://schema.org/IOSPlatform",
        "http://schema.googleapis.com/GoogleVideoCast"
      ]
    },
    "actionAccessibilityRequirement": {
      "@type": "ActionAccessSpecification",
      "category": "subscription",
      "requiresSubscription": {
        "@type": "MediaSubscription",
        "@id": "http://www.example.com/exampletv/basic_subscription",
        "name": "Basic subscription",
        "identifier": "example.com:basic",
        "commonTier": true
      },
      "eligibleRegion": [
        {
          "@type": "Country",
          "name": "US"
        }
      ]
    }
  },
  "identifier": [
    {
      "@type": "PropertyValue",
      "propertyID": "TMS_ID",
      "value": "12345"
    },
    {
      "@type": "PropertyValue",
      "propertyID": "_PARTNER_ID_",
      "value": "exampletv-movie-33345"
    }
  ]
},
{
  "@context":"http://schema.org",
  "@type":"BroadcastService",
  "@id":"https://www.example.com/exampletv/broadcast/comedy",
  "name": "ExampleTV-Comedy",
  "description": "A fictional Internet Protocol TV comedy channel.",
  "broadcastDisplayName":"ExampleTV-Comedy",
  "broadcastAffiliateOf":{
    "@type":"Organization",
    "@id":"http://www.example.com/exampletv/comedy"
  },
  "potentialAction": {
    "@type": "WatchAction",
    "target": {
      "@type": "EntryPoint",
      "urlTemplate": "http://www.example.com/exampletv/broadcast/comedy?autoplay=true",
      "inLanguage": "en",
      "actionPlatform": [
        "http://schema.org/DesktopWebPlatform",
        "http://schema.org/MobileWebPlatform",
        "http://schema.org/AndroidPlatform",
        "http://schema.org/AndroidTVPlatform",
        "http://schema.org/IOSPlatform",
        "http://schema.googleapis.com/GoogleVideoCast"
      ]
    },
    "actionAccessibilityRequirement": {
      "@type": "ActionAccessSpecification",
      "category": "subscription",
      "requiresSubscription": {
        "@type": "MediaSubscription",
        "@id": "http://www.example.com/exampletv/basic_subscription",
        "name": "Basic subscription",
        "identifier": "example.com:basic",
        "commonTier": true
      },
      "eligibleRegion": [
        {
          "@type": "Country",
          "name": "US"
        }
      ]
    }
  },
  "identifier": [
    {
      "@type": "PropertyValue",
      "propertyID": "TMS_ID",
      "value": "15555"
    },
    {
      "@type": "PropertyValue",
      "propertyID": "_PARTNER_ID_",
      "value": "exampletv-comedy-12323"
    }
  ]
}

Bu CableOrSatelliteService, ulusal kapsama alanına sahip ExampleTV Dijital Hizmeti servis sağlayıcısını tanımlar:

{
  "@context":"http://schema.org",
  "@type":"CableOrSatelliteService",
  "@id":"http://example.com/example_iptv/us",
  "name":"Example TV Digital Service - US",
  "provider": {
    "@type": "Organization",
    "@id": "http://example.com/exampletv/digital",
  },
  "areaServed":[
    {
      "@type":"Country",
      "name": "US",
    }
  ]
}

Bu TelevisionChannel öğeleri, ExampleTV Dijital Hizmeti IPTV'de ExTV-Movie kanalında ExampleTV Film ve ExTV-Comedy kanalında ExampleTV Komedi programlarının bulunduğunu gösterir:

{
  "@context":"http://schema.org",
  "@type":"TelevisionChannel",
  "@id":"http://example.com/exampletv/extv-movie",
  "broadcastChannelId":"ExTV-Movie",
  "broadcastServiceTier":"Standard",
  "inBroadcastLineup":{
    "@type":"CableOrSatelliteService",
    "@id":"http://example.com/example_iptv/us"
  },
  "providesBroadcastService":{
    "@type":"BroadcastService",
    "@id":"https://www.example.com/exampletv/broadcast/movie"
  }
},
{
  "@context":"http://schema.org",
  "@type":"TelevisionChannel",
  "@id":"http://example.com/exampletv/extv-comedy",
  "broadcastChannelId":"ExTV-Comedy",
  "broadcastServiceTier":"Standard",
  "inBroadcastLineup":{
    "@type":"CableOrSatelliteService",
    "@id":"http://example.com/example_iptv/us"
  },
  "providesBroadcastService":{
    "@type":"BroadcastService",
    "@id":"https://www.example.com/exampletv/broadcast/comedy"
  }
}

Kanal geçişinin TV servis sağlayıcısı tarafından karşılandığı kanal listesi

ExampleTV Dijital Hizmeti (Organization) adlı kurgusal bir TV servis sağlayıcı, sattığı bir set üstü kutu üzerinden kullanıcılarına kurgusal IPTV kanalları ExampleTV-Sports (Organization) ve ExampleTV-Drama'ya (Organization) erişim sağlar.

{
  "@context":"http://schema.org",
  "@type":"Organization",
  "@id":"http://example.com/exampletv/digital",
  "name":"ExampleTV Digital Service",
  "sameAs": "https://en.wikipedia.org/wiki/exampletv_digital_service"
},
{
  "@context":"http://schema.org",
  "@type":"Organization",
  "@id":"http://example.com/exampletv/sports",
  "name":"ExampleTV Sports",
  "sameAs": "https://en.wikipedia.org/wiki/exampletv_sports"
},
{
  "@context":"http://schema.org",
  "@type":"Organization",
  "@id":"http://example.com/exampletv/drama",
  "name":"ExampleTV Drama",
  "sameAs": "https://en.wikipedia.org/wiki/exampletv_drama"
}

Bu iki BroadcastService öğesi, ExampleTV-Sports ve ExampleTV-Drama kanallarını açıklar (derin bağlantılar isteğe bağlıdır):

{
  "@context":"http://schema.org",
  "@type":"BroadcastService",
  "@id":"https://www.example.com/exampletv/sports/broadcast",
  "name": "ExampleTV-Sports",
  "description": "A fictional Internet Protocol TV service that streams live sports events",
  "broadcastDisplayName":"ExampleTV-Sports",
  "broadcastAffiliateOf":{
    "@type":"Organization",
    "@id":"http://www.example.com/exampletv/sports"
  },
  "identifier": [
    {
      "@type": "PropertyValue",
      "propertyID": "_PARTNER_ID_",
      "value": "exampletv-sports-11123"
    }
  ]
},
{
  "@context":"http://schema.org",
  "@type":"BroadcastService",
  "@id":"https://www.example.com/exampletv/drama/broadcast",
  "name": "ExampleTV-Drama",
  "description": "A fictional Internet Protocol TV service that streams TV drama shows",
  "broadcastDisplayName":"ExampleTV-Drama",
  "broadcastAffiliateOf":{
    "@type":"Organization",
    "@id":"http://www.example.com/exampletv/drama"
  },
  "identifier": [
    {
      "@type": "PropertyValue",
      "propertyID": "_PARTNER_ID_",
      "value": "exampletv-drama-11500"
    }
  ]
}

Bu CableOrSatelliteService, ulusal kapsama alanına sahip ExampleTV Dijital Hizmeti servis sağlayıcısını tanımlar:

{
  "@context":"http://schema.org",
  "@type":"CableOrSatelliteService",
  "@id":"http://example.com/example_iptv/us",
  "name":"Example TV Digital Service - US",
  "provider": {
    "@type": "Organization",
    "@id": "http://example.com/exampletv/digital",
  },
  "areaServed":[
    {
      "@type":"Country",
      "name": "US",
    }
  ]
}

Bu TelevisionChannel öğeleri, ExampleTV Dijital Hizmeti IPTV'de ExTV-Movie kanalında ExampleTV Film ve ExTV-Comedy kanalında ExampleTV Komedi programlarının bulunduğunu gösterir:

{
  "@context":"http://schema.org",
  "@type":"TelevisionChannel",
  "@id":"http://example.com/exampletv/extv-sports",
  "broadcastChannelId":"ExampleTV-Sports",
  "broadcastServiceTier":"Standard",
  "inBroadcastLineup":{
    "@type":"CableOrSatelliteService",
    "@id":"http://example.com/example_iptv/us"
  },
  "providesBroadcastService":{
    "@type":"BroadcastService",
    "@id":"https://www.example.com/exampletv/drama/broadcast"
  }
},
{
  "@context":"http://schema.org",
  "@type":"TelevisionChannel",
  "@id":"http://example.com/exampletv/extv-drama",
  "broadcastChannelId":"ExampleTV-Drama",
  "broadcastServiceTier":"Standard",
  "inBroadcastLineup":{
    "@type":"CableOrSatelliteService",
    "@id":"http://example.com/example_iptv/us"
  },
  "providesBroadcastService":{
    "@type":"BroadcastService",
    "@id":"https://www.example.com/exampletv/drama/broadcast"
  }
}

Satış ortağı veya yerel kanalları olan TV servis sağlayıcı

Example Cable TV Company (Organization), ABD'deki bir kablo ağı üzerinden canlı TV hizmeti (CableOrSatelliteService olarak adlandırılan "Example Cable TV Service") sunan bir TV servis sağlayıcısıdır (TV operatörü olarak da bilinir). Hizmette bir TV ağı bulunur: ExampleTV Network (Organization):

{
  "@context":"http://schema.org",
  "@type":"Organization",
  "@id": "http://example.com/example_cable_tv_company",
  "name": "Example Cable TV Company",
  "sameAs": "https://en.wikipedia.org/wiki/example_cable_company"
},
{
  "@context":"http://schema.org",
  "@type":"Organization",
  "@id":"http://example.com/exampletv",
  "name":"ExampleTV Network",
  "sameAs": "https://en.wikipedia.org/wiki/exampletv"
}

ExampleTV Network (Kuruluş), New York'ta NYTV (BroadcastService) ve New Jersey'de NJTV (BroadcastService) olmak üzere 2 yerel kanala sahiptir. Bu BroadcastService öğeleri, NYTV ve NJTV kanalları için derin bağlantıların ve erişim şartının ayrıntılarını sağlar. Bu BroadcastServices'in her ikisinin de broadcastAffiliateOf mülkü aracılığıyla aynı kuruluşa (ExampleTV Network) bağlandığını unutmayın:

{
  "@context":"http://schema.org",
  "@type":"BroadcastService",
  "@id":"https://www.example.com/nytv/broadcast",
  "name": "NYTV",
  "description": "A fictional TV broadcast service",
  "broadcastDisplayName":"NYTV",
  "broadcastAffiliateOf":{
    "@type":"Organization",
    "@id":"http://www.example.com/exampletv"
  },
  "potentialAction": {
    "@type": "WatchAction",
    "target": [
      {
        "@type": "EntryPoint",
        "urlTemplate": "http://www.example.com/nytv/broadcast/hd?autoplay=true",
        "inLanguage": "en",
        "actionPlatform": [
          "http://schema.org/DesktopWebPlatform",
          "http://schema.org/MobileWebPlatform",
          "http://schema.org/AndroidPlatform",
          "http://schema.org/AndroidTVPlatform",
          "http://schema.org/IOSPlatform"
        ]
      }
    ],
    "actionAccessibilityRequirement": {
      "@type": "ActionAccessSpecification",
      "category": "subscription",
      "requiresSubscription": {
        "@type": "MediaSubscription",
        "@id": "http://www.example.com/nytv/basic_subscription",
        "name": "Basic subscription",
        "identifier": "example.com:basic"
      },
      "eligibleRegion": [
          {
              "@id": "http://sling.com/dma/501",
              "@type": "GeoShape",
              "addressCountry": "US",
              "identifier": {
                  "@type": "PropertyValue",
                  "propertyID": "DMA_ID",
                  "value": "501"
              }
          }
      ]
    }
  },
  "identifier": [
    {
      "@type": "PropertyValue",
      "propertyID": "TMS_ID",
      "value": "102610"
    },
    {
      "@type": "PropertyValue",
      "propertyID": "_PARTNER_ID_",
      "value": "nytv-12345"
    }
  ]
},
{
  "@context":"http://schema.org",
  "@type":"BroadcastService",
  "@id":"https://www.example.com/njtv/broadcast/hd",
  "name": "NJTV HD",
  "description": "A fictional TV broadcast service in HD",
  "broadcastDisplayName":"NJTV-HD",
  "broadcastAffiliateOf":{
    "@type":"Organization",
    "@id":"http://www.example.com/exampletv"
  },
  "potentialAction": {
    "@type": "WatchAction",
    "target": [
      {
        "@type": "EntryPoint",
        "urlTemplate": "http://www.example.com/njtv/broadcast/hd?autoplay=true",
        "inLanguage": "en",
        "actionPlatform": [
          "http://schema.org/DesktopWebPlatform",
          "http://schema.org/MobileWebPlatform",
          "http://schema.org/AndroidPlatform",
          "http://schema.org/AndroidTVPlatform",
          "http://schema.org/IOSPlatform"
        ]
      }
    ],
    "actionAccessibilityRequirement": {
      "@type": "ActionAccessSpecification",
      "category": "subscription",
      "requiresSubscription": {
        "@type": "MediaSubscription",
        "@id": "http://www.example.com/njtv/basic_subscription",
        "name": "Basic subscription",
        "identifier": "example.com:basic"
      },
      "eligibleRegion": [
          {
              "@id": "http://sling.com/dma/807",
              "@type": "GeoShape",
              "addressCountry": "US",
              "identifier": {
                  "@type": "PropertyValue",
                  "propertyID": "DMA_ID",
                  "value": "807"
              }
          }
      ]
    }
  },
  "identifier": [
    {
      "@type": "PropertyValue",
      "propertyID": "TMS_ID",
      "value": "102611"
    },
    {
      "@type": "PropertyValue",
      "propertyID": "_PARTNER_ID_",
      "value": "njtv-12345"
    }
  ]
}

CableOrSatelliteService öğesi, ülke genelinde TV hizmeti veren Örnek Kablo TV Şirketi (Organization) tarafından sunulan kablolu TV hizmetlerini açıklar:

{
  "@context":"http://schema.org",
  "@type":"CableOrSatelliteService",
  "@id":"http://example.com/example_cable_tv_company/service",
  "name":"Example Cable TV Service",
  "provider": {
    "@type": "Organization",
    "@id": "http://example.com/example_cable_tv_company",
    "name": "Example Cable TV Company"
  },
  "areaServed": {
    "@type": "Country",
    "name": "US"
  }
}

Bu TelevisionChannel öğeleri, Örnek Kablo TV Şirketi adlı TV servis sağlayıcısının 7. kanalda NYTV ve 12. kanalda NJTV HD'yi yayınladığını gösterir:

{
  "@context":"http://schema.org",
  "@type":"TelevisionChannel",
  "@id":"http://example.com/example_cable_tv_company/nytv",
  "broadcastChannelId":"7",
  "broadcastServiceTier":"Standard",
  "inBroadcastLineup":{
    "@type":"CableOrSatelliteService",
    "@id":"http://example.com/example_cable_tv_company/service"
  },
  "providesBroadcastService":{
    "@type":"BroadcastService",
    "@id":"https://www.example.com/nytv/broadcast"
  }
}
{
  "@context":"http://schema.org",
  "@type":"TelevisionChannel",
  "@id":"http://example.com/example_cable_tv_company/njtv",
  "broadcastChannelId":"12",
  "broadcastServiceTier":"Standard",
  "inBroadcastLineup":{
    "@type":"CableOrSatelliteService",
    "@id":"http://example.com/example_cable_tv_company/service"
  },
  "providesBroadcastService":{
    "@type":"BroadcastService",
    "@id":"https://www.example.com/njtv/broadcast/hd"
  }
}

Android TV'de kanal değiştirme

Canlı TV kanalı entegrasyonu sayesinde kullanıcılar sesli komutları kullanarak Google'dan kanal değiştirmesini isteyebilir. Google, kullanıcı sorgularından parametreleri ayıklamak ve kullanıcıların izlemek istediği kanalı belirlemek için doğal dil işleme (NLP) kullanır. Ardından Google, kanal geçişini aşağıdaki yöntemlerden biriyle yönetir:

  • Google tarafından karşılanır: Google, bir medya işlemi feed'inde sağlanan derin bağlantıyı kullanarak kanal geçişini gerçekleştirir. Feed'deki bilgiler, Google'ın kullanıcının izlemek istediği kanalın derin bağlantısını aramasına olanak tanır. Ardından Google, kullanıcıyı doğrudan servis sağlayıcının uygulamasındaki veya platformundaki içeriğe yönlendirir.
  • TV servis sağlayıcısı tarafından karşılanır: Google, servis sağlayıcıya bir istek gönderir. Google ve servis sağlayıcılar, kanal değiştirme görevini çeşitli şekillerde koordine edebilir. Google'ın diğer platformlarıyla (ör. AndroidTV, Made By Google, Operatörler İçin Asistan) entegrasyon hakkında ayrıntılı bilgi için Google ile iletişime geçin.

Medya işlemi feed'inde gereken bilgi türü, servis sağlayıcının Google'ın kanal geçişini nasıl ele almasını istediğine bağlıdır.

Bu yaklaşımda Google, kullanıcıları doğrudan servis sağlayıcının uygulamasındaki veya platformundaki içeriğe yönlendirmek için BroadcastService öğesinde sağlanan derin bağlantıları kullanır. Kullanıcılar izlemek istedikleri kanalı iki farklı şekilde belirtir:

Kullanıcı sorgusu bir kanal adı içerdiğinde (ör. "Ok Google, ExampleTV'yi aç") Google aşağıdakileri yapar:

  • Kullanıcı, "Ok Google, ExampleTV'yi aç" der.
  • Google, kullanıcı sorgusunu Google'ın doğal dil işleme özelliğinin kanal geçişi amacıyla eşleştirir.
  • Google, parametreyi (bu örnekte ExampleTV) kullanıcı sorgusundan çıkarır.
  • Google, BroadcastService'ü tanımlamak için kanal adını kullanır.
  • Google, derin bağlantıyı BroadcastService adresinden alır.
  • Google, yeni TV kanalının oynatılmasını başlatmak için derin bağlantıyı kullanır.

Kullanıcı sorgusu bir kanal numarası içerdiğinde (ör. "Ok Google, 7. kanala geç") Google aşağıdakileri yapar:

  • Kullanıcı, "Ok Google, 7. kanala geç." diyor.
  • Google, kullanıcı sorgusunu kanal geçişi amacıyla eşleştirir.
  • Google, parametreyi (bu durumda kanal 7) kullanıcı sorgusundan ayırır.
  • Google, bölgesel TV hizmetini (CableOrSatelliteService) tanımlamak için kullanıcının konumunu kullanır.
  • Google, ilgili TelevisionChannel.'ı tanımlamak için kanal numarasını ve CableOrSatelliteService'yi kullanır.
  • Google, TelevisionChannel ile bağlantılı BroadcastService öğesini tanımlar.
  • Google, derin bağlantıyı BroadcastService adresinden alır.
  • Google, yeni TV kanalının oynatılmasını başlatmak için derin bağlantıyı kullanır.

Google, kanal geçişini gerçekleştirmek için kontrolü TV servis sağlayıcısına aktardığında kullanıcı sorgusundan kanal bilgilerini (kanal kimliği veya adı) ayıklayıp bu bilgileri servis sağlayıcıya gönderilen isteğe parametre olarak ekler.

Bu yaklaşımda, BroadcastService içinde derin bağlantılar ve erişim koşulları sağlamak isteğe bağlıdır (TV servis sağlayıcısı tarafından karşılanan örnek bölümüne bakın).

Bu yaklaşım, servis sağlayıcının Google ile uçtan uca iletişim kurmasını gerektirdiğinden, servis sağlayıcının Operatörler için Asistan entegrasyonunu da tamamlaması gerekir. Daha fazla bilgi için Google ile iletişime geçin.