View a markdown version of this page

SORTIE_PERSONNALISÉE - AWS Elemental MediaTailor

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

SORTIE_PERSONNALISÉE

Quand l’utiliser

CUSTOM_OUTPUTÀ utiliser lorsque la logique de votre fonction est purement informatique. Les cas d'utilisation courants incluent la classification des appareils en fonction des chaînes d'agents utilisateurs, la sélection des URL des serveurs de décision publicitaire avec une logique de A/B test et le reformatage des paramètres des joueurs avant qu'ils n'atteignent le serveur de décision publicitaire.

CUSTOM_OUTPUTles fonctions sont le type le plus rapide car elles évaluent les expressions en mémoire sans appel réseau. Choisissez ce type chaque fois que vous pouvez atteindre votre objectif sans contacter un service externe.

Champs de configuration

Une CUSTOM_OUTPUT fonction comporte deux champs :

  • Runtime — Langage d'expression. Réglez ce paramètre surJSONATA.

  • Sortie — Carte des paires clé-valeur. Chaque clé est un nom de liaison de sortie (tel queplayer_params.device_type), et chaque valeur est une expression qui est MediaTailor évaluée lors de l'exécution.

Note

{%...%}À utiliser pour encapsuler des expressions JSonata dans des champs de chaîne. Les valeurs dépourvues de ces délimiteurs sont traitées comme des chaînes statiques. Par exemple, "{%session.id%}" évalue l'expression alors qu'il "session.id" s'agit du texte littéral.

Comportement d'exécution

Lorsqu'une CUSTOM_OUTPUT fonction est MediaTailor exécutée, elle évalue chaque expression du bloc de sortie par rapport à l'état actuel de la session. Toutes les expressions voient le même instantané d'entrée. Les résultats évalués deviennent les résultats de la fonction.

Si une expression ne parvient pas à être évaluée, MediaTailor supprime la sortie complète de la fonction et procède comme si aucune fonction n'était attachée. La fonction ne valide pas partiellement les résultats.

Exemple : répartition A/B du trafic

La fonction suivante attribue de manière aléatoire chaque pause publicitaire à l'une des deux URL du serveur de décision publicitaire. Il est conçu pour le PRE_ADS_REQUEST cycle de vie.

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

Pour une présentation complète de cet exemple, consultezExemples de fonctions.