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

À utiliser CUSTOM_OUTPUT 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'agent utilisateur, la sélection des URL du serveur de décision publicitaire avec une logique de A/B test et le reformatage des paramètres du lecteur 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

Permet d'{%...%}encapsuler JSONata des expressions dans des champs de chaîne. Les valeurs sans ces délimiteurs sont traitées comme des chaînes statiques. Par exemple, "{%session.id%}" évalue l'expression alors que "session.id" c'est le texte littéral.

Comportement d'exécution

Lors de l' MediaTailor exécution d'une CUSTOM_OUTPUT fonction, 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 sorties de la fonction.

Si une expression ne parvient pas à être évaluée, MediaTailor supprime l'intégralité de la sortie 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 répondre aux exigences du 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.