View a markdown version of this page

Esempio 1: arricchimento dei dati - AWS Elemental MediaTailor

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Esempio 1: arricchimento dei dati

Scenario

Un servizio di streaming desidera recuperare i dati sull'identità del pubblico da un servizio esterno (in questo caso LiveRamp) all'inizio della sessione e archiviarli nei parametri del player per il targeting degli annunci più avanti nella sessione. Una busta di identità è un identificatore crittografato fornito da un servizio di risoluzione delle identità che consente ai sistemi pubblicitari di riconoscere uno spettatore su più dispositivi e piattaforme senza esporre informazioni personali.

Configurazione

Recupera LiveRamp busta (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

Sostituiscilo Bearer ramp-token-789 con le tue credenziali API. Non archiviate i token sensibili direttamente nelle configurazioni delle funzioni in produzione. Prendi in considerazione l'utilizzo di una strategia di rotazione dei token.

Imposta in RequestTimeoutMilliseconds base al tempo di risposta previsto del servizio esterno. Un valore più basso riduce la latenza ma aumenta la possibilità di errori di timeout.

Mappatura delle funzioni

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

Cosa succede quando la funzione viene eseguita

  1. Un visualizzatore avvia una sessione di riproduzione.

  2. MediaTailor esegue il PRE_SESSION_INITIALIZATION lifecycle hook e viene eseguito. fetchLiveRamp

  3. La funzione crea l'URL della richiesta utilizzando player_params.hashedId e chiama l'API. LiveRamp Nell'URL, pid è presente l'ID partner ed iv è l'identificatore del visualizzatore con hash.

  4. L'espressione di output estrae il valore dalla prima busta nell'array di risposta (response.body.envelopes[0].value) e lo scrive in. player_params.envelope_id

Suggerimento

Per gestire gli errori in modo esplicito, controlla response.statusCode prima di accedere ai dati di risposta: {%response.statusCode = 200 ? response.body.envelopes[0].value : ''%}

Per ulteriori informazioni, consulta RICHIESTA_HTTP, INIZIALIZZAZIONE PRE_SESSION_, Risoluzione dei problemi e monitoraggio e Limits.