Saluran TV live

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

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

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

  • "Ok Google, putar ExampleTV."
  • "Ok Google, buka ExampleTV-HD."
  • "Ok Google, pindahkan ke channel 7."
  • "Ok Google, ExampleTV-Drama".

Jenis entity channel 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 berikan?
  • Apa saja kumpulan saluran yang tersedia sebagai bagian dari setiap layanan tersebut (juga disebut daftar saluran)?

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

Ingatlah diagram hubungan berikut saat Anda membaca bagian di bawah:

Koneksi antara berbagai jenis entitas channel TV Live
Gambar. Koneksi antara berbagai jenis entitas channel TV Live.

Mewakili penyedia layanan TV

Penyedia layanan TV, yang juga disebut operator TV, adalah organisasi yang menyediakan paket program TV kepada pelanggan. Biasanya, ini juga merupakan kreator 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 channel kepada basis penggunanya di AS 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 TV regional yang disediakan oleh operator TV. Umumnya terkait dengan daftar channel, dan ditautkan ke operator TV, yang diwakili oleh entitas Organization. Satu atau beberapa entitas CableOrSatelliteService dapat ditambahkan ke feed, bergantung pada jumlah layanan yang disediakan oleh operator TV.

Dalam contoh ini, satu entitas CableOrSatelliteService dibuat untuk mendeskripsikan layanan "Digital Prime+" yang memiliki cakupan nasional di Amerika Serikat. Perhatikan cara merujuk 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 entitas: Organization, BroadcastService, dan TelevisionChannel.

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

    • Entitas 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 tayang TV Live untuk mengetahui detail selengkapnya.
  • Entitas Organization mewakili channel yang memproduksi dan mendistribusikan program TV. Dalam sebagian besar kasus, ini adalah replika entitas BroadcastService, sedangkan dalam kasus lain, ini dapat merepresentasikan jaringan TV yang terkait dengan BroadcastService. Entitas BroadcastService mereferensikan entitas Organization menggunakan properti broadcastAffiliateOf. Penting untuk memahami bagaimana kedua jenis entitas ini saling terkait. Anda dapat mempelajarinya di bagian Memahami hubungan antara entitas Organization dan BroadcastService di bawah.

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

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

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. Channel ini muncul sebagai channel nomor 7 dalam daftar dan di urutan ke-18 di aplikasi Android TV ExampleTV Digital. Hal ini ditunjukkan di bawah:

BroadcastService

Satu entitas BroadcastService yang masing-masing merepresentasikan 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 merepresentasikan TVNetwork (dalam hal ini ExampleTV Digital Service (Organisasi) menyediakan akses ke 2 dua 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 lebih) entitas TelevisionChannel untuk setiap BroadcastService yang merepresentasikan nomor saluran tempat entitas ini tersedia di layanan (CableOrSatelliteService) yang ditawarkan oleh penyedia (Organization - TVOperator) (dalam hal ini, entitas TelevisionChannel menunjukkan bahwa ExampleTV Digital Service IPTV memiliki program ExampleTV Movie di saluran 7 dan program ExampleTV Comedy 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 merepresentasikan channel TV. Meskipun merupakan entity feed yang wajib ada, entity Organization sebenarnya hanya ada untuk memungkinkan penyedia memodelkan tiga kasus penggunaan pengecualian yang dijelaskan di bawah. Oleh karena itu, penyedia harus mematuhi poin penting berikut untuk semua kasus penggunaan kecuali pengecualian.

Ada 3 pengecualian untuk aturan praktis, yang mengharuskan adanya hubungan 1:N antara entity Organization dan BroadcastService. 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 menyiarkan berita lokal yang meliput Seattle, sedangkan KTVU dapat menyiarkan 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 tersebut 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 pengguna ingin beralih ke saluran ini, mereka 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. Dalam contoh sebelumnya, Anda akan membuat satu entitas Organisasi yang merepresentasikan Fox dan menautkannya ke dua entitas BroadcastService, yang masing-masing merepresentasikan afiliasi lokal, KCPQ dan KTVU.

Berikut contoh lain yang menunjukkan cara pemodelan 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 lainnya. Di sini, WXVT dan WYOU adalah channel CBS lokal. CBS Sports Network bukan channel lokal dan tidak terkait dengan 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 maksudnya, mari kita ambil contoh channel EPIX dan EPIX 2. Keduanya tersedia secara nasional, menawarkan pemrograman yang sama sekali berbeda, bukan variasi dari satu saluran, dan oleh karena itu 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 channel yang di-time shift harus diwakili oleh entitas BroadcastService-nya sendiri, yang semuanya harus terhubung ke satu entitas Organization. Berikut adalah contoh yang menunjukkan cara memodelkan saluran yang ditunda:

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

Saluran dengan perbedaan kualitas streaming

Misalnya, channel STARZ Encore Action HD dan STARZ Encore Action SD memiliki pemrograman (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 entity BroadcastService-nya sendiri, yang semuanya harus terhubung ke satu entity Organization.

Berikut adalah contoh yang menunjukkan cara memodelkan 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 ada:

Nama Organisasi Nama BroadcastService Hubungan
Starz STARZ East Hubungan 1:N antara entity Organization dan BroadcastService karena channel tunda waktu
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 ClassicSTARZ 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 tunda waktu
STARZ EncoreSTARZ Encore East

Contoh

Penyedia layanan TV nasional dengan daftar acara 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 channel: 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 Example Cable TV Company (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

Dua 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 penggantian saluran dilakukan oleh penyedia layanan TV

Organisasi

Penyedia layanan TV fiktif, ExampleTV Digital Service (Organization) menyediakan akses ke channel 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

Dua entitas BroadcastService ini mendeskripsikan channel 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 AS. 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 (Organisasi) 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 BroadcastService 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 Example Cable TV Company (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 channel 7 dan NJTV HD di channel 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"
  }
}

Perpindahan saluran di Android TV

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

  • Dipenuhi oleh Google - Google melakukan peralihan saluran menggunakan deep link yang disediakan di feed Tindakan Media. Informasi dari feed memungkinkan Google mencari deep link channel yang ingin ditonton pengguna. Kemudian, Google akan 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 pengalihan saluran dengan berbagai cara. Hubungi Google untuk mengetahui detail tentang integrasi dengan platform Google lainnya (misalnya, AndroidTV, Made By Google, Assistant for Operators).

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