Saluran TV live

Integrasi saluran TV Live memungkinkan pengguna menggunakan perintah suara untuk menonton dan beralih saluran TV di perangkat apa pun yang mendukung Asisten Google, seperti Google Home, Android, Android TV, atau Google TV, dan lainnya.

Menggunakan suara untuk beralih saluran TV
Gambar 1. Menggunakan suara untuk beralih saluran TV.

Penyedia layanan dapat menggunakan objek markup BroadcastService, CableOrSatelliteService, TelevisionChannel, dan Organization untuk memberikan detail saluran di feed Action Media, sehingga Google dapat mendukung kueri pengguna berikut:

  • "Ok Google, putar ExampleTV."
  • "Ok Google, ubah ke ExampleTV-HD".
  • "Ok Google, beralih ke saluran 7."
  • "Ok Google, ExampleTV-Drama".

Jenis entitas saluran TV live

Integrasi channel TV Live memerlukan 4 jenis entity (Organization, BroadcastService, CableOrSatelliteService, dan TelevisionChannel) di feed katalog media Anda. Jenis entitas ini membantu menjawab pertanyaan berikut:

  • Siapa penyedia layanan TV dan layanan apa yang mereka sediakan?
  • Apa kumpulan saluran yang tersedia sebagai bagian dari setiap layanan tersebut (juga disebut daftar saluran)?

Bagian berikut membahas jenis entitas lebih dalam dan memberikan jawaban atas pertanyaan sebelumnya.

Perhatikan diagram hubungan berikut saat Anda membaca bagian di bawah ini:

Hubungan antara berbagai jenis entitas saluran TV Live
Gambar. Koneksi antara berbagai jenis entitas saluran TV Live.

Mewakili penyedia layanan TV

Penyedia layanan TV, yang juga disebut operator TV, adalah organisasi yang mengirimkan paket program TV kepada pelanggan. Dalam sebagian besar kasus, ini juga merupakan pembuat feed katalog media. Hal ini diwakili oleh entitas Organization. Hanya satu entitas Organization tersebut, yang mewakili operator TV, yang harus ditambahkan ke feed.

Misalnya, penyedia layanan IPTV fiktif "ExampleTV Digital" menyediakan akses ke 180 saluran kepada basis penggunanya di Amerika Serikat sebagai bagian dari layanannya yang bernama "Digital Prime+".

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

Mewakili layanan yang disediakan oleh penyedia layanan TV

CableOrSatelliteService mewakili layanan TV kabel, satelit, atau Internet regional yang disediakan oleh operator TV. Channel biasanya dikaitkan dengan deretan channel, dan ditautkan ke operator TV, yang diwakili oleh entity Organisasi. Satu atau beberapa entitas CableOrSatelliteService dapat ditambahkan ke feed, bergantung pada jumlah layanan yang disediakan oleh operator TV.

Dalam contoh ini, satu entitas CableOrSatelliteService untuk mendeskripsikan layanan "Digital Prime+" yang memiliki cakupan nasional AS dibuat. Perhatikan cara referensi ke penyedia layanan TV "ExampleTV Digital" menggunakan properti provider.

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

Mewakili saluran yang disediakan oleh penyedia layanan TV

Saluran direpresentasikan bersama oleh 3 entity: Organization, BroadcastService, dan TelevisionChannel.

  • Entitas BroadcastService adalah entitas inti yang mewakili saluran televisi yang mendistribusikan program linear. Entity ini ditautkan ke entity Organization dan TelevisionChannel serta dirujuk oleh kumpulan entity BroadcastEvent yang bersama-sama mewakili panduan programnya (atau jadwal saluran).

    • Entity BroadcastService juga harus memiliki deep link dan persyaratan akses yang ditentukan dengan baik. Skema BroadcastService memungkinkan Anda membatasi akses ke channel berdasarkan lokasi perangkat pengguna saat ini (menggunakan properti eligibleRegion dan ineligibleRegion). Lihat Kasus penggunaan hak Live TV untuk mengetahui detail selengkapnya.
  • Entitas Organization mewakili saluran yang memproduksi dan mendistribusikan program TV. Pada umumnya, ini adalah replika entitas BroadcastService, sedangkan dalam kasus lain, ini dapat mewakili jaringan TV tempat BroadcastService berafiliasi. Entitas BroadcastService mereferensikan entitas Organization menggunakan properti broadcastAffiliateOf. Penting untuk memahami bagaimana kedua jenis entity ini saling terkait. Anda dapat mempelajarinya di bagian Memahami hubungan antara entitas Organisasi dan BroadcastService di bawah.

  • Entitas TelevisionChannel mengidentifikasi BroadcastService dengan ID unik, seperti nomor saluran atau string, dan urutan kemunculan (di properti penyedia, seperti situs atau aplikasi) di layanan TV kabel, satelit, atau Internet regional, yang diwakili oleh entitas CableOrSatelliteService.

Entity TelevisionChannel, CableOrSatelliteService, dan Organization bersama-sama membentuk gagasan tentang lineup.

Dalam contoh ini, misalnya "ABC Movies" adalah salah satu dari 180 saluran yang aksesnya disediakan oleh penyedia layanan TV "ExampleTV Digital" sebagai bagian dari layanan "Digital Prime+" mereka di Amerika Serikat. Saluran ini muncul sebagai saluran nomor 7 dalam daftar dan di nomor 18 di aplikasi Android TV ExampleTV Digital. Hal ini direpresentasikan di bawah:

BroadcastService

Satu entitas BroadcastService yang masing-masing mewakili channel (dalam hal ini dua entitas BroadcastService untuk channel fiktif ExampleTV-MovieChannel dan ExampleTV-ComedyChannel)


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

Organisasi

Satu entitas Organisasi yang masing-masing mewakili TVNetwork (dalam hal ini Layanan Digital ExampleTV (Organisasi) memberikan akses ke 2 saluran: ExampleTV-MovieChannel (Organisasi) dan ExampleTV-ComedyChannel (Organisasi))


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

TelevisionChannel

Satu (atau beberapa) entitas TelevisionChannel untuk setiap BroadcastService yang mewakili nomor saluran tempat entitas ini tersedia di layanan (CableOrSatelliteService) yang ditawarkan oleh penyedia (Organization - TVOperator) (dalam hal ini, entitas TelevisionChannel menunjukkan bahwa IPTV Layanan Digital ExampleTV memiliki program Film ExampleTV di saluran 7 dan program Komedi ExampleTV di saluran 9)

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

Memahami hubungan antara entity Organization dan BroadcastService

Entitas BroadcastService adalah entitas inti yang mewakili saluran TV. Meskipun entitas Organization adalah entitas feed yang diperlukan, entitas ini sebenarnya hanya ada untuk memungkinkan penyedia membuat model tiga kasus penggunaan pengecualian yang disajikan di bawah. Dengan demikian, penyedia harus mematuhi poin penting berikut untuk semua kasus penggunaan kecuali pengecualian.

Ada 3 pengecualian untuk aturan umum ini, yaitu hubungan 1:N antara entity Organization dan BroadcastService harus ada. Hal ini dibahas di bawah:

Channel Lokal atau Afiliasi

Misalnya, Fox memiliki saluran afiliasi lokal, yang disebut KCPQ di Seattle, AS dan KTVU di San Francisco, AS. KCPQ dapat menayangkan berita lokal yang mencakup Seattle, sedangkan KTVU dapat menayangkan program yang secara khusus memenuhi kebutuhan basis pengguna San Francisco. Dalam sebagian besar kasus, pengguna mungkin tidak mengetahui nama lokal saluran, tetapi hanya mengenali saluran sebagai Fox.

Dalam hal ini, setiap channel lokal atau afiliasi harus diwakili oleh entitas BroadcastService-nya sendiri, yang semuanya harus terhubung ke satu entitas Organization. Saat ingin beralih ke saluran ini, pengguna dapat meminta Asisten Google untuk "Beralih ke Fox" atau "Beralih ke KTVU/KCPQ". Google akan beralih ke saluran lokal yang sesuai, bergantung pada lokasi perangkat pengguna dan apakah pengguna berhak menonton saluran yang diminta. Pada contoh sebelumnya, Anda akan membuat satu entitas Organisasi yang mewakili Fox dan menautkannya ke dua entitas BroadcastService, yang masing-masing mewakili afiliasi lokal, KCPQ dan KTVU.

Berikut adalah contoh lain yang menunjukkan cara membuat model saluran ABC dan saluran afiliasi lokalnya:

Nama OrganisasiNama BroadcastServiceHubungan
ABCKAALHubungan 1:N antara entity Organization dan BroadcastService
ABCKABC
ABCKAEF
ABCKAKE
ABCKAMC
ABCKAPP
ABCKATC
ABCKATN
ABCKATU
ABCKATV

Mari kita lihat contoh lain. Di sini, WXVT dan WYOU adalah channel CBS lokal. CBS Sports Network bukan channel lokal dan independen dari afiliasi lokal yang disebutkan sebelumnya.

Nama OrganisasiNama BroadcastServiceHubungan
CBSWXVTHubungan 1:N antara entity Organization dan BroadcastService
CBSWYOU
CBS Sports NetworkCBS Sports Network HDHubungan 1:1 antara entity Organization dan BroadcastService

Untuk memperjelas, mari kita ambil contoh channel EPIX dan EPIX 2. Keduanya tersedia secara nasional, menawarkan program yang berbeda, bukan variasi dari satu saluran, sehingga tidak dianggap sebagai saluran lokal.

Nama Organisasi Nama BroadcastService Hubungan
EPIX EPIX Hubungan 1:1 antara entity Organization dan BroadcastService
EPIX 2 EPIX 2 Hubungan 1:1 antara entity Organization dan BroadcastService

Saluran yang ditunda

Dalam hal ini, setiap saluran yang bergeser waktu harus diwakili oleh entitas BroadcastService-nya sendiri, yang semuanya harus terhubung ke satu entitas Organization. Berikut adalah contoh yang menunjukkan cara membuat model saluran yang diubah waktunya:

Nama OrganisasiNama BroadcastServiceHubungan
STARZ EncoreSTARZ Encore WestHubungan 1:N antara entity Organization dan BroadcastService
STARZ EncoreSTARZ Encore East

Saluran dengan perbedaan kualitas streaming

Misalnya, saluran STARZ Encore Action HD dan STARZ Encore Action SD memiliki program (EPG) yang sama persis dan kualitas streaming adalah satu-satunya perbedaan di antara keduanya. Dalam hal ini, setiap saluran streaming kualitas video harus diwakili oleh entitas BroadcastService-nya sendiri, yang semuanya harus terhubung ke satu entitas Organization.

Berikut adalah contoh yang menunjukkan cara membuat model saluran dengan perbedaan kualitas streaming:

Nama OrganisasiNama BroadcastServiceHubungan
SBSSBSHubungan 1:N antara entity Organization dan BroadcastService
SBSSBS HD

Berikut adalah contoh kasus penggunaan rumit yang menggabungkan semua kasus penggunaan yang sedang digunakan:

Nama Organisasi Nama BroadcastService Hubungan
Starz STARZ East Hubungan 1:N antara entity Organization dan BroadcastService karena channel yang diubah waktunya
Starz STARZ West
STARZ Kids & FamilySTARZ Kids & FamilyHubungan 1:1 antara entity Organization dan BroadcastService
STARZ Encore BlackSTARZ Encore BlackHubungan 1:1 antara entity Organization dan BroadcastService
STARZ Encore ClsicSTARZ Encore ClassicHubungan 1:1 antara entity Organization dan BroadcastService
STARZ Encore FamilySTARZ Encore FamilyHubungan 1:1 antara entity Organization dan BroadcastService
STARZ Encore SuspenseSTARZ Encore SuspenseHubungan 1:1 antara entity Organization dan BroadcastService
STARZ Encore ActionSTARZ Encore Action HDHubungan 1:N antara entity Organization dan BroadcastService karena perbedaan kualitas streaming
STARZ Encore ActionSTARZ Encore Action SD
STARZ EncoreSTARZ Encore WestHubungan 1:N antara entity Organization dan BroadcastService karena channel yang diubah waktunya
STARZ EncoreSTARZ Encore East

Contoh

Penyedia layanan TV nasional dengan lineup regional

Organisasi

Penyedia layanan TV fiktif, Example Cable TV Company (Organization), menyediakan layanan TV Live melalui jaringan kabel di dua wilayah: New York dan San Francisco. Layanan ini berisi dua saluran: ExampleTV (Organization) dan 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"
}

BroadcastService

Entitas BroadcastService ini memberikan detail deep link dan persyaratan akses untuk channel ExampleTV dalam HD dan channel ExampleTV2:

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

CableOrSatelliteService

Entitas CableOrSatelliteService ini menjelaskan layanan TV kabel di New York (DMA_ID=501) dan San Francisco Bay Area (DMA_ID=807), yang disediakan oleh penyedia layanan TV nasional Contoh Perusahaan TV Kabel (Organization):

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

TelevisionChannel

Entitas TelevisionChannel ini menunjukkan bahwa penyedia layanan TV regional Example Cable TV Company - San Francisco Bay memiliki ExampleTV-HD di saluran 7 dan ExampleTV2 di saluran 11, dan penyedia layanan TV regional Example Cable TV Company - New York memiliki ExampleTV-HD di saluran 12 dan ExampleTV2 di saluran 4:

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

Penyedia layanan TV nasional di internet

Organisasi

Penyedia layanan Internet Protocol Television fiktif, ExampleTV Digital Service (Organization), menyediakan layanan TV Live di Internet, yang berisi dua saluran berikut: ExampleTV-Movie (Organization) dan ExampleTV-Comedy (Organization):

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

BroadcastService

Kedua entitas BroadcastService ini memberikan detail deep link dan persyaratan akses untuk channel fiktif ExampleTV-Movie dan ExampleTV-Comedy:

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

CableOrSatelliteService

CableOrSatelliteService ini menjelaskan penyedia layanan ExampleTV Digital Service yang memiliki cakupan nasional:

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

TelevisionChannel

Entitas TelevisionChannel ini menunjukkan bahwa IPTV ExampleTV Digital Service memiliki program ExampleTV Movie di saluran ExTV-Movie dan program ExampleTV Comedy di saluran ExTV-Comedy:

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

Daftar saluran tempat pengalihan saluran dilakukan oleh penyedia layanan TV

Organisasi

Penyedia layanan TV fiktif, ExampleTV Digital Service (Organization) menyediakan akses ke saluran IPTV fiktif ExampleTV-Sports (Organization) dan ExampleTV-Drama (Organization) kepada penggunanya melalui dekoder yang dijualnya.

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

BroadcastService

Kedua entitas BroadcastService ini menjelaskan saluran ExampleTV-Sports dan ExampleTV-Drama (deep link bersifat opsional):

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

CableOrSatelliteService

CableOrSatelliteService ini menjelaskan penyedia layanan ExampleTV Digital Service yang memiliki cakupan nasional:

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

TelevisionChannel

Entitas TelevisionChannel ini menunjukkan bahwa IPTV ExampleTV Digital Service memiliki program ExampleTV Movie di saluran ExTV-Movie dan program ExampleTV Comedy di saluran ExTV-Comedy:

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

Penyedia layanan TV dengan channel afiliasi atau lokal

Organisasi

Penyedia layanan TV (juga disebut operator TV), Example Cable TV Company (Organization) menyediakan layanan TV Live (bernama 'Example Cable TV Service', CableOrSatelliteService) melalui jaringan kabel di Amerika Serikat. Layanan ini berisi satu jaringan TV: 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"
}

BroadcastService

ExampleTV Network (Organization) memiliki 2 channel lokal, NYTV (BroadcastService) di New York, dan NJTV (BroadcastService) di New Jersey. Entitas BroadcastService ini memberikan detail deep link dan persyaratan akses untuk channel NYTV dan NJTV. Perhatikan bahwa kedua BroadcastServices ini terhubung ke Organisasi yang sama (ExampleTV Network) melalui properti broadcastAffiliateOf:

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

Entitas CableOrSatelliteService menjelaskan layanan TV kabel yang ditawarkan oleh penyedia layanan TV nasional Contoh Perusahaan TV Kabel (Organization):

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

TelevisionChannel

Entitas TelevisionChannel ini menunjukkan bahwa penyedia layanan TV Example Cable TV Company memiliki NYTV di saluran 7 dan NJTV HD di saluran 12:

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

Tombol saluran di Android TV

Dengan integrasi saluran TV Live, pengguna dapat meminta Google untuk beralih saluran menggunakan perintah suara. Google menggunakan Natural Language Processing (NLP) untuk mengekstrak parameter dari kueri pengguna dan mengidentifikasi saluran yang ingin ditonton pengguna. Kemudian, Google akan menangani pengalihan saluran dengan salah satu cara berikut:

  • Dipenuhi oleh Google - Google melakukan pengalihan saluran menggunakan deep link yang disediakan di feed Tindakan Media. Informasi dari feed memungkinkan Google mencari deep link channel yang ingin ditonton pengguna. Google kemudian mengarahkan pengguna langsung ke konten di aplikasi atau platform penyedia layanan.
  • Dipenuhi oleh penyedia layanan TV - Google mengirimkan permintaan ke penyedia layanan. Google dan penyedia layanan dapat mengoordinasikan tugas beralih saluran dengan sejumlah cara yang berbeda. Hubungi Google untuk mengetahui detail tentang integrasi dengan platform Google lainnya (misalnya, AndroidTV, Made By Google, Asisten untuk Operator ).

Jenis informasi yang diperlukan dalam feed Tindakan Media bergantung pada cara penyedia layanan ingin Google menangani pengalihan saluran.