Seguimiento del lado del cliente - AWS Elemental MediaTailor

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Seguimiento del lado del cliente

Gracias al seguimiento AWS Elemental MediaTailor por parte del clienteAPI, puedes incorporar controles de reproducción durante las pausas publicitarias en los flujos de trabajo de streaming. En el seguimiento por parte del cliente, el reproductor o el cliente emiten eventos de seguimiento, como las impresiones y las balizas publicitarias por cuartiles, al Ad Decision Server () y a otras entidades de verificación de anuncios. ADS Para obtener más información sobre la baliza de anuncios por impresiones y cuartiles, consulte. Balizamiento del lado del cliente Para obtener más información sobre ADS y otras entidades de verificación de anuncios, consulte. Integraciones de seguimiento de anuncios del lado del cliente

El seguimiento por parte del cliente permite funciones como las siguientes:

Con el seguimiento del MediaTailor lado del clienteAPI, puedes enviar metadatos al dispositivo de reproducción, lo que habilita otras funciones además del seguimiento del lado del cliente:

Habilitar el seguimiento por parte del cliente

Habilitas el seguimiento por parte del cliente para cada sesión. El reproductor accede al punto final del HTTP POST prefijo de inicialización de la sesión de la MediaTailor configuración. Si lo desea, el reproductor puede enviar metadatos adicionales MediaTailor para utilizarlos cuando realice anuncios publicitarios, llame al origen de un manifiesto e invoque o MediaTailor deshabilite funciones a nivel de sesión.

En el siguiente ejemplo, se muestra la estructura de los JSON metadatos:

{ "adsParams": { # 'adsParams' is case sensitive "param1": "value1", # key is not case sensitive "param2": "value2", # Values can contain spaces. For example, 'value 2' is an allowed value. }, "origin_access_token":"abc123", # this is an example of a query parameter designated for the origin "overlayAvails":"on" # 'overlayAvails' is case sensitive. This is an example of a feature that is enabled at the session level. }

Utilice la MediaTailor consola o configure API la plantilla de ADS solicitud URL para hacer referencia a estos parámetros. En el siguiente ejemplo, player_params.param1 son los parámetros del reproductor para param1 y player_params.param2 son los parámetros del reproductor paraparam2.

https://my.ads.com/path?param1=[player_params.param1]&param2=[player_params.param2]

Parámetros del servidor de anuncios

En el nivel superior de la JSON estructura hay un objeto. adsParams JSON Dentro de este objeto hay pares clave/valor que se MediaTailor pueden leer y enviar al servidor de anuncios en todas las solicitudes de sesión. MediaTailor admite los siguientes servidores de anuncios:

  • Administrador de anuncios de Google

  • SpringServe

  • FreeWheel

  • Publica

Parámetros de consulta de interacción de origen

Los pares clave/valor reservados que se encuentren en el nivel superior de la JSON estructura, como, y adParams availSuppressionoverlayAvails, no se agregan a la solicitud URL de origen en forma de parámetros de consulta. Cada solicitud de manifiesto de sesión que se MediaTailor envía al origen contiene estos parámetros de consulta. El origen ignora los parámetros de consulta ajenos. Por ejemplo, MediaTailor puede usar los pares clave/valor para enviar los tokens de acceso al origen.

Funciones configuradas por sesión

Utilice la JSON estructura de inicialización de la sesión para habilitar, deshabilitar o anular funciones como, y. MediaTailor overlayAvails availSuppression adSignaling Cualquier configuración de funciones que se apruebe durante la inicialización de la sesión anula la configuración a nivel de configuración. MediaTailor

nota

Los metadatos enviados MediaTailor al inicializar la sesión son inmutables y no se pueden agregar metadatos adicionales mientras dure la sesión. Utilice los marcadores SCTE -35 para incluir los datos que cambien durante la sesión. Para obtener más información, consulte Uso de variables de sesión.

ejemplo : Realizar un seguimiento de anuncios por parte del cliente para HLS
POST mediatailorURL/v1/session/hashed-account-id/origin-id/asset-id.m3u8 { "adsParams": { "deviceType": "ipad" # This value does not change during the session. "uid": "abdgfdyei-2283004-ueu" } }
ejemplo : Realizar un seguimiento de anuncios del lado del cliente para DASH
POST mediatailorURL/v1/session/hashed-account-id/origin-id/asset-id.mpd { "adsParams": { "deviceType": "androidmobile", "uid": "xjhhddli-9189901-uic" } }

Una respuesta correcta es aquella que tiene un HTTP 200 cuerpo de respuesta. El cuerpo contiene un JSON objeto con una manifestUrl y una trackingUrl clave. Los valores son relativos y URLs el reproductor puede utilizarlos tanto para la reproducción como para el seguimiento de eventos publicitarios.

{ "manifestUrl": "/v1/dashmaster/hashed-account-id/origin-id/asset-id.m3u8?aws.sessionId=session-id", "trackingUrl": "/v1/tracking/hashed-account-id/origin-id/session-id" }

Para obtener más información sobre el esquema de seguimiento del lado del cliente, consulte. Esquema de seguimiento de anuncios del lado del cliente

Prácticas recomendadas para el seguimiento del lado del cliente

En esta sección se describen las mejores prácticas para el seguimiento del lado del cliente, tanto en tiempo real como en MediaTailor los flujos de trabajo. VOD

Flujos de trabajo activos

Sondea el terminal de seguimiento en un intervalo que coincida con la duración objetivo o el período mínimo de actualizaciónDASH, para disponer siempre de los metadatos de seguimiento de anuncios más actualizados. HLS Hacer coincidir este intervalo es especialmente importante en los flujos de trabajo en los que las creatividades pueden tener un componente interactivo o superpuesto.

nota

Algunos reproductores apoyan a los oyentes de los eventos, lo que podría utilizarse como alternativa a las votaciones. Por ejemplo, la función de decoración de los identificadores de MediaTailor anuncios tendría que estar habilitada para cada sesión. Para obtener más información, consulte Decoración de ID de anuncio. Al usar esta función, se utiliza un identificador de intervalo de fechas (HLSDASH) o elemento de evento () sobre cada anuncio disponible. Los jugadores pueden usar estas etiquetas de manifiesto como mensaje para llamar al punto final MediaTailor de seguimiento de la sesión.

VODflujos de trabajo

Tras una inicialización correcta de la sesión y tras MediaTailor recibir el primer manifiesto que contenga contenido multimedia, solo tendrá que llamar al punto final de seguimiento una vez.

Flujo de llamadas para VOD flujos de trabajo. Llama al punto final de seguimiento del lado del cliente después de que se inicialice la sesión y MediaTailor reciba el primer manifiesto que contiene contenido multimedia.

Buscar balizas publicitarias con GetTracking

Usa el GetTracking punto final para reducir el número de anuncios que se devuelven a un reproductor. Por ejemplo, si la ventana de un manifiesto es amplia y dura mucho tiempo, la cantidad de balizas publicitarias devueltas puede afectar al rendimiento de los jugadores.

GetTrackingdevuelve un NextToken valor que puedes usar para reducir el número de balizas devueltas consultando la lista de balizas devueltas. Puedes revisar los NextToken valores para encontrar el valor deseado del campo de una baliza publicitaria. StartTimeInSeconds

  • En la primera llamada aGetTracking, se muestran todos los anuncios posibles que aparezcan en la ventana del manifiesto, incluidos los valores a NextToken y de cada uno.

  • Si una GetTracking solicitud no incluye unNextToken, se devuelven todos los anuncios de la ventana del manifiesto.

  • Si una GetTracking solicitud contiene un NextToken indicador pero no hay balizas nuevas que devolver, MediaTailor devuelve el mismo valor que el NextToken que enviaste en la solicitud original.

  • Cuando no haya más balizas correspondientes a un anuncio, GetTracking elimina el anuncio de su respuesta.

  • Los tokens GetTracking caducan después de 24 horas. Si un NextToken valor tiene más de 24 horas, la siguiente llamada a GetTracking devuelve un valor NextToken nulo.

Secuencia de llamadas generalizada del jugador GetTracking

Del jugador cliente, una GetTracking solicitud es una POST con un cuerpo de solicitud que contiene los anuncios NextToken y balizas relacionados con el token.

https://YouMediaTailorUrl/v1/tracking { "NextToken": "value" . . . }

La secuencia general para usar GetTracking con NextToken es la siguiente:

  1. Realice la primera llamada aGetTracking.

    Se devolverán todos los anuncios y balizas y el primero NextToken de las llamadas posteriores.

  2. Si el valor de NextToken es nulo, MediaTailor devuelve todos los balizas publicitarias.

  3. Si NextToken está caducado, MediaTailor HTTP devuelve un mensaje de error con el código 400.

    Realice una nueva llamada a GetTracking para recuperar un NextToken s. válido.

  4. Escanea toda la respuesta para encontrar una baliza publicitaria que se encuentre en el rango deseado. StartTimeInSeconds

  5. Realiza una nueva llamada a GetTracking con el valor de NextToken asociado al deseadoStartTimeInSeconds.

  6. Si es necesario, vuelve a revisar los anuncios devueltos hasta que encuentres exactamente los que quieres reproducir.

Ejemplo extendido

En este ejemplo, se muestra cómo GetTracking utilizarlos NextToken para limitar el número de balizas publicitarias que se devuelven a un jugador.

MediaTailor recibe una GetTracking solicitud. La respuesta contiene un anuncio con el identificador 9935407 y dos balizas con StartTimeInSeconds valores de 52,286 y 48,332 segundos, como se muestra en este diagrama.

Ejemplo de un solo anuncio con varias balizas publicitarias para su procesamiento por punto final GetTracking API

MediaTailor envía la JSON respuesta de la NextToken siguiente manera:

{ "NextToken": JF57ITe48t1441mv7TmLKuZLroxDzfIslp6BiSNL1IJmzPVMDN0lqrBYycgMbKEb "avails": [ { "ads": [ { "adId": "9935407", "adVerifications": [], "companionAds": [], "creativeId": "", "creativeSequence": "", "duration": "PT15S", "durationInSeconds": 15, "extensions": [], "mediaFiles": { "mediaFilesList": [], "mezzanine": "" }, "startTime": "PT30S", "StartTimeInSeconds": 45, "trackingEvents": [ { "beaconUrls": [ "http://adserver.com/tracking?event=Impression " ], "duration": "PT0S", "durationInSeconds": 0, "eventId": "9935414", "eventType": "secondQuartile", "startTime": "PT52.286S", "StartTimeInSeconds": 52.286 }, { "beaconUrls": [ "http://adserver.com/tracking?event=firstQuartile" ], "duration": "PT0S", "durationInSeconds": 0, "eventId": "9935412", "eventType": "firstQuartile", "startTime": "PT48.332S", "StartTimeInSeconds": 48.332 } ], "vastAdId": "" } ], "startTime": "PT46.47S", "StartTimeInSeconds": 46.47 } ] }

En la siguiente GetTracking solicitud, MediaTailor responde con el NextToken valor: JF57ITe48t1441mv7TmLKuZLroxDzfIslp6BiSNL1IJmzPVMDN 0 lqrBYycg bKEb M.

MediaTailor responde con anuncios y balizas que coinciden con los StartTimeInSeconds configurados en NextToken la llamada anterior.

Supongamos que ahora la respuesta incluye otro anuncio con el ID 9235407 además del anuncio anterior con el ID 9935407. Las balizas del ID de anuncio 9235407 tienen los valores 132.41 y 70.339, StartTimeInSeconds como se muestra en este diagrama.

Ejemplo de varios anuncios, cada uno con varios balizas publicitarias, para su procesamiento por punto final GetTracking API

MediaTailor recorre todas las balizas de la sesión para seleccionar las que tengan StartTimeInSeconds más de 52,286 segundos, que son la baliza 3 y la baliza 4 del anuncio con el ID 9235407:

{ "NextToken": ZkfknvbfsdgfbsDFRdffg12EdffecFRvhjyjfhdfhnjtsg5SDGN "avails": [ { "ads": [ { "adId": "9235407", "adVerifications": [], "companionAds": [], "creativeId": "", "creativeSequence": "", "duration": "PT15.816S", "durationInSeconds": 19.716, "extensions": [], "mediaFiles": { "mediaFilesList": [], "mezzanine": "" }, "startTime": "PT2M0S", "StartTimeInSeconds": 120.0, "trackingEvents": [ { "beaconUrls": [ "http://adserver.com/tracking?event=complete" ], "duration": "PT0S", "durationInSeconds": 0, "eventId": "8935414", "eventType": "firstQuartile", "startTime": "PT1M10.330S", "StartTimeInSeconds": 70.339 }, { "beaconUrls": [ "http://adserver.com/tracking?event=thirdQuartile" ], "duration": "PT0S", "durationInSeconds": 0, "eventId": "8935412", "eventType": "secondQuartile", "startTime": "PT2M12.41S", "StartTimeInSeconds": 132.41 } ], "vastAdId": "" }, ], "startTime": "PT36.47S", "StartTimeInSeconds": 36.47 } ] }