A integração de canais de TV ao vivo permite que os usuários usem comandos de voz para assistir e mudar de canal em qualquer dispositivo compatível com o Google Assistente, como Google Home, Android, Android TV ou Google TV, entre outros.

Os provedores de serviços podem usar os objetos de marcação BroadcastService
, CableOrSatelliteService
, TelevisionChannel
e Organization
para fornecer os detalhes dos canais nos feeds de Ações de mídia, permitindo que o Google ofereça suporte às seguintes consultas do usuário:
- "Ok Google, tocar ExampleTV".
- "Ok Google, sintonize ExampleTV-HD."
- "Ok Google, mude para o canal 7."
- "Ok Google, ExampleTV-Drama."
Tipos de entidade de canal de TV ao vivo
A integração de canais de TV ao vivo exige quatro tipos de entidade (Organization
, BroadcastService
, CableOrSatelliteService
e TelevisionChannel
) no feed do catálogo de mídia. Esses tipos de entidade ajudam a responder às seguintes perguntas:
- Quem é o provedor de serviços de TV e quais serviços ele oferece?
- Qual é o conjunto de canais disponível como parte de cada um desses serviços (também chamado de programação de canais)?
As seções a seguir abordam mais detalhadamente os tipos de entidade e fornecem respostas às perguntas anteriores.
Tenha o seguinte diagrama de relacionamento em mente ao ler as seções abaixo:

Representar o provedor de serviços de TV
Um provedor de serviços de TV, também chamado de operador de TV, é uma organização que oferece um pacote de programação de TV aos assinantes. Na maioria dos casos, essa pessoa também é a criadora do feed do catálogo de mídia. Isso é representado pela entidade Organization
. Apenas uma entidade Organization
, que representa o operador de TV, precisa ser adicionada ao feed.
Por exemplo, um provedor de serviços de IPTV fictício "ExampleTV Digital" oferece acesso a 180 canais para a base de usuários nos EUA como parte do serviço chamado "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"
}
Representar o serviço fornecido pelo provedor de serviços de TV
Um CableOrSatelliteService
representa um serviço regional de TV a cabo, por satélite ou pela Internet fornecido por um operador de TV. Geralmente, ela está associada à programação dos canais e é vinculada ao operador de TV, representado pela entidade Organização. Uma ou mais entidades CableOrSatelliteService
podem ser adicionadas ao feed, dependendo do número de serviços fornecidos pelo operador de TV.
Neste exemplo, uma entidade CableOrSatelliteService
é criada para descrever o serviço "Digital Prime+" com cobertura nacional nos EUA. Observe como ele faz referência ao provedor de serviços de TV "ExampleTV Digital" usando a propriedade 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",
}
]
}
Representar os canais fornecidos pelo provedor de serviços de TV
Os canais são representados juntos por três entidades: Organization
, BroadcastService
e TelevisionChannel
.
A entidade
BroadcastService
é a principal que representa um canal de TV que distribui programação linear. Ele vincula as entidadesOrganization
eTelevisionChannel
e é referenciado pelo conjunto de entidadesBroadcastEvent
que, juntas, representam o guia de programação (ou a programação do canal).- A entidade
BroadcastService
também precisa ter links diretos e requisitos de acesso bem definidos. O esquemaBroadcastService
permite restringir o acesso a um canal com base na localização atual do dispositivo do usuário (usando as propriedadeseligibleRegion
eineligibleRegion
). Consulte os casos de uso de direitos de TV ao vivo para mais detalhes.
- A entidade
A entidade
Organization
representa o canal que produz e distribui a programação de TV. Na maioria dos casos, essa é uma réplica da entidadeBroadcastService
. Em outros casos, ela pode representar a rede de TV à qual aBroadcastService
está afiliada. A entidadeBroadcastService
faz referência à entidadeOrganization
usando a propriedadebroadcastAffiliateOf
. É crucial entender como esses dois tipos de entidade estão relacionados. Saiba mais sobre isso na seção Como entender a relação entre a organização e a entidade BroadcastService abaixo.A entidade
TelevisionChannel
identifica oBroadcastService
por um identificador exclusivo, como um número de canal ou uma string, e a ordem em que ele aparece (em propriedades dos provedores, como sites ou apps) no serviço regional de TV a cabo, por satélite ou pela Internet, representado pela entidadeCableOrSatelliteService
.
As entidades TelevisionChannel
, CableOrSatelliteService
e Organization
juntas formam a noção de uma programação.
No nosso exemplo, digamos que "ABC Movies" seja um dos 180 canais que o provedor de serviços de TV "ExampleTV Digital" disponibiliza como parte do serviço "Digital Prime+" nos EUA. Esse canal aparece como o número 7 na programação e em 18º no app Android TV do ExampleTV Digital. Confira abaixo:
Uma entidade BroadcastService representando o canal (neste caso, duas entidades BroadcastService para os canais fictícios ExampleTV-MovieChannel e 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"
}
]
}
Uma entidade de organização que representa a TVNetwork (neste caso, o serviço digital ExampleTV (organização) fornece acesso a dois canais: ExampleTV-MovieChannel (organização) e ExampleTV-ComedyChannel (organização))
{
"@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"
}
Uma (ou mais) entidade TelevisionChannel para cada BroadcastService que represente o número do canal em que essa entidade está disponível no serviço (CableOrSatelliteService) oferecido pelo provedor (Organização - TVOperator). Nesse caso, as entidades TelevisionChannel indicam que o serviço IPTV do ExampleTV Digital tem a programação de filmes do ExampleTV no canal 7 e a programação de comédia do ExampleTV no canal 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"
}
}
Entender a relação entre a organização e a entidade BroadcastService
A entidade BroadcastService
é a principal que representa o canal de TV. Embora a entidade Organization
seja uma entidade de feed obrigatória, ela existe apenas para permitir que os provedores modelem os três casos de uso de exceção apresentados abaixo. Por isso, os provedores precisam seguir o ponto principal a seguir para todos os casos de uso, exceto os de exceção.
Há três exceções à regra geral, em que uma relação 1:N entre as entidades Organization
e BroadcastService
precisa existir. Eles são discutidos abaixo:
- Canais locais ou afiliados
- Canais com mudança de horário
- Canais com diferença na qualidade do streaming
Canais locais ou afiliados
Por exemplo, a Fox tem canais afiliados locais, chamados KCPQ em Seattle, EUA e KTVU em São Francisco, EUA. A KCPQ pode transmitir notícias locais sobre Seattle, enquanto a KTVU pode transmitir programas que atendem especificamente às necessidades da base de usuários de São Francisco. Na maioria dos casos, os usuários podem não saber o nome local do canal, mas simplesmente o reconhecem como Fox.
Nesse caso, os canais locais ou afiliados precisam ser representados pelas próprias entidades BroadcastService
, que devem se conectar a uma entidade Organization
. Quando o usuário quiser mudar para esses canais, ele poderá pedir ao Google Assistente para "Mudar para Fox" ou "Mudar para KTVU/KCPQ". O Google vai mudar para o canal local apropriado dependendo da localização do dispositivo do usuário e se ele tem direito de assistir o canal solicitado. No exemplo anterior, você criaria uma entidade Organization representando Fox e a vincularia a duas entidades BroadcastService
, cada uma representando uma afiliada local, KCPQ e KTVU.
Confira outro exemplo que mostra como o canal ABC e os canais afiliados locais devem ser modelados:
Nome da organização | Nome do BroadcastService | Relacionamento |
---|---|---|
ABC | KAAL | Relação 1:N entre a entidade Organization e a entidade BroadcastService |
ABC | KABC | |
ABC | KAEF | |
ABC | KAKE | |
ABC | KAMC | |
ABC | KAPP | |
ABC | KATC | |
ABC | KATN | |
ABC | KATU | |
ABC | KATV |
Vamos considerar outro exemplo. Aqui, WXVT e WYOU são canais locais da CBS. A CBS Sports Network não é um canal local e é independente das afiliadas locais mencionadas anteriormente.
Nome da organização | Nome do BroadcastService | Relacionamento |
---|---|---|
CBS | WXVT | Relação 1:N entre a entidade Organization e a entidade BroadcastService |
CBS | WYOU | |
CBS Sports Network | CBS Sports Network HD | Relação de 1:1 entre a entidade Organization e BroadcastService |
Para entender melhor, vamos usar os canais EPIX e EPIX 2 como exemplo. Ambos estão disponíveis em todo o país, oferecem programação diferente, não são variações de um canal e, portanto, não são considerados canais locais.
Nome da organização | Nome do BroadcastService | Relacionamento |
---|---|---|
EPIX | EPIX | Relação de 1:1 entre a entidade Organization e BroadcastService |
EPIX 2 | EPIX 2 | Relação de 1:1 entre a entidade Organization e BroadcastService |
Canais temporizados
Nesse caso, cada canal com mudança de horário precisa ser representado pela própria entidade BroadcastService
, e todos precisam se conectar a uma entidade Organization
. Confira um exemplo que mostra como os canais com mudança de horário devem ser modelados:
Nome da organização | Nome do BroadcastService | Relacionamento |
---|---|---|
STARZ Encore | STARZ Encore West | Relação 1:N entre a entidade Organization e a entidade BroadcastService |
STARZ Encore | STARZ Encore East |
Canais com diferença na qualidade do streaming
Por exemplo, os canais STARZ Encore Action HD e STARZ Encore Action SD têm a mesma programação (EPG), e a única diferença entre eles é a qualidade do streaming. Nesse caso, cada canal de streaming de qualidade de vídeo precisa ser representado pela própria entidade BroadcastService
, que precisa se conectar a uma entidade Organization
.
Confira um exemplo de como modelar canais com diferenças na qualidade de streaming:
Nome da organização | Nome do BroadcastService | Relacionamento |
---|---|---|
SBS | SBS | Relação 1:N entre a entidade Organization e a entidade BroadcastService |
SBS | SBS HD |
Confira um exemplo de caso de uso complicado que reúne todos os casos de uso em jogo:
Nome da organização | Nome do BroadcastService | Relacionamento |
---|---|---|
Starz | STARZ East | Relação 1:N entre a entidade Organization e BroadcastService devido a canais com mudança de horário |
Starz | STARZ West | |
STARZ Kids & Family | STARZ Kids & Family | Relação de 1:1 entre a entidade Organization e BroadcastService |
STARZ Encore Black | STARZ Encore Black | Relação de 1:1 entre a entidade Organization e BroadcastService |
STARZ Encore Clsic | STARZ Encore Classic | Relação de 1:1 entre a entidade Organization e BroadcastService |
STARZ Encore Family | STARZ Encore Family | Relação de 1:1 entre a entidade Organization e BroadcastService |
STARZ Encore Suspense | STARZ Encore Suspense | Relação de 1:1 entre a entidade Organization e BroadcastService |
STARZ Encore Action | STARZ Encore Action HD | Relação 1:N entre a entidade Organization e BroadcastService devido a diferenças na qualidade do streaming |
STARZ Encore Action | STARZ Encore Action SD | |
STARZ Encore | STARZ Encore West | Relação 1:N entre a entidade Organization e BroadcastService devido a canais com mudança de horário |
STARZ Encore | STARZ Encore East |
Exemplos
Provedor de serviços de TV nacional com programações regionais
Um provedor de serviços de TV fictício, a Example Cable TV Company (Organization
), oferece serviço de TV ao vivo
em uma rede a cabo em duas regiões: Nova York e São Francisco. O serviço contém
dois canais: ExampleTV (Organization
) e 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"
}
Essas entidades BroadcastService
fornecem os detalhes dos links diretos e o requisito de acesso para os canais ExampleTV em HD e 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"
}
]
}
Essas entidades CableOrSatelliteService
descrevem os serviços de TV a cabo em Nova York (DMA_ID=501
) e na área da baía de São Francisco (DMA_ID=807
), que são fornecidos pelo provedor de serviços de TV nacional 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"
}
]
}
]
}
Essas entidades TelevisionChannel
indicam que o provedor de serviços de TV regional Example Cable TV Company - San Francisco Bay tem ExampleTV-HD no canal 7 e ExampleTV2 no canal 11, e o provedor de serviços de TV regional Example Cable TV Company - New York tem ExampleTV-HD no canal 12 e ExampleTV2 no canal 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"
}
}
Provedor de serviços de TV nacional na Internet
Um provedor de serviços de TV por protocolo de Internet fictício, ExampleTV Digital Service (Organization
), oferece um serviço de TV ao vivo na Internet, que contém os seguintes canais: ExampleTV-Movie (Organization
) e 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"
}
Essas duas entidades BroadcastService
fornecem os detalhes dos links diretos e o requisito de acesso para os canais fictícios ExampleTV-Movie e 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"
}
]
}
Este CableOrSatelliteService
descreve o provedor de serviços ExampleTV Digital Service, que tem cobertura nacional:
{
"@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",
}
]
}
Essas entidades TelevisionChannel
indicam que o IPTV do ExampleTV Digital Service tem a programação ExampleTV Movie no canal ExTV-Movie
e a programação ExampleTV Comedy no canal 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"
}
}
Linha de canais em que a troca de canal é feita pelo provedor de serviços de TV
Um provedor de serviços de TV fictício, ExampleTV Digital Service (Organization
), oferece aos usuários acesso a canais fictícios de IPTV ExampleTV-Sports (Organization
) e ExampleTV-Drama (Organization
) por meio de um set-top box que vende.
{
"@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"
}
Estas duas entidades BroadcastService
descrevem os canais ExampleTV-Sports e ExampleTV-Drama (os links diretos são opcionais):
{
"@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"
}
]
}
Este CableOrSatelliteService
descreve o provedor de serviços ExampleTV Digital Service, que tem cobertura nacional:
{
"@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",
}
]
}
Essas entidades TelevisionChannel
indicam que o IPTV do ExampleTV Digital Service tem a programação ExampleTV Movie no canal ExTV-Movie
e a programação ExampleTV Comedy no canal 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"
}
}
Provedor de serviços de TV com canais afiliados ou locais
Um provedor de serviços de TV (também chamado de operador de TV), Example Cable TV Company (Organization
), oferece o serviço de TV ao vivo (chamado 'Example Cable TV Service', um CableOrSatelliteService
) em uma rede a cabo nos EUA. O serviço contém uma rede de 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"
}
A ExampleTV Network (organização) tem dois canais locais, NYTV (BroadcastService) em Nova York e NJTV (BroadcastService) em Nova Jersey. Essas entidades BroadcastService
fornecem os detalhes dos links diretos e o requisito de acesso para os canais NYTV e NJTV. Observe que esses dois BroadcastServices se conectam à mesma organização (ExampleTV Network) pela propriedade 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"
}
]
}
A entidade CableOrSatelliteService
descreve os serviços de TV a cabo oferecidos pelo provedor de serviços de TV nacional Exemplo de empresa de TV a cabo (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"
}
}
Essas entidades TelevisionChannel
indicam que o provedor de serviços de TV Example Cable TV Company tem NYTV no canal 7 e NJTV HD no canal 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"
}
}
Mudança de canal no Android TV
Com a integração do canal de TV ao vivo, os usuários podem pedir ao Google para mudar de canal usando comandos de voz. O Google usa o processamento de linguagem natural (PLN) para extrair parâmetros das consultas dos usuários e identificar qual canal eles querem assistir. O Google processa a troca de canal de uma das seguintes maneiras:
- Atendido pelo Google: o Google realiza a troca de canal usando um link direto fornecido em um feed de ação de mídia. As informações do feed permitem que o Google procure o link direto do canal que o usuário quer assistir. O Google leva o usuário diretamente ao conteúdo no app ou na plataforma do provedor de serviços.
- Cumprida pelo provedor de serviços de TV: o Google envia uma solicitação ao provedor de serviços. O Google e os provedores de serviços podem coordenar a tarefa de alternar canais de várias maneiras. Entre em contato com o Google para saber mais sobre a integração com outras plataformas do Google (por exemplo, AndroidTV, Made By Google, Google Assistente para operadores).
O tipo de informação necessária em um feed de ação de mídia depende de como o provedor de serviços quer que o Google gerencie a troca de canal.
Enviado pelo Google
Nessa abordagem, o Google usa os links diretos fornecidos na entidade BroadcastService
para levar os usuários diretamente ao conteúdo no app ou na plataforma do provedor de serviços.
Os usuários indicam qual canal querem assistir de duas maneiras:
Alternar por nome do canal
Quando uma consulta do usuário contém o nome de um canal, por exemplo, "Ok Google, abra ExampleTV", o Google faz o seguinte:
- O usuário diz: "Ok Google, abrir ExampleTV".
- O Google faz a correspondência da consulta do usuário com a intent de troca de canal da NLP do Google.
- O Google extrai o parâmetro (neste caso, ExampleTV) da consulta do usuário.
- O Google usa o nome do canal para identificar
BroadcastService
. - O Google recupera o link direto de
BroadcastService
. - O Google usa o link direto para iniciar a reprodução do novo canal de TV.
Alternar por número de canal
Quando uma consulta do usuário contém um número de canal, por exemplo, "Ok Google, mude para o canal 7", o Google faz o seguinte:
- O usuário diz: "Ok Google, mude para o canal 7".
- O Google faz a correspondência da consulta do usuário com a intent de troca de canal.
- O Google extrai o parâmetro (neste caso, canal 7) da consulta do usuário.
- O Google usa a localização do usuário para identificar o serviço de TV regional (
CableOrSatelliteService
). - O Google usa o número do canal e o
CableOrSatelliteService
para identificar oTelevisionChannel.
correspondente. - O Google identifica o
BroadcastService
vinculado aTelevisionChannel
. - O Google recupera o link direto de
BroadcastService
. - O Google usa o link direto para iniciar a reprodução do novo canal de TV.
Fornecido pelo provedor de serviços de TV
Quando o Google transmite o controle para o provedor de serviços de TV para realizar a troca de canal, ele extrai as informações do canal (um ID ou nome) da consulta do usuário e as inclui como um parâmetro na solicitação ao provedor de serviços.
Com essa abordagem, é opcional fornecer links diretos e requisitos de acesso em BroadcastService
. Consulte o exemplo de atendimento pelo provedor de serviços de TV.
Como essa abordagem exige que o provedor de serviços estabeleça uma comunicação completa com o Google, ele também precisa concluir a integração do Google Assistente para operadores. Entre em contato com o Google para mais informações.