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 Tindakan Media, sehingga Google dapat mendukung kueri pengguna berikut:

  • "Ok Google, putar ExampleTV."
  • "Ok Google, setel ke ExampleTV-HD."
  • "Ok Google, ganti ke channel 7".
  • "Ok Google, ExampleTV-Drama".

Jenis entitas saluran TV live

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

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

Bagian berikut mempelajari lebih dalam jenis entity dan memberikan jawaban atas pertanyaan sebelumnya.

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

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

Mewakili penyedia layanan TV

Penyedia layanan TV, juga disebut operator TV, adalah organisasi yang mengirimkan paket program TV kepada pelanggan. Biasanya, kreator ini juga merupakan pembuat feed katalog media. Entitas ini diwakili oleh entity Organization. Hanya satu entitas Organization tersebut, yang mewakili operator TV, yang harus ditambahkan ke feed.

Misalnya, penyedia layanan IPTV fiktif "ExampleTV Digital" memberikan akses ke 180 saluran ke 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"
}

Merepresentasikan layanan yang disediakan oleh penyedia layanan TV

CableOrSatelliteService mewakili layanan TV kabel, satelit, atau Internet regional yang disediakan oleh operator TV. Pada umumnya, kategori ini dikaitkan dengan daftar saluran, dan tertaut ke operator TV, yang diwakili oleh entitas 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 "Digital Prime+" layanan yang memiliki cakupan nasional AS akan dibuat. Perhatikan bagaimana referensi ini merujuk ke "ExampleTV Digital" Penyedia layanan TV yang 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",
    }
  ]
}

Merepresentasikan saluran yang disediakan oleh penyedia layanan TV

Saluran tersebut diwakili oleh 3 entitas: Organization, BroadcastService, dan TelevisionChannel.

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

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

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

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

Dalam contoh kita, katakanlah "ABC Movies" merupakan salah satu dari 180 saluran yang menjadi "ExampleTV Digital" Penyedia layanan TV menyediakan akses sebagai bagian dari "Digital Prime+" layanan IT di Amerika Serikat. Saluran ini muncul sebagai saluran nomor 7 dalam daftar dan pada tanggal 18 di aplikasi Android TV ExampleTV Digital. Hal ini diwakili di bawah ini:

BroadcastService

Satu entitas BroadcastService masing-masing mewakili saluran (dalam hal ini dua entitas BroadcastService untuk saluran fiksi 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 Jaringan TV (dalam hal ini Layanan Digital ExampleTV (Organisasi) memberikan 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 beberapa) entitas TelevisionChannel untuk setiap BroadcastService yang mewakili nomor saluran tempat entitas ini tersedia dalam layanan (CableOrSatelitService) yang ditawarkan oleh penyedia (Organisasi - TVOperator) (dalam hal ini entitas TelevisionChannel menunjukkan bahwa ExampleTV Digital Service IPTV memiliki program ExampleTV Movie 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 Organisasi dan entity BroadcastService

Entity BroadcastService adalah entity inti yang mewakili saluran TV. Meskipun merupakan entitas feed yang diperlukan, entity Organization sebenarnya hanya ada untuk memungkinkan penyedia membuat model tiga kasus penggunaan pengecualian yang ditampilkan di bawah. Dengan demikian, penyedia harus mematuhi poin-poin utama berikut untuk semua kasus penggunaan kecuali pengecualian.

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

Channel Lokal atau Afiliasi

Misalnya, Fox memiliki channel afiliasi lokal yang disebut KCPQ di Seattle, AS dan KTVU di San Francisco, AS. KCPQ dapat menayangkan berita lokal yang meliput Seattle, sedangkan KTVU dapat menyediakan pemrograman yang khusus melayani kebutuhan basis penggunaan San Francisco. Pada umumnya, pengguna mungkin tidak mengetahui nama lokal channel, tetapi mengenali channel tersebut sebagai Fox.

Dalam hal ini, 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, masing-masing mewakili afiliasi lokal, yaitu KCPQ dan KTVU.

Berikut contoh lain yang menunjukkan cara pemodelan channel ABC dan channel 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 terpisah 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 memahami poin-poinnya, mari kita lihat contoh saluran EPIX dan EPIX 2. Keduanya tersedia secara nasional, menawarkan pemrograman yang sama sekali berbeda, bukan merupakan variasi dari satu channel, dan oleh karena itu tidak dianggap sebagai channel 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

Channel yang mengalami pergeseran waktu

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

Nama OrganisasiNama BroadcastServiceHubungan
Pertunjukan Tambahan STARZSTARZ Encore BaratHubungan 1:N antara entity Organization dan BroadcastService
Pertunjukan Tambahan STARZSTARZ Encore Timur

Channel dengan perbedaan kualitas streaming

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

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

Nama OrganisasiNama BroadcastServiceHubungan
SBSSBSHubungan 1:N antara entity Organization dan BroadcastService
SBSHD SBS

Berikut adalah contoh kasus penggunaan rumit yang menyatukan semua kasus penggunaan yang terlibat:

Nama Organisasi Nama BroadcastService Hubungan
Starz STARZ Timur Hubungan 1:N antara entitas Organization dan BroadcastService karena saluran yang mengalami pergeseran waktu
Starz STARZ Barat
STARZ Kids & KeluargaSTARZ Kids & KeluargaHubungan 1:1 antara entity Organization dan BroadcastService
STARZ Encore HitamSTARZ Encore HitamHubungan 1:1 antara entity Organization dan BroadcastService
Klinik Encore STARZSTARZ Encore KlasikHubungan 1:1 antara entity Organization dan BroadcastService
Keluarga STARZ EncoreKeluarga STARZ EncoreHubungan 1:1 antara entity Organization dan BroadcastService
STARZ Encore KeteganganSTARZ Encore KeteganganHubungan 1:1 antara entity Organization dan BroadcastService
Aksi Pertunjukan Tambahan STARZSTARZ Encore Action HDHubungan 1:N antara entitas Organization dan BroadcastService karena perbedaan kualitas streaming
Aksi Pertunjukan Tambahan STARZSTARZ Encore Action SD
Pertunjukan Tambahan STARZSTARZ Encore BaratHubungan 1:N antara entitas Organization dan BroadcastService karena saluran yang mengalami pergeseran waktu
Pertunjukan Tambahan STARZSTARZ Encore Timur

Contoh

Penyedia layanan TV nasional dengan grup channel regional

Organisasi

Penyedia layanan TV fiktif, Contoh Perusahaan TV Kabel (Organization), menyediakan 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 saluran ExampleTV di saluran HD dan 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 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 Perusahaan TV Kabel Contoh - San Francisco Bay memiliki ExampleTV-HD di saluran 7 dan ExampleTV2 di saluran 11, dan penyedia layanan TV regional Contoh Perusahaan TV Kabel - New York memiliki ExampleTV-HD di saluran 12 dan ExampleTV2 pada 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 fiksi 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 ExampleTV Digital Service IPTV memiliki pemrograman ExampleTV Movie di saluran ExTV-Movie dan pemrograman ExampleTV Komedi 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 yang peralihan saluran dipenuhi oleh penyedia layanan TV

Organisasi

Penyedia layanan TV fiktif, ExampleTV Digital Service (Organization) memberikan 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 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 ExampleTV Digital Service IPTV memiliki pemrograman ExampleTV Movie di saluran ExTV-Movie dan pemrograman ExampleTV Komedi 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

Sebuah penyedia layanan TV (juga disebut operator TV), Contoh Perusahaan TV Kabel (Organization) menyediakan layanan TV Live (bernama 'Contoh Layanan TV Kabel', CableOrSatelliteService) melalui jaringan kabel di AS. Layanan 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 saluran NYTV dan NJTV. Perhatikan bahwa kedua Layanan Siaran ini terhubung ke Organisasi yang sama (Jaringan ExampleTV) 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 Contoh Perusahaan TV Kabel 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 mana yang ingin ditonton oleh pengguna. Kemudian, Google menangani pengalihan saluran dengan salah satu cara berikut:

  • Fulfilled by Google - Google melakukan pengalihan saluran menggunakan deep link yang disediakan dalam feed Media Action. Informasi dari feed memungkinkan Google mencari deep link channel yang ingin ditonton pengguna. Kemudian, Google 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 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 peralihan saluran.