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.
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:
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
BroadcastServiceadalah entitas inti yang merepresentasikan saluran televisi yang mendistribusikan pemrograman linear. Entitas ini ditautkan ke entitasOrganizationdanTelevisionChannelserta dirujuk oleh kumpulan entitasBroadcastEventyang bersama-sama merepresentasikan panduan programnya (atau jadwal saluran).- Entitas
BroadcastServicejuga harus memiliki deep link dan persyaratan akses yang ditentukan dengan baik. SkemaBroadcastServicememungkinkan Anda membatasi akses ke channel berdasarkan lokasi perangkat pengguna saat ini (menggunakan propertieligibleRegiondanineligibleRegion). Lihat Kasus penggunaan hak tayang TV Live untuk mengetahui detail selengkapnya.
- Entitas
Entitas
Organizationmewakili channel yang memproduksi dan mendistribusikan program TV. Dalam sebagian besar kasus, ini adalah replika entitasBroadcastService, sedangkan dalam kasus lain, ini dapat merepresentasikan jaringan TV yang terkait denganBroadcastService. EntitasBroadcastServicemereferensikan entitasOrganizationmenggunakan propertibroadcastAffiliateOf. 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
TelevisionChannelmengidentifikasiBroadcastServicedengan 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 entitasCableOrSatelliteService.
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
- Channel yang diubah waktunya
- Channel dengan perbedaan kualitas streaming
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 Organisasi | Nama BroadcastService | Hubungan |
|---|---|---|
| ABC | KAAL | Hubungan 1:N antara entity Organization dan BroadcastService |
| ABC | KABC | |
| ABC | KAEF | |
| ABC | KAKE | |
| ABC | KAMC | |
| ABC | KAPP | |
| ABC | KATC | |
| ABC | KATN | |
| ABC | KATU | |
| ABC | KATV |
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 Organisasi | Nama BroadcastService | Hubungan |
|---|---|---|
| CBS | WXVT | Hubungan 1:N antara entity Organization dan BroadcastService |
| CBS | WYOU | |
| CBS Sports Network | CBS Sports Network HD | Hubungan 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 Organisasi | Nama BroadcastService | Hubungan |
|---|---|---|
| STARZ Encore | STARZ Encore West | Hubungan 1:N antara entity Organization dan BroadcastService |
| STARZ Encore | STARZ 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 Organisasi | Nama BroadcastService | Hubungan |
|---|---|---|
| SBS | SBS | Hubungan 1:N antara entity Organization dan BroadcastService |
| SBS | SBS 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 & Family | STARZ Kids & Family | Hubungan 1:1 antara entity Organization dan BroadcastService |
| STARZ Encore Black | STARZ Encore Black | Hubungan 1:1 antara entity Organization dan BroadcastService |
| STARZ Encore Classic | STARZ Encore Classic | Hubungan 1:1 antara entity Organization dan BroadcastService |
| STARZ Encore Family | STARZ Encore Family | Hubungan 1:1 antara entity Organization dan BroadcastService |
| STARZ Encore Suspense | STARZ Encore Suspense | Hubungan 1:1 antara entity Organization dan BroadcastService |
| STARZ Encore Action | STARZ Encore Action HD | Hubungan 1:N antara entity Organization dan BroadcastService karena perbedaan kualitas streaming |
| STARZ Encore Action | STARZ Encore Action SD | |
| STARZ Encore | STARZ Encore West | Hubungan 1:N antara entity Organization dan BroadcastService karena channel tunda waktu |
| STARZ Encore | STARZ 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.