View a markdown version of this page

Benutzerdefinierte Ausgabe - 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.

Benutzerdefinierte Ausgabe

Wann sollte dies verwendet werden?

Verwenden Sie diese CUSTOM_OUTPUT Option, wenn Ihre Funktionslogik rein rechnerisch ist. Zu den häufigsten Anwendungsfällen gehören die Klassifizierung von Geräten anhand von User-Agent-Zeichenfolgen, die Auswahl von Anzeigenentscheidungsserver-URLs mit A/B Testlogik und die Neuformatierung von Player-Parametern, bevor sie den Ad Decision Server erreichen.

CUSTOM_OUTPUTFunktionen sind der schnellste Typ, da sie Ausdrücke im Speicher ohne Netzwerkaufrufe auswerten. Wählen Sie diesen Typ, wann immer Sie Ihr Ziel erreichen können, ohne einen externen Dienst kontaktieren zu müssen.

Felder für die Konfiguration

Eine CUSTOM_OUTPUT Funktion hat zwei Felder:

  • Runtime — Die Ausdruckssprache. Stellen Sie dies auf einJSONATA.

  • Ausgabe — Eine Abbildung von Schlüssel-Wert-Paaren. Jeder Schlüssel ist ein Ausgabebindungsname (z. B.player_params.device_type), und jeder Wert ist ein Ausdruck, der zur Laufzeit MediaTailor ausgewertet wird.

Anmerkung

Wird verwendet{%...%}, um JSONata Ausdrücke in Zeichenkettenfelder einzuschließen. Werte ohne diese Trennzeichen werden als statische Zeichenfolgen behandelt. Wertet beispielsweise den Ausdruck "{%session.id%}" aus, während es sich um den literalen "session.id" Text handelt.

Verhalten bei der Laufzeit

Wenn eine CUSTOM_OUTPUT Funktion MediaTailor ausgeführt wird, wertet sie jeden Ausdruck im Ausgabeblock anhand des aktuellen Sitzungsstatus aus. Allen Ausdrücken wird derselbe Eingabe-Snapshot angezeigt. Die ausgewerteten Ergebnisse werden zu den Ausgaben der Funktion.

Wenn ein Ausdruck nicht ausgewertet werden kann, wird die gesamte MediaTailor Ausgabe der Funktion verworfen und es wird so verfahren, als ob keine Funktion angehängt wäre. Die Funktion überträgt die Ergebnisse nicht teilweise.

Beispiel: Aufteilung A/B des Verkehrs

Die folgende Funktion weist jede Werbeunterbrechung nach dem Zufallsprinzip einer von zwei Ad Decision Server-URLs zu. Sie ist für den PRE_ADS_REQUEST Lifecycle-Hook konzipiert.

{ "FunctionId": "abTestAdsUrl", "FunctionType": "CUSTOM_OUTPUT", "CustomOutputConfiguration": { "Runtime": "JSONATA", "Output": { "adsRequest.url": "{%$random() < 0.5 ? 'https://ads.example.com/v1' : 'https://ads.example.com/v2'%}" } } }

Eine vollständige exemplarische Vorgehensweise für dieses Beispiel finden Sie unterBeispiele für Funktionen.