View a markdown version of this page

Beispiel 4: Fallback für sekundären Anzeigenserver - AWS Elemental MediaTailor

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Beispiel 4: Fallback für sekundären Anzeigenserver

Szenario

Ihr primäres ADS liefert manchmal weniger Anzeigen, als die Werbeunterbrechung aufnehmen kann. In diesem Fall möchten Sie zusätzliche Anzeigen von einem sekundären Anzeigenserver abrufen und an die Anzeigenliste anhängen, damit die zusätzlichen Anzeigen die verbleibende Zeit ausfüllen können.

In diesem Beispiel wird der POST_ADS_RESPONSE Lifecycle-Hook verwendet. Eine VAST_REQUEST Funktion ruft die sekundären Anzeigen ab, und a SEQUENTIAL_EXECUTOR orchestriert den Prozess. Der Ausgabeblock des Executors hängt die abgerufenen Anzeigen an die Anzeigenliste an, und der sekundäre Abruf wird vollständig RunCondition übersprungen, wenn die primäre Antwort bereits genügend Anzeigen enthält.

Konfiguration der Funktion

Funktion abrufen (fetchBackupAds):

{ "FunctionId": "fetchBackupAds", "FunctionType": "VAST_REQUEST", "VastRequestConfiguration": { "Runtime": "JSONATA", "MethodType": "GET", "Url": "{%'https://backup-ads.example.com/vast?sid=' & session.uuid%}", "Headers": { "Accept": "application/xml" }, "RequestTimeoutMilliseconds": 1000, "Output": { "temp.backupAds": "{%response.parsedAds%}" } } }

Sequenz (backupAdsFallback):

{ "FunctionId": "backupAdsFallback", "FunctionType": "SEQUENTIAL_EXECUTOR", "SequentialExecutorConfiguration": { "Runtime": "JSONATA", "TimeoutMilliseconds": 2000, "FunctionList": [ { "FunctionId": "fetchBackupAds", "RunCondition": "{%$count(adsResponse.ads) < 3%}" } ], "Output": { "adsResponse.ads": "{%$count(adsResponse.ads) < 3 ? $append(adsResponse.ads, temp.backupAds)[] : adsResponse.ads[]%}" } } }

Zuordnung der Funktionen

{ "FunctionMapping": { "POST_ADS_RESPONSE": "backupAdsFallback" } }

Was passiert zur Laufzeit

  1. MediaTailor empfängt und analysiert die primäre ADS-Antwort und löst dann den POST_ADS_RESPONSE Lifecycle-Hook aus.

  2. Wenn die primäre Antwort weniger als 3 Anzeigen enthält, wird der sekundäre true Anzeigenserver RunCondition fetchBackupAds ausgewertet und aufgerufen. MediaTailor analysiert dann die Antwort als VAST, löst Wrapper-Weiterleitungen auf und schreibt die analysierten Anzeigen in. temp.backupAds

  3. Wenn die primäre Antwort bereits 3 oder mehr Anzeigen enthält, wird der Abruf übersprungen und nicht gesetzt. temp.backupAds

  4. Der Ausgangsblock der Sequenz schreibt die kombinierte Anzeigenliste in. adsResponse.ads Wenn der Abruf übersprungen wurde, übernimmt die Bedingung den else Zweig und gibt die ursprünglichen Anzeigen unverändert zurück. Da die sekundären Anzeigen bei demselben Hook-Aufruf von einer VAST_REQUEST Funktion analysiert wurden, werden die vollständigen VAST-Daten jeder angehängten Anzeige vor der Anzeigenauswahl MediaTailor wiederhergestellt.

  5. Die Anzeigenauswahl wird mit der kombinierten Liste fortgesetzt. Wenn der sekundäre Abruf fehlgeschlagen temp.backupAds ist, handelt es sich um ein leeres Array und die ursprüngliche Anzeigenliste wird unverändert verwendet.

Anmerkung

Das Ende des [] Ausgabeausdrucks ist erforderlich. Ohne Array-Zwang erzeugt ein Ausdruck, der Null oder Eins ergibt, kein Array, und die Ausgabe wird verworfen oder falsch angewendet. Weitere Informationen finden Sie unter Post-ads Antwort.

Weitere Informationen zu den in diesem Beispiel verwendeten Feldern finden Sie unter und. RIESIGE Anfrage Post-ads Antwort