View a markdown version of this page

Ejemplo 1: enriquecimiento de datos - 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.

Ejemplo 1: enriquecimiento de datos

Escenario

Un servicio de streaming quiere obtener datos de identidad de la audiencia de un servicio externo (en este caso LiveRamp) al inicio de la sesión y almacenarlos en los parámetros del reproductor para segmentar los anuncios más adelante durante la sesión. Un sobre de identidad es un identificador cifrado proporcionado por un servicio de resolución de identidad que permite a los sistemas de anuncios reconocer a un espectador en todos los dispositivos y plataformas sin exponer su información personal.

Configuración

LiveRamp Sobre de búsqueda (HTTP_REQUEST):

{ "FunctionId": "fetchLiveRamp", "FunctionType": "HTTP_REQUEST", "HttpRequestConfiguration": { "Runtime": "JSONATA", "MethodType": "GET", "Url": "{%'https://api.example-identity.com/v2/envelope?pid=12345&iv=' & player_params.hashedId%}", "Headers": { "Authorization": "{%'Bearer ramp-token-789'%}" }, "RequestTimeoutMilliseconds": 2000, "Output": { "player_params.envelope_id": "{%response.body.envelopes[0].value%}" } } }
nota

Bearer ramp-token-789Sustitúyalas por tus propias credenciales de API. No almacene los tokens confidenciales directamente en las configuraciones de funciones en producción. Considera usar una estrategia de rotación de fichas.

RequestTimeoutMillisecondsEstablézcalo en función del tiempo de respuesta esperado de tu servicio externo. Un valor inferior reduce la latencia, pero aumenta la probabilidad de que se produzcan errores de tiempo de espera.

Mapeo de funciones

{ "FunctionMapping": { "PRE_SESSION_INITIALIZATION": "fetchLiveRamp" } }

¿Qué ocurre cuando se ejecuta la función

  1. Un espectador inicia una sesión de reproducción.

  2. MediaTailor ejecuta el enlace PRE_SESSION_INITIALIZATION del ciclo de vida y se ejecutafetchLiveRamp.

  3. La función crea la URL de la solicitud mediante la LiveRamp API player_params.hashedId y la llama. En la URL, pid está el ID del socio y iv es el identificador del espectador codificado con un hash.

  4. La expresión de salida extrae el valor del primer sobre de la matriz de respuesta (response.body.envelopes[0].value) y lo escribe en él. player_params.envelope_id

sugerencia

Para gestionar los errores de forma explícita, compruebe response.statusCode antes de acceder a los datos de respuesta: {%response.statusCode = 200 ? response.body.envelopes[0].value : ''%}

Para obtener más información, consulte HTTP_REQUEST, INICIALIZACIÓN PREVIA A LA SESIÓN, Solución de problemas y supervisión y Límites.