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.
Exemple 2 : répartition A/B du trafic
Scénario
Un service de streaming souhaite utiliser une fonction CUSTOM_OUTPUT pour répartir de manière aléatoire le trafic des demandes d'annonces entre deux URL de serveur de décision publicitaire (ADS) à des fins A/B de test. La moitié des demandes d'annonces sont destinées au terminal v1 et l'autre moitié au terminal v2.
Configuration
A/B répartition du trafic (CUSTOM_OUTPUT) :
{ "FunctionId": "abTestAdsUrl", "FunctionType": "CUSTOM_OUTPUT", "CustomOutputConfiguration": { "Runtime": "JSONATA", "Output": { "adsRequest.url": "{%$random() < 0.5 ? 'https://ads.example.com/v1/decision?session=' & session.id : 'https://ads.example.com/v2/decision?session=' & session.id%}" } } }
Dans cette configuration :
-
FunctionId— Nom unique pour cette fonction. -
FunctionType—CUSTOM_OUTPUTévalue les expressions sans passer d'appels HTTP. -
Output— CorrespondadsRequest.urlà une expression qui sélectionne de manière aléatoire l'une des deux URL ADS.
Cartographie des fonctions
{ "FunctionMapping": { "PRE_ADS_REQUEST": "abTestAdsUrl" } }
Que se passe-t-il lorsque la fonction s'exécute
Une interruption de publicité se produit pendant la lecture.
MediaTailor exécute le hook
PRE_ADS_REQUESTdu cycle de vie et s'exécuteabTestAdsUrl.La
$random()fonction renvoie une valeur comprise entre 0 et 1. Si la valeur est inférieure à 0,5, la fonction définit l'URL ADS sur le point de terminaison v1. Sinon, il définit l'URL vers le point de terminaison v2.
La $random() fonction est évaluée à chaque pause publicitaire, de sorte que la répartition se fait par demande d'annonce et non par session.
Astuce
Pour ajuster le ratio de répartition du trafic, modifiez la valeur de seuil. Par exemple, $random() < 0.8 envoie 80 % du trafic vers la première URL et 20 % vers la seconde.
Note
Writing to adsRequest.url remplace l'URL ADS par défaut configurée dans la configuration de lecture pour la pause publicitaire en cours.
Pour plus d’informations, consultez Sortie personnalisée, Pre-ads demande et JSONataréférence d'expression.