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 los 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 en la sesión. Un sobre de identidad es un identificador cifrado que proporciona un servicio de resolución de identidades y que permite a los sistemas de anuncios reconocer a un usuario en distintos dispositivos y plataformas sin exponer su información personal.

Configuración

Busca el LiveRamp sobre (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úyala por tus propias credenciales de API. No almacene los tokens confidenciales directamente en las configuraciones de funciones en producción. Considera la posibilidad de utilizar una estrategia de rotación de fichas.

RequestTimeoutMillisecondsConfigúrala 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 utilizando 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 con hash.

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

sugerencia

Para gestionar los errores de forma explícita, compruebe lo siguiente 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 Solicitud HTTP, Pre-session inicialización, Solución de problemas y supervisión y Límites.