ExperimentContext dans votre composant ACUL sous la forme de experiment.
L’injection a lieu uniquement sur les écrans pour lesquels vous avez activé cette option. Vous l’activez pour chaque écran en ajoutant "experiment" au tableau context_configuration de cet écran.
Pour permettre à un écran de recevoir le contexte d’expérience, effectuez un appel PATCH au point de terminaison /api/v2/prompts/{prompt}/screen/{screen}/rendering.
Example
{prompt} par le nom de l’invite (par exemple, login) et {screen} par le nom de l’écran (par exemple, login).
La résolution de l’expérience et l’enrichissement du journal du locataire s’exécutent toujours, qu’un écran y ait été inscrit ou non. Cette inscription détermine uniquement si les propriétés
experiment sont transmises à votre composant ACUL. Il s’agit d’une mesure de minimisation des données : n’inscrivez pas les écrans qui n’ont pas besoin du contexte de l’expérience.La structure du contexte d’expérimentation
window.universal_login_context.experiment.
Dans Experiment Center (bêta), le SDK ACUL n’ajoute pas automatiquement la propriété
experiment; elle doit donc être définie à l’aide de window.universal_login_context.experiment.experiment vaut null.
Le paramètre config contient la configuration fusionnée complète de la variation attribuée. Experiment Center prend les paramètres de base de l’indicateur de fonctionnalité et y applique les surcharges de la variation attribuée. Chaque paramètre défini dans l’indicateur de fonctionnalité a toujours une valeur dans config.
Par exemple, si votre indicateur de fonctionnalité comporte un paramètre button_label dont la valeur de base est "Sign in" et que la variation attribuée le remplace par "Continue", alors config.button_label.value vaut "Continue".
Pour la variation témoin (sans surcharge), config.button_label.value vaut "Sign in".
Lire la valeur d’un paramètre
config[paramName].value :
?.) partout. La prop experiment est undefined lorsqu’aucune expérimentation n’est en cours.
Utiliser is_control
is_control est true lorsque l’utilisateur fait partie du groupe témoin (il a reçu la version de référence, sans personnalisation appliquée). Utilisez-le lorsque vous devez déterminer quels utilisateurs ont vu l’expérience non modifiée, ou lorsque vous souhaitez ignorer un traitement facultatif pour les utilisateurs du groupe témoin.
config.my_param.value) plutôt que is_control.
Les vérifications basées sur les paramètres sont plus lisibles et fonctionnent correctement, même si vous changez, dans une expérience ultérieure, la variante qui sert de variation témoin statistique.
Exemple : test de variantes de libellé
button_label: "Sign in")
Variante de traitement :
?? "Sign in" à la dernière ligne couvre le cas où aucune expérimentation n’est active (auquel cas experiment vaut undefined et config?.button_label?.value s’évalue à undefined). Si vous préférez, vous pouvez utiliser une vérification nulle distincte :
Exemple : déploiement d’une fonctionnalité avec un booléen
=== true (plutôt qu’un simple test de vérité) est intentionnelle : elle garantit que la bannière s’affiche uniquement lorsque le paramètre vaut explicitement true, et non lorsque experiment est undefined ou que config est absent.
Dépannage
experiment est undefined dans trois situations :
- Aucune expérience n’est actuellement active pour le locataire
- L’écran n’a pas été activé via
context_configuration - Experiment Center n’est pas activé pour le locataire
experiment peut être undefined. Le modèle le plus sûr :
experiment est présente. Le code qui repose sur la définition de experiment provoquera des erreurs lorsqu’aucune expérience n’est en cours, ce qui est le cas la plupart du temps.