En ads_manager.js, define una clase de wrapper para el StreamManager del SDK de IMA que realice solicitudes de transmisión, obtenga el manifiesto del grupo de anuncios, escuche los eventos de transmisión de IMA y pase los eventos emsg al SDK de IMA.
En ads_manager.js, la app de ejemplo de HbbTV de IMA configura los siguientes métodos:
requestStream()onStreamEvent()onEmsgEvent()loadAdPodManifest()
Inicializa el administrador de anuncios
Inicializa la clase de administrador de anuncios y establece objetos de escucha para los eventos de transmisión de IMA. En esta llamada, establece el controlador de eventos emsg con el método VideoPlayer.setEmsgEventHandler().
Realiza una solicitud para una transmisión de grupo de anuncios
Crea el método AdManager.requestStream() para crear un objeto PodStreamRequest con tu código de red de Google Ad Manager y la clave de contenido personalizado de la transmisión. Prueba tu app de HbbTV con la transmisión de publicación de bloques de DASH de muestra de IMA con los siguientes parámetros de transmisión:
- Código de red:
'21775744923' - Clave de contenido personalizado:
'hbbtv-dash'
Escucha los eventos de transmisión de anuncios
Crea el método AdManager.onStreamEvent() para controlar la respuesta de tu app a los eventos de transmisión de IMA, STREAM_INITIALIZED, AD_BREAK_STARTED y AD_BREAK_ENDED.
Controla los metadatos de transmisión de anuncios
Para pasar la información del evento emsg a IMA, crea el método AdManager.onEmsgEvent() con el método StreamManager.processMetadata(). La clase de reproductor de video llama a este método con el método VideoPlayer.setEmsgEventHandler().
Carga el manifiesto del grupo de anuncios
Crea el método AdManager.loadAdPodManifest() para precargar el manifiesto del grupo de anuncios con el reproductor de video. Crea una URL de manifiesto autenticada con la
estructura que se indica en Método: Manifiesto del bloque de DASH.
La
app de ejemplo de HbbTV
usa un valor único generado de forma aleatoria adBreakId. En las apps de producción, el valor adBreakId es una cadena alfanumérica, por ejemplo, ab-001, que se incrementa en uno por cada pausa publicitaria. Verifica que el valor adBreakId sea el mismo para todos los usuarios de la pausa publicitaria. Para obtener un valor adBreakId, te
recomendamos que uses la
API de DAI Ad Break.
En un entorno de producción, incluye el valor adBreakId y el valor podDuration en el evento de transmisión de HbbTV AD_BREAK_ANNOUNCE.
A continuación, crea la clase de aplicación principal para tu app de HbbTV que interactúa con la transmisión de HbbTV.