Skip to content

Variables de contexte

Les variables de contexte sont des données temporaires que vous pouvez créer et utiliser au cours du parcours d’un utilisateur dans un Canvas spécifique. Elles vous permettent de personnaliser les délais, de segmenter les utilisateurs de manière dynamique et d’enrichir les messages sans modifier de façon permanente les informations du profil utilisateur. Les variables de contexte n’existent que dans la session du Canvas et ne persistent pas entre différents Canvas ni en dehors de la session.

Fonctionnement des variables de contexte

Les variables de contexte peuvent être définies de deux manières :

  • À l’entrée du Canvas : lorsque les utilisateurs entrent dans un Canvas, les données de l’événement ou du déclencheur API peuvent automatiquement renseigner les variables de contexte.
  • Dans une étape de contexte : vous pouvez définir ou mettre à jour manuellement des variables de contexte à l’intérieur du Canvas en ajoutant une étape de contexte.

Chaque variable de contexte comprend :

  • Un nom (tel que flight_time ou subscription_renewal_date)
  • Un type de données (tel que nombre, chaîne de caractères, heure ou tableau)
  • Une valeur que vous attribuez à l’aide de Liquid ou via l’outil Ajouter une personnalisation.

Une fois définie, vous pouvez utiliser une variable de contexte dans l’ensemble du Canvas en la référençant dans ce format : {{context.${example_variable_name}}}.

Par exemple, {{context.${flight_time}}} pourrait renvoyer l’heure de vol prévue de l’utilisateur.

Chaque fois qu’un utilisateur entre dans le Canvas — même s’il y est déjà entré auparavant — les variables de contexte sont redéfinies en fonction des dernières données d’entrée et de la configuration du Canvas. Cette approche avec état permet à chaque entrée dans le Canvas de maintenir son propre contexte indépendant, permettant aux utilisateurs d’avoir plusieurs états actifs au sein du même parcours tout en conservant le contexte spécifique de chaque état.

Par exemple, si un client a deux vols à venir, il aura deux états de parcours distincts s’exécutant simultanément, chacun avec ses propres variables de contexte spécifiques au vol, comme l’heure de départ et la destination. Cela vous permet d’envoyer des rappels personnalisés concernant son vol de 14 h vers New York tout en envoyant des mises à jour différentes concernant son vol de 8 h vers Los Angeles le lendemain, de sorte que chaque message reste pertinent par rapport à la réservation spécifique.

Considérations

Vous pouvez définir jusqu’à 10 variables de contexte par étape de contexte. Chaque nom de variable peut contenir jusqu’à 100 caractères et ne doit utiliser que des lettres, des chiffres ou des underscores.

Les définitions de variables de contexte peuvent contenir jusqu’à 10 240 caractères. Si vous transmettez des variables de contexte dans un Canvas déclenché par API, elles partagent le même espace de noms que les variables créées dans une étape de contexte. Par exemple, si vous envoyez une variable purchased_item dans l’objet de contexte de l’endpoint /canvas/trigger/send, vous pouvez la référencer comme {{context.${purchased_item}}}. Si vous redéfinissez cette variable dans une étape de contexte, la nouvelle valeur remplacera la valeur API pour le parcours de cet utilisateur.

Vous pouvez stocker jusqu’à 50 Ko par étape de contexte, répartis sur un maximum de 10 variables. Si la taille totale de toutes les variables d’une étape dépasse 50 Ko, les variables qui dépassent la limite ne seront ni évaluées ni stockées. Par exemple, si vous avez trois variables dans une étape de contexte :

  • Variable 1 : 30 Ko
  • Variable 2 : 19 Ko
  • Variable 3 : 2 Ko

La variable 3 ne sera ni évaluée ni stockée car la somme des variables précédentes dépasse 50 Ko.

Types de données

Les variables de contexte créées ou mises à jour dans l’étape peuvent se voir attribuer les types de données suivants.

Par défaut, le type de données heure est en UTC. Si vous utilisez un type de données chaîne de caractères pour stocker une valeur temporelle, vous pouvez définir l’heure dans un fuseau horaire différent comme PST.

Par exemple, si vous envoyez un message à un utilisateur la veille de son anniversaire, vous enregistreriez la variable de contexte comme type de données heure car il y a une logique Liquid associée à l’envoi la veille. En revanche, si vous envoyez un message de fête le jour de Noël (25 décembre), vous n’auriez pas besoin de référencer l’heure comme variable dynamique, donc utiliser un type de données chaîne de caractères serait préférable.

Pour les types de données objet, vous pouvez utiliser la notation par points pour spécifier un chemin à travers les données. Par exemple, si votre étape de contexte définit une variable de contexte order_summary avec cette structure :

1
2
3
4
5
{
  "shipping": {
    "carrier": "overnight"
  }
}

Dans un filtre Parcours d’audience ou Arbre décisionnel, saisissez le chemin comme nom de variable de contexte en utilisant la notation par points (par exemple, order_summary.shipping.carrier). Lorsque le filtre est évalué, Braze résout ce chemin vers la valeur overnight.

En Liquid (comme dans une étape Message), utilisez plutôt {{context.${order_summary}.shipping.carrier}}.

Utilisation des variables de contexte

Vous pouvez utiliser les variables de contexte partout où vous utilisez Liquid dans un Canvas, comme dans les étapes Message et Mise à jour utilisateur, en sélectionnant Ajouter une personnalisation. Pour les messages in-app et les bannières dans les étapes Message, vous pouvez sélectionner des variables de contexte pour déterminer quand le message doit expirer.

Par exemple, imaginons que vous souhaitez informer les passagers de leur accès au salon VIP avant leur prochain vol. Ce message ne doit être envoyé qu’aux passagers ayant acheté un billet en première classe. Une variable de contexte est un moyen flexible de suivre cette information.

Les utilisateurs entreront dans le Canvas lorsqu’ils achèteront un billet d’avion. Pour déterminer l’éligibilité à l’accès au salon, nous allons créer une variable de contexte appelée lounge_access_granted dans une étape de contexte, puis référencer cette variable de contexte dans les étapes suivantes du parcours utilisateur.

Variable de contexte configurée pour suivre si un passager est éligible à l'accès au salon VIP.

Dans cette étape de contexte, nous utiliserons {{custom_attribute.${purchased_flight}}} pour déterminer si le type de vol acheté est first_class.

Ensuite, nous créerons une étape Message pour cibler les utilisateurs où {{context.${lounge_access_granted}}} est true. Ce message sera une notification push incluant des informations personnalisées sur le salon. En fonction de cette variable de contexte, les passagers éligibles recevront les messages pertinents avant leur vol.

  • Les passagers en première classe recevront : « Profitez d’un accès exclusif au salon VIP ! »
  • Les passagers en classe affaires et économique recevront : « Surclassez votre vol pour un accès exclusif au salon VIP. »

Une étape Message avec différents messages à envoyer, selon le type de billet d'avion acheté.

Pour les Parcours d’actions et les critères de sortie

Vous pouvez exploiter les filtres de comparaison de propriétés avec des variables de contexte ou des attributs personnalisés dans ces actions de déclenchement : Effectuer un événement personnalisé et Effectuer un achat. Ces déclencheurs d’action prennent également en charge les filtres de propriétés pour les propriétés de base et imbriquées.

  • Lors de la comparaison avec des propriétés de base, les comparaisons disponibles correspondront au type de la propriété définie par l’événement personnalisé. Par exemple, les propriétés de type chaîne de caractères auront des comparaisons d’égalité exacte et de correspondance d’expression régulière. Les propriétés booléennes seront vrai ou faux.
  • Lors de la comparaison avec des propriétés imbriquées, les types ne sont pas prédéfinis, vous pouvez donc sélectionner des comparaisons sur plusieurs types de données pour les booléens, les nombres, les chaînes de caractères, l’heure et le jour de l’année, de manière similaire aux comparaisons pour les attributs personnalisés imbriqués. Si vous sélectionnez un type de données qui ne correspond pas au type de données réel de la propriété imbriquée au moment de la comparaison, l’utilisateur ne correspondra pas au parcours d’action ou aux critères de sortie.

Exemples de Parcours d’actions

Le parcours d’action suivant est configuré pour trier les utilisateurs ayant effectué l’événement personnalisé Account_Created avec la propriété de base source vers la variable de contexte app_source_variable.

Un exemple de parcours d'action qui référence une variable de contexte lors de l'exécution d'un événement personnalisé.

Le parcours d’action suivant est configuré pour faire correspondre la propriété de base brand pour le nom de produit spécifique shoes à une variable de contexte promoted_shoe_brand.

Un exemple de parcours d'action qui référence une variable de contexte lors d'un achat.

Exemples de critères de sortie

Les critères de sortie stipulent qu’à tout moment du parcours d’un utilisateur dans le Canvas, il quittera le Canvas si :

  • Il effectue l’événement personnalisé Abandon Cart, et
  • La propriété de base Item in Cart correspond à la valeur de chaîne de caractères de la variable de contexte cart_item_threshold.

Critères de sortie configurés pour faire sortir un utilisateur s'il effectue un événement personnalisé basé sur la variable de contexte.

Les critères de sortie stipulent qu’à tout moment du parcours d’un utilisateur dans le Canvas, il quittera le Canvas si :

  • Il effectue un achat spécifique pour le nom de produit « book », et
  • La propriété imbriquée « loyalty_program » de cet achat est égale à l’attribut personnalisé « VIP » de l’utilisateur.

Critères de sortie configurés pour faire sortir un utilisateur s'il effectue un achat.

Définir une expiration

Pour les bannières et les messages in-app dans une étape Message d’un Canvas, sélectionnez Une durée après la disponibilité de l’étape pour l’expiration, puis activez Personnaliser la durée pour piloter la fenêtre de disponibilité à partir d’une variable de contexte — par exemple, pour correspondre à la durée d’une promotion ou d’une réservation définie dans une étape de contexte.

Personnaliser la durée s’applique à cette option d’expiration basée sur la durée. Si vous choisissez plutôt À une date et heure spécifiques, définissez l’expiration à l’aide des contrôles de date et d’heure.

Délais des Parcours d’actions

Dans une étape Parcours d’actions, sous Fenêtre d’évaluation, activez Personnaliser le délai pour définir la durée pendant laquelle les utilisateurs sont retenus dans l’étape à partir d’une variable de contexte. Utilisez cette option lorsque la période d’attente doit varier par utilisateur en fonction de détails tels que le niveau ou la région.

Filtres de variables de contexte

Vous pouvez créer des filtres qui utilisent des variables de contexte précédemment déclarées dans les étapes Parcours d’audience et Arbre décisionnel.

Les variables de contexte sont déclarées et accessibles uniquement dans le périmètre d’un Canvas, ce qui signifie qu’elles ne peuvent pas être référencées dans les segments. Les filtres de variables de contexte fonctionnent de manière similaire dans les étapes Parcours d’audience et Arbre décisionnel — les étapes Parcours d’audience représentent plusieurs groupes, tandis que les étapes Arbre décisionnel représentent des décisions binaires.

Exemple d'étape Arbre décisionnel avec l'option de créer un filtre avec une variable de contexte.

De la même manière que les variables de contexte Canvas ont des types prédéfinis, les comparaisons entre variables de contexte et valeurs statiques doivent avoir des types de données correspondants. Le filtre de variable de contexte permet des comparaisons sur plusieurs types de données pour les booléens, les nombres, les chaînes de caractères, l’heure et le jour de l’année, de manière similaire aux comparaisons pour les attributs personnalisés imbriqués.

Voici un exemple de filtre de variable de contexte comparant la variable de contexte product_name à l’expression régulière /braze/.

Configuration d'un filtre pour la variable de contexte « product_name » correspondant à l'expression régulière « /braze/ ».

Comparaison avec des variables de contexte ou des attributs personnalisés

En activant le bouton Comparer à une variable de contexte ou un attribut personnalisé, vous pouvez construire des filtres de variables de contexte qui comparent avec des variables de contexte précédemment définies ou des attributs personnalisés utilisateur. Cela peut être utile pour effectuer des comparaisons dynamiques par utilisateur, comme le context déclenché par API, ou pour condenser une logique de comparaison complexe définie à travers des variables de contexte.

Imaginons que vous souhaitez envoyer un rappel personnalisé aux utilisateurs après une période d’inactivité dynamique : toute personne ne s’étant pas connectée à votre application au cours des trois derniers jours doit recevoir un message.

Vous avez une variable de contexte re_engagement_date définie comme {{now | minus: 3 | append: ' days'}}. Notez que 3 days peut être un montant variable également stocké comme attribut personnalisé de l’utilisateur. Ainsi, si la re_engagement_date est postérieure à la last_login_date (stockée comme attribut personnalisé sur le profil utilisateur), un message leur sera envoyé.

Configuration d'un filtre avec les attributs personnalisés comme type de personnalisation pour la variable de contexte « re_engagement_date » après l'attribut personnalisé « last_login_date ».

Le filtre suivant compare la variable de contexte reminder_date pour qu’elle soit antérieure à la variable de contexte appointment_deadline. Cela peut aider à regrouper les utilisateurs dans une étape Parcours d’audience pour déterminer s’ils doivent recevoir des rappels supplémentaires avant la date limite de leur rendez-vous.

Configuration d'un filtre avec les variables de contexte comme type de personnalisation pour la variable de contexte « reminder_date » sur la variable de contexte « appointment_deadline ».

Standardisation de la cohérence des fuseaux horaires

Bien que la plupart des propriétés d’événement utilisant le type horodatage soient déjà en UTC dans Canvas, il existe quelques exceptions. Avec l’ajout du contexte Canvas, toutes les propriétés d’événement d’horodatage par défaut dans les Canvas basés sur des actions seront systématiquement en UTC. Ce changement s’inscrit dans un effort plus large visant à garantir une expérience plus prévisible et cohérente lors de la modification des étapes et des messages Canvas. Notez que ce changement impactera tous les Canvas basés sur des actions, que le Canvas en question utilise ou non une étape de contexte.

New Stuff!