Canais de TV ao vivo

Com a integração de canais de TV ao vivo, os usuários podem usar comandos de voz para assistir e trocar de canal em qualquer dispositivo compatível com o Google Assistente, como Google Home, Android, Android TV ou Google TV, entre outros.

Usar a voz para mudar de canal na TV
Figura 1. Usar a voz para mudar de canal na TV.

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, toque ExampleTV".
  • "Ok Google, sintonize ExampleTV-HD."
  • "Ok Google, mude para o canal 7."
  • "Ok Google, ExampleTV-Drama."

Tipos de entidades de canais de TV ao vivo

A integração de canais de TV ao vivo exige quatro tipos de entidades (Organization, BroadcastService, CableOrSatelliteService e TelevisionChannel) no feed do catálogo de mídia. Esses tipos de entidades 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íveis como parte de cada um desses serviços (também chamado de programação de canais)?

As seções a seguir abordam os tipos de entidades e respondem às perguntas anteriores.

Tenha em mente o diagrama de relacionamento a seguir ao ler as seções abaixo:

Conexões entre vários tipos de entidades de canais de TV ao vivo
Figura. Conexões entre vários tipos de entidades de canais de TV ao vivo.

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 para assinantes. Na maioria dos casos, também é o criador do feed do catálogo de mídia. Isso é representado pela entidade Organization. Apenas uma entidade Organization, representando o operador de TV, deve ser adicionada ao feed.

Por exemplo, um provedor de serviços de IPTV fictício, a "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 cabo, satélite ou TV pela Internet fornecido por uma operadora de TV. Geralmente, ele está associado à programação de canais e vincula o 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 pela operadora de TV.

Neste exemplo, uma entidade CableOrSatelliteService é criada para descrever o serviço "Digital Prime+", que tem 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 televisão que distribui programação linear. Ele tem links para as entidades Organization e TelevisionChannel e é referenciado pelo conjunto de entidades BroadcastEvent, que juntas representam o guia de programação (ou a programação do canal).

  • A entidade Organization representa o canal que produz e distribui programação de TV. Na maioria dos casos, é uma réplica da entidade BroadcastService. Em outros casos, pode representar a rede de TV a que o BroadcastService é afiliado. A entidade BroadcastService faz referência à entidade Organization usando a propriedade broadcastAffiliateOf. É fundamental entender como esses dois tipos de entidades se relacionam. Saiba mais na seção Entender a relação entre a organização e a entidade BroadcastService abaixo.

  • A entidade TelevisionChannel identifica o BroadcastService por um identificador exclusivo, como um número de canal ou uma string, e a ordem em que ele aparece (em propriedades de provedores, como sites ou apps) no serviço regional de TV a cabo, satélite ou pela Internet, representado pela entidade CableOrSatelliteService.

As entidades TelevisionChannel, CableOrSatelliteService e Organization juntas formam a noção de um lineup.

No nosso exemplo, digamos que a "ABC Movies" seja um dos 180 canais que o provedor de serviços de TV "ExampleTV Digital" oferece como parte do serviço "Digital Prime+" nos EUA. Esse canal aparece como o número 7 na programação e o 18º no app para Android TV da ExampleTV Digital. Isso é representado abaixo:

BroadcastService

Uma entidade BroadcastService representando cada 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"
    }
 ]
 }

Organização

Uma entidade de organização representando a TVNetwork. Neste caso, o ExampleTV Digital Service (Organization) oferece acesso a dois canais: ExampleTV-MovieChannel (Organization) e ExampleTV-ComedyChannel (Organization).


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

Uma ou mais entidades TelevisionChannel para cada BroadcastService que representa o número do canal em que essa entidade está disponível no serviço (CableOrSatelliteService) oferecido pelo provedor (Organization - TVOperator). Nesse caso, as entidades TelevisionChannel indicam que o serviço digital de IPTV da ExampleTV tem a programação de filmes da ExampleTV no canal 7 e a programação de comédia da 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 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 prática, em que uma relação 1:N entre as entidades Organization e BroadcastService precisa existir. Elas são discutidas abaixo:

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 programação voltada especificamente para as necessidades da base de usuários de São Francisco. Na maioria dos casos, os usuários não conhecem o nome local do canal, mas o reconhecem como Fox.

Nesse caso, os canais locais ou afiliados precisam ser representados por entidades BroadcastService próprias, que se conectam a uma entidade Organization. Quando o usuário quiser mudar para esses canais, ele pode pedir ao Google Assistente para "Mudar para a Fox" ou "Mudar para a KTVU/KCPQ". O Google vai mudar para o canal local adequado, dependendo da localização do dispositivo do usuário e se ele tem direito a 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 mostrando como o canal ABC e os canais afiliados locais dele devem ser modelados:

Nome da organizaçãoNome do BroadcastServiceRelacionamento
ABCKAALRelação de 1:N entre as entidades Organization e BroadcastService
ABCKABC
ABCKAEF
ABCKAKE
ABCKAMC
ABCKAPP
ABCKATC
ABCKATN
ABCKATU
ABCKATV

Vamos considerar outro exemplo. Neste caso, 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çãoNome do BroadcastServiceRelacionamento
CBSWXVTRelação de 1:N entre as entidades Organization e BroadcastService
CBSWYOU
CBS Sports NetworkCBS Sports Network HDRelação de 1:1 entre as entidades Organization e BroadcastService

Para deixar o ponto mais claro, vamos usar o exemplo dos canais EPIX e EPIX 2. Ambos estão disponíveis em todo o país, oferecem programações diferentes, 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 as entidades Organization e BroadcastService
EPIX 2 EPIX 2 Relação de 1:1 entre as entidades Organization e BroadcastService

Canais com mudança de horário

Nesse caso, cada canal com mudança de horário deve ser representado por uma entidade BroadcastService própria, e todas elas precisam se conectar a uma entidade Organization. Confira um exemplo de como os canais com mudança de horário devem ser modelados:

Nome da organizaçãoNome do BroadcastServiceRelacionamento
STARZ EncoreSTARZ Encore WestRelação de 1:N entre as entidades Organization e BroadcastService
STARZ EncoreSTARZ Encore East

Canais com diferença na qualidade de streaming

Por exemplo, os canais STARZ Encore Action HD e STARZ Encore Action SD têm exatamente a mesma programação (EPG), e a qualidade do stream é a única diferença entre eles. Nesse caso, cada canal de stream de qualidade de vídeo precisa ser representado por uma entidade BroadcastService, e todas elas precisam se conectar a uma entidade Organization.

Confira um exemplo de como modelar canais com diferença na qualidade de streaming:

Nome da organizaçãoNome do BroadcastServiceRelacionamento
SBSSBSRelação de 1:N entre as entidades Organization e BroadcastService
SBSSBS 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 de 1:N entre as entidades Organization e BroadcastService devido a canais com mudança de horário
Starz STARZ West
STARZ Kids & FamilySTARZ Kids & FamilyRelação de 1:1 entre as entidades Organization e BroadcastService
STARZ Encore BlackSTARZ Encore BlackRelação de 1:1 entre as entidades Organization e BroadcastService
STARZ Encore ClsicSTARZ Encore ClassicRelação de 1:1 entre as entidades Organization e BroadcastService
STARZ Encore FamilySTARZ Encore FamilyRelação de 1:1 entre as entidades Organization e BroadcastService
STARZ Encore SuspenseSTARZ Encore SuspenseRelação de 1:1 entre as entidades Organization e BroadcastService
STARZ Encore ActionSTARZ Encore Action HDRelação de 1:N entre as entidades Organization e BroadcastService devido a diferenças na qualidade do streaming
STARZ Encore ActionSTARZ Encore Action SD
STARZ EncoreSTARZ Encore WestRelação de 1:N entre as entidades Organization e BroadcastService devido a canais com mudança de horário
STARZ EncoreSTARZ Encore East

Exemplos

Provedor de serviços de TV nacional com programação regional

Organização

Uma provedora de serviços de TV fictícia, a Example Cable TV Company (Organization), oferece serviço de TV a cabo ao vivo em uma rede a cabo em duas regiões: Nova York e São Francisco. O serviço tem 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"
}

BroadcastService

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

CableOrSatelliteService

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 pela provedora 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"
        }
      ]
    }
  ]
}

TelevisionChannel

Essas entidades TelevisionChannel indicam que o provedor de serviços de TV a cabo 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 a cabo 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 nacional de serviços de TV na Internet

Organização

Um provedor de serviços de televisão por protocolo de Internet fictício, o ExampleTV Digital Service (Organization), oferece serviço de TV ao vivo na Internet, que contém os dois canais a seguir: 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"
}

BroadcastService

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

CableOrSatelliteService

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

TelevisionChannel

Essas entidades TelevisionChannel indicam que o IPTV 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"
  }
}

Lista de canais em que a troca é feita pelo provedor de serviços de TV

Organização

Um provedor de serviços de TV fictício, ExampleTV Digital Service (Organization), oferece acesso aos canais de IPTV fictícios ExampleTV-Sports (Organization) e ExampleTV-Drama (Organization) aos usuários por um conversor vendido pela empresa.

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

Essas 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"
    }
  ]
}

CableOrSatelliteService

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

TelevisionChannel

Essas entidades TelevisionChannel indicam que o IPTV 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

Organização

Um prestador 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 de Example Cable TV Service, um CableOrSatelliteService) em uma rede de TV 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"
}

BroadcastService

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 os requisitos de acesso para os canais NYTV e NJTV. Os 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"
    }
  ]
}

CableOrSatelliteService

A entidade CableOrSatelliteService descreve os serviços de TV a cabo oferecidos 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/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

Essas entidades TelevisionChannel indicam que o provedor de serviços de TV a cabo 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"
  }
}

Mudar de canal no Android TV

Com a integração de canais 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:

  • Realizado pelo Google: o Google faz a troca de canal usando um link direto fornecido em um feed de ações de mídia. Com as informações do feed, o Google pode pesquisar o link direto do canal que o usuário quer assistir. Em seguida, o Google leva o usuário diretamente ao conteúdo no app ou na plataforma do provedor de serviços.
  • Atendida 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 mudar de canal de várias maneiras diferentes. Entre em contato com o Google para saber mais sobre a integração com outras plataformas da empresa, como AndroidTV, Made By Google e Assistente para operadores.

O tipo de informação necessária em um feed de ações de mídia depende de como o provedor de serviços quer que o Google lide com a troca de canais.