Como gravar apps de remetentes para o SDK de DAI do CAF

Ao contrário das integrações anteriores entre o Chromecast e a DAI, o SDK de DAI do CAF se concentra muito em manter os padrões e as expectativas definidos pelo framework de aplicativo de transmissão. Dessa forma, não é necessário personalizar muito os apps remetentes para gerenciar comunicações bidirecionais entre o IMA e o app remetente. Essas comunicações agora são gerenciadas com a funcionalidade integrada de intervalos de anúncios da CAF, em vez de exigir que sistemas de mensagens personalizados se comuniquem entre o app remetente e o destinatário.

Dependendo do remetente, talvez ainda seja necessário adicionar um código limitado aos remetentes para ativar totalmente o suporte a intervalos de anúncio do CAF, como adicionar suporte a anúncios puláveis a remetentes da Web.

Tudo o que é necessário agora, além do suporte a intervalos de anúncios do CAF, é incluir os dados de stream da DAI no objeto CAF MediaInfo enviado do remetente ao destinatário. É possível enviar esses dados de várias maneiras diferentes. Por exemplo, codifique o contentSourceID no seu receptor e envie somente o videoID com o objeto MediaInfo ou envie um identificador arbitrário ao destinatário e consulte um banco de dados on-line para os parâmetros reais da DAI.

No entanto, para fins de simplicidade, todos os nossos exemplos presumirão que você segue esta estrutura simples e convenção de nomenclatura para seus objetos MediaInfo:

contentId Um identificador exclusivo para este item de mídia.
contentUrl O URL do stream substituto a ser carregado se o StreamRequest da DAI falhar por qualquer motivo
streamType Para transmissões ao vivo, esse valor deve ser definido como "AO VIVO". Para streams de VOD, esse valor deve ser definido como "BUFFERED"
customData assetKey Apenas transmissões ao vivo. Identifica a transmissão ao vivo a ser carregada
contentSourceId Somente transmissões VOD. Identifica o feed de mídia que contém o stream solicitado.
videoId Somente transmissões VOD. Identifica o stream solicitado no feed de mídia especificado.
ApiKey Uma chave de API opcional que pode ser necessária para recuperar o URL de stream do SDK de DAI do IMA.
senderCanSkip Um valor booleano para informar ao destinatário se o dispositivo de envio pode mostrar um botão "Pular", o que permite anúncios puláveis.

Exemplo de transmissão AO VIVO:

{
  "media": {
    "contentId": "bbb",
    "contentUrl": "https://storage.googleapis.com/interactive-media-ads/media/bbb.m3u8",
    "streamType": "LIVE",
    "customData": {
      "assetKey": "sN_IYUG8STe1ZzhIIE_ksA",
      "ApiKey": "",
      "senderCanSkip": true
    }
  },
  "credentials": "testCredentials"
}

Exemplo de stream de VOD:

{
  "media": {
    "contentId": "tos",
    "contentUrl": "https://storage.googleapis.com/interactive-media-ads/media/tos.m3u8",
    "streamType": "BUFFERED",
    "customData": {
      "contentSourceId": "2548831",
      "videoId": "tears-of-steel",
      "ApiKey": "",
      "senderCanSkip": true
    }
  },
  "credentials": "testCredentials"
}