Variables

Les variables vous permettent d’afficher du contenu dynamique dans vos flows — prix des produits, détails des offres et autres données qui se mettent à jour en fonction du contexte de chaque utilisateur. Utilisez-les pour contrôler la visibilité des éléments et personnaliser le contenu des écrans.

Pour ouvrir le panneau des variables, cliquez sur l’icône { } dans le panneau gauche. Le panneau comporte trois onglets :

  • Custom : Variables que vous créez et gérez vous-même.
  • Product : Variables intégrées qui récupèrent les données localisées sur les produits et les offres depuis le store.
  • Element : Variables liées aux états des éléments sur le canvas.

Variables personnalisées

Créer une variable personnalisée

  1. Dans le panneau des variables, cliquez sur +.
  2. Saisissez un nom pour la variable.
  3. Sélectionnez un type : String, Number ou Boolean.
  4. Définissez une valeur initiale. C’est la valeur que la variable contient au démarrage du flow.
  5. Cliquez sur Create variable.

Utilisez des points dans les noms pour regrouper les variables liées — par exemple, user.score ou user.goal.

Création d'une variable personnalisée

Mettre à jour une variable via une interaction

Consultez l’article Actions pour plus de détails.

Vous pouvez mettre à jour la valeur d’une variable à l’exécution en ajoutant une action Set up variables à n’importe quel élément.

  1. Sélectionnez un élément sur le canvas.
  2. Dans l’onglet Interactions, cliquez sur Add trigger.
  3. Sélectionnez On tap et cliquez sur Add action. Dans le menu déroulant Action type, sélectionnez Set up variables.
  4. Cliquez sur Add variable. Sélectionnez la variable et définissez la nouvelle valeur.

Par exemple, vous pouvez affecter une valeur différente à user.goal selon la réponse de quiz sélectionnée par un utilisateur, puis utiliser cette variable pour le rediriger vers un écran différent.

Mise à jour d'une variable via une interaction

Variables de produit

Les variables de produit récupèrent des données localisées directement depuis les stores. Utilisez-les dans des champs de texte pour afficher des prix, titres et détails d’offres localisés, ou dans des conditions pour afficher ou masquer du contenu selon l’éligibilité aux offres.

VariableDescriptionExemple
prod_titleTitre localisé du produitPremium Subscription
prod_pricePrix localisé pour une période de facturation$9.99
prod_price_per_dayPrix de l’abonnement divisé par le nombre de jours dans la période de facturation. Vide pour les produits qui ne sont pas des abonnements.$0.33
prod_price_per_weekPrix de l’abonnement divisé par le nombre de semaines dans la période de facturation. Vide pour les produits qui ne sont pas des abonnements.$2.33
prod_price_per_monthPrix de l’abonnement ajusté sur un mois. Vide pour les produits qui ne sont pas des abonnements.$9.99
prod_price_per_yearPrix de l’abonnement ajusté sur un an. Vide pour les produits qui ne sont pas des abonnements.$119.88
offer_pricePrix localisé d’une offre de lancement ou promotionnelle. Vide si l’utilisateur n’est éligible à aucune offre.$0.99
offer_billing_periodPériode de facturation localisée d’une offre. Identique à offer_full_duration pour les offres d’essai gratuit et de paiement anticipé. Vide si l’utilisateur n’est pas éligible.1 week
offer_full_durationDurée totale localisée d’une offre. Vide si l’utilisateur n’est pas éligible.1 month
is_free_trialRenvoie true si l’utilisateur est éligible à une offre avec essai gratuit.true
is_pay_up_frontRenvoie true si l’utilisateur est éligible à une offre de paiement anticipé.true
is_pay_as_you_goRenvoie true si l’utilisateur est éligible à une offre de paiement à l’utilisation.true

Utilisez is_free_trial, is_pay_up_front et is_pay_as_you_go avec la visibilité conditionnelle pour afficher ou masquer des éléments selon l’offre à laquelle un utilisateur est éligible. Par exemple, affichez une chronologie d’essai gratuit uniquement lorsque is_free_trial est true.

Les valeurs des variables d’offre dépendent du type d’offre auquel l’utilisateur est éligible. Pour illustrer, prenons un abonnement hebdomadaire appelé « Premium Subscription » à 5 $, avec trois offres possibles :

  • Pay As You Go : 3 premières semaines à 3 $ (facturé par semaine), puis 5 $/semaine.
  • Pay Up Front : 3 premières semaines à 8 $ (facturé immédiatement), puis 5 $/semaine.
  • Free Trial : Première semaine gratuite, puis 5 $/semaine.

Dans cet exemple, prod_title renvoie « Premium Subscription » et prod_price renvoie 5 $. Les valeurs des variables d’offre dépendent de l’offre à laquelle l’utilisateur est éligible :

VariablePay As You GoPay UpfrontFree Trial
offer_price$3$8$0
offer_billing_period1 week3 weeks1 week
offer_full_duration3 weeks3 weeks1 week

Pour les offres Pay Upfront et Free Trial, offer_billing_period et offer_full_duration renvoient la même valeur. Pour Pay As You Go, elles diffèrent car la période de facturation est d’une semaine mais la durée totale est de trois semaines.

Pour en savoir plus sur les offres et leur configuration, consultez Offers.

Variables d’élément

Les variables d’élément capturent les choix de l’utilisateur — ce qu’il a sélectionné dans les quiz, l’onglet sur lequel il se trouve et si le bouton d’essai est activé.

Les types de variables d’élément dépendent du groupe :

  • Single choice : Quiz à choix unique et onglets :
    • selected_id : ID d’élément à utiliser dans les conditions
    • selected_title : Titre d’élément à utiliser dans le texte dynamique
  • Multi-choice : Quiz à choix multiple :
    • selected_ids : ID d’éléments à utiliser dans les conditions
    • selected_titles : Titres d’éléments à utiliser dans le texte dynamique
  • Toggle : Bouton d’essai :
    • is_selected : Valeur booléenne

Les cas d’utilisation courants incluent :

Utiliser des variables dans le texte

Pour insérer une variable dans un élément texte :

  1. Sélectionnez un élément texte sur le canvas.
  2. Dans l’onglet Design, trouvez le champ Content et rédigez votre texte.
  3. Cliquez sur l’icône { } dans le champ.
  4. Sélectionnez une variable dans la liste.

Vous pouvez également utiliser des variables dans d’autres éléments :

  • Utilisez des variables dans les liens et alertes pour les rendre dynamiques
  • Créez des conditions dynamiques basées sur des variables. Par exemple, la condition peut être if experience.current > experience.target, navigate to...
Insertion d'une variable dans un élément texte

Mettre en forme les variables

Il n’est pas possible d’appliquer une mise en forme de texte enrichi à une variable seule. Sélectionner une variable dans le champ Content et appliquer du gras, de l’italique, du souligné, du barré ou un changement de couleur n’a aucun effet.

Les paramètres de texte enrichi s’appliquent uniquement au bloc de texte entier. Pour mettre en forme le texte, utilisez la section Typography de l’onglet Design, ou appliquez un style de texte enregistré.

Réutiliser du contenu entre les écrans

Certains contenus se répètent dans votre flow — un libellé de bouton comme « Continuer », un appel à l’action récurrent, ou une mention légale affichée sur plusieurs écrans. Il en va de même pour les textes plus longs, comme une description de fonctionnalité réutilisée sur plusieurs écrans. Plutôt que de saisir ce contenu dans chaque élément, stockez-le dans une variable personnalisée. Cela s’avère utile quand vous redirigez différents utilisateurs vers différents écrans mais souhaitez conserver une formulation cohérente entre eux.

  1. Créez une variable personnalisée de type String et définissez sa valeur initiale sur le texte à réutiliser. Par exemple, nommez-la button.navigation et définissez la valeur sur Continue.
    Création d'une variable personnalisée avec sa valeur initiale définie sur le texte réutilisable
  2. Insérez cette variable dans le champ Content de chaque élément où le texte doit apparaître.

Pour modifier le texte partout, mettez à jour la valeur initiale de la variable une seule fois. Chaque élément qui utilise la variable se met à jour automatiquement, vous n’avez donc pas à modifier chaque écran manuellement.

La même variable personnalisée insérée dans le champ Content sur plusieurs éléments