Partager via


Utiliser des variables

Utilisez des variables pour stocker les réponses des clients afin de pouvoir réutiliser leur contenu ultérieurement dans la conversation.

Vous pouvez aussi utiliser des variables pour créer des expressions logiques qui dirigent dynamiquement le client vers différents chemins de conversation. Par exemple, enregistrez le nom d’un client dans une variable appelée customerName, et l’agent peut adresser le client par son nom au fur et à mesure que la conversation se poursuit.

Vous pouvez transmettre des variables à d'autres rubriques et flux Power Automate et les récupérer depuis ceux-ci.

Créer une variable

Tout nœud qui retourne une sortie, telle qu’un nœud Question , crée automatiquement une variable de sortie du type approprié.

Capture d’écran d’un nœud Question, avec le nom et le type par défaut de la variable mis en surbrillance.

Conseil

Renommez les nœuds pour les identifier plus facilement. Sélectionnez le champ nom du nœud pour mettre à jour le nom directement, ou sélectionnez les trois points (...) du nœud et sélectionnez Renommer dans le menu. Vous pouvez également renommer des nœuds dans l’éditeur de code.

Il n'est pas possible de renommer les nœuds Trigger et Go to step.

Les noms de nœud peuvent comporter jusqu’à 500 caractères.

Choisir une entité à utiliser

Les nœuds question utilisent des options à choix multiples par défaut. Pour utiliser une autre entité prédéfinie ou personnalisée, sélectionnez la zone Identifier , puis sélectionnez le type d’informations souhaitées.

Capture d’écran d’un nœud Question avec le volet « Choisir les informations à identifier » ouvert.

Renommer une variable

Pour faciliter la maintenance de vos agents, remplacez le nom par défaut de chaque variable par un nom explicite.

  1. Sélectionnez la variable. Le volet Propriétés de la variable apparaît.

  2. Sous Nom de la variable, entrez le nom souhaité pour votre variable.

Définir une variable

En règle générale, vous utilisez un nœud Question pour stocker l’entrée utilisateur dans une variable. Toutefois, vous pouvez définir la valeur d’une variable vous-même. Dans ces cas, utilisez un nœud Définir une valeur de variable.

  1. Sélectionnez l’icône Ajouter un nœud sous le nœud après lequel vous souhaitez ajouter un nœud Définir la valeur de variable.

  2. Sélectionnez Gestion des>variables Définir une valeur de variable. Un nœud Définir la valeur de la variable apparaît sur la zone de travail.

  3. Sélectionnez la case sous Définir la variable. Le panneau Sélectionner une variable s’affiche.

    • Si la variable que vous souhaitez définir existe déjà, sélectionnez-la.

    • Sinon, sélectionnez Créer nouveau. Cette action crée une variable. Son type est inconnu jusqu’à ce que vous lui attribuiez une valeur.

      Capture d’écran d’un nœud « Définir une valeur de variable » avec une nouvelle variable de type inconnu.

  4. Pour la valeur To, affectez une valeur à l’aide de l’une des options suivantes :

    • Saisissez une valeur littérale.

    • Sélectionnez une variable existante du même type.

    • Utilisez une formule Power Fx. Les formules Power Fx sont utiles pour les types plus complexes, où les valeurs littérales ne peuvent pas être utilisées, comme les types Table et Enregistrement.

Utiliser des variables dans les nœuds Action

Lorsque vous utilisez une variable dans un nœud Action , si son type de base correspond à un type de paramètre spécifié pour un flux ou pour une compétence Bot Framework, vous pouvez le transmettre à ce paramètre. La sortie des nœuds Action génère de nouvelles variables.

Pour plus de contexte, consultez les exemples de scénarios dans Appeler un flux d’agent à partir d’une rubrique et utiliser des variables d’entrée et de sortie pour transmettre des informations.

Utiliser des valeurs littérales pour les entrées de variables

Dans un nœud où vous définissez une valeur pour les paramètres d’entrée, vous pouvez entrer une valeur littérale au lieu de sélectionner une autre variable comme valeur.

Capture d’écran montrant l’utilisation d’une valeur littérale pour un paramètre d’entrée de variable nommé productName.

Le nœud tente d’interpréter les valeurs littérales comme une chaîne, un nombre ou une valeur booléenne. Par exemple, 123 est interprété comme un nombre. Si vous souhaitez qu’elle soit interprétée comme une valeur de chaîne à la place, encapsulez la valeur entre guillemets doubles, comme suit : « 123 ».

Pour certains scénarios, tels que les scénarios qui utilisent des types complexes, vous devrez peut-être utiliser une formule Power Fx pour définir un type spécifique.

Utiliser des variables d’environnement pour Azure Key Vault secrets

Une variable d’environnement peut référencer un secret dans Key Vault. Les variables d’environnement secrètes sont un cas spécial de variables d’environnement avec des considérations uniques.

Pour créer une variable d’environnement secrète dans Power Apps, vous devez configurer un coffre Key Vault.

Pour autoriser Copilot Studio à lire ce coffre-fort Key Vault, suivez les étapes suivantes :

  1. Attribuez le rôle Utilisateur des Secrets de Key Vault à l’application Microsoft Copilot Studio Service.

  2. Pour autoriser tous les agents de l’environnement à accéder au secret, créez une balise AllowedEnvironments sur le secret et ajoutez les ID d’environnement autorisés séparés par des virgules.

  3. Pour autoriser uniquement des agents spécifiques de l’environnement à utiliser ce coffre-fort, créez une balise AllowedAgents et insérez l’identificateur de l’agent au format {envId}/{schemaName}. Pour plusieurs valeurs, séparez les valeurs avec des virgules.

    Si vous atteignez le nombre maximum de caractères mais que vous avez encore besoin d’ajouter d’autres agents, ajoutez une autre balise avec un nom descriptif mais unique (par exemple : AllowedAgents2).

Le runtime de boîte de dialogue met en cache la valeur secrète pendant cinq minutes. Il met en cache les lectures infructueuses pendant 30 secondes.

Avertissement 

En ajoutant le secret à l’assistant, vous pourriez exposer la valeur de ce secret. Toute personne pouvant modifier l’agent dans l’environnement peut ajouter un nœud Message et retourner la valeur des variables d’environnement secrètes dans un message.

Volet Variables

Dans le volet Variables , vous pouvez afficher toutes les variables disponibles pour une rubrique, quels que soient les nœuds dans lesquels elles sont définies ou utilisées.

Pour ouvrir le volet Variables , sélectionnez Variables dans la barre de menus de la rubrique.

Capture d’écran du volet Variables, avec le bouton Variables mis en surbrillance.

Pour chaque variable de rubrique, vous pouvez sélectionner s’il peut recevoir sa valeur d’autres rubriques, renvoyer sa valeur à d’autres rubriques ou les deux. Vous pouvez également sélectionner une variable pour modifier ses propriétés dans le volet Propriétés de la variable.

Volet Propriétés de la variable

Dans le volet propriétés de la variable, vous pouvez renommer une variable, voir où votre agent l’utilise ou la convertir en variable globale. Vous ne pouvez pas convertir une variable globale en variable de rubrique. Vous pouvez également choisir si une variable de rubrique peut recevoir des valeurs ou transmettre sa valeur à d’autres rubriques.

Pour ouvrir le volet Propriétés de la variable pour une variable, sélectionnez la variable souhaitée dans le volet Variables. Vous pouvez également ouvrir le panneau propriétés de variable à partir de n’importe quel nœud qui utilise des variables en sélectionnant la variable souhaitée.

Transmettre des variables d’une rubrique à une autre

Lorsque vous redirigez une rubrique vers une autre, vous pouvez transmettre les valeurs des variables de la rubrique d’origine à la rubrique de destination et également renvoyer des valeurs de la rubrique de destination à la rubrique d’origine. Passer des variables entre les rubriques est particulièrement utile lorsqu’une rubrique précédente a déjà recueilli des informations dont une rubrique ultérieure a besoin. Vos utilisateurs apprécient certainement de ne pas avoir à répondre aux mêmes questions plusieurs fois.

Recevoir des valeurs d’autres rubriques

Lorsqu’une rubrique définit une variable (par exemple, dans un nœud Question), l’agent pose à l’utilisateur la question pour compléter la valeur de la variable. Si l’assistant a déjà acquis la valeur dans une précédente rubrique, il n’y a aucune raison de poser à nouveau la question. Dans ces cas, vous pouvez définir la variable sur Recevoir des valeurs d’autres rubriques. Lorsqu’une autre rubrique redirige vers cette rubrique, la valeur d’une variable ou une valeur littérale peut être transmise à cette variable, et la question peut être ignorée. L’expérience de l’utilisateur qui parle à l’agent est fluide.

Cet exemple utilise deux rubriques, Greeting et Talk to Customer. Les deux rubriques demandent le nom du client. Cependant, si la rubrique Salutation s’exécute en premier, la rubrique Conversation avec le client ignore sa question. À la place, elle utilise la valeur de la variable transmise à partir de la rubrique Salutation.

Voici le flux de la rubrique Conversation avec le client :

Capture d’écran du flux de conversation de la rubrique Conversation avec le client.

Comme indiqué dans le panneau de test, si cette rubrique est déclenchée en premier, elle demande à l’utilisateur « Que dois-je appeler ? » Elle stocke la valeur dans une variable de chaîne appelée customerName. La customerName variable est également définie pour obtenir sa valeur à partir d’autres rubriques. La rubrique se termine par le message suivant : « J’espère que vous passez une magnifique journée, customerName ! »

Voici le flux de la rubrique Salutation :

Capture d’écran du flux de conversation de la rubrique Salutation.

Comme indiqué dans le panneau de test, si cette rubrique est déclenchée en premier, elle demande à l’utilisateur « Qu’est-ce que votre nom ? » Elle stocke la valeur dans une variable de chaîne appelée customerName. La rubrique envoie le message suivant : « Enchanté de vous rencontrer, customerName ! » Elle redirige ensuite vers la rubrique Conversation avec le client, qui envoie le message : « J’espère que vous passez une magnifique journée, customerName ! » Notez toutefois que la rubrique Conversation avec le client a omis de demander à nouveau le nom de l’utilisateur. Au lieu de cela, elle a utilisé la valeur de la customerName variable passée à partir de la rubrique Greeting .

Enfin, voici à nouveau cette deuxième conversation, cette fois-ci du point de vue de la rubrique Conversation avec le client :

Capture d’écran du flux de conversation du sujet Parler au client lorsque la rubrique Accueil est déclenché en premier.

Parcourez les étapes de configuration d’une rubrique pour recevoir des valeurs d’autres rubriques. Cet exemple de scénario utilise le message d’accueil prédéfini comme rubrique source et une nouvelle rubrique Parler au client comme rubrique de destination, mais les mêmes étapes fonctionnent pour n’importe quelle rubrique qui doit utiliser une valeur d’une rubrique précédente lorsque cela est possible.

Configurer la rubrique de destination

La rubrique de destination reçoit des valeurs d’autres rubriques. Dans cet exemple, il s’agit de Talk to Customer.

  1. Créez une rubrique et nommez-la « Parler au client ».

  2. Ajoutez des expressions déclencheurs telles que « parler à moi », « parler avec moi » et « discuter avec moi ».

  3. Ajoutez un nœud Question et entrez « Comment dois-je vous appeler ? » pour le message.

  4. Sous Identifier, sélectionnez l’entité prédéfinie Nom de la personne.

  5. Sélectionnez le nom de la variable. Le volet Propriétés de la variable s’ouvre.

  6. Remplacez le nom customerNamepar défaut par , puis sélectionnez Recevoir les valeurs d’autres rubriques.

    Capture d’écran du volet « Propriétés de la variable » montrant la variable customerName et ses propriétés.

  7. Ajoutez un nœud Message.

  8. Dans la zone de message, entrez « J’espère que vous passez une magnifique journée, ».

  9. Sélectionnez l’icône Insérer une variable ({x}), puis sélectionnez la variable customerName.

  10. Sélectionnez l’espace après la variable et entrez un point d’exclamation ( !).

  11. Enregistrez la rubrique.

Configurer la rubrique source

La rubrique source est la rubrique qui redirige vers une autre rubrique. Elle fournit la valeur et la transmet à la rubrique de destination. Dans cet exemple, il s’agit du message d’accueil.

  1. Accédez à la rubrique Salutation et supprimez les nœuds par défaut, à l’exception du nœud Déclencheur.

  2. Ajoutez un nœud Question et entrez « Comment vous appelez-vous ? » pour le message.

  3. Sous Identifier, sélectionnez l’entité prédéfinie Nom de la personne.

  4. Remplacez le nom customerNameFromGreetingpar défaut par .

  5. Ajoutez un nœud Message.

  6. Dans la zone de message, entrez « Enchanté de vous rencontrer, ».

  7. Sélectionnez l’icône Insérer une variable ({x}), puis sélectionnez la variable customerNameFromGreeting.

  8. Sélectionnez l’espace après la variable et entrez un point d’exclamation ( !).

  9. Ajoutez un nœud Redirection et sélectionnez la rubrique de destination Conversation avec le client.

  10. Sélectionnez Ajouter une entrée, puis sélectionnez la variable dans la rubrique de destination à laquelle vous souhaitez transmettre une valeur.

    Capture d’écran de la rubrique Salutations avec la variable customerName ajoutée en entrée dans un nœud de redirection.

  11. Sélectionnez l’icône >, puis sélectionnez la variable dont vous souhaitez transmettre la valeur, customerNameFromGreeting, dans cet exemple.

    Le nœud Redirection doit ressembler à ce qui suit :

    Capture d’écran du nœud de redirection terminé dans la rubrique Salutation.

  12. Enregistrez la rubrique.

Renvoyer les valeurs aux rubriques d’origine

Dans un agent, une rubrique collecte une information spécifique. Plusieurs autres rubriques peuvent l’appeler et s’attendre à ce qu’elle retourne les informations sous forme de variable. La variable fait partie de la rubrique d’origine et peut être utilisée comme n’importe quelle autre variable. En rendant les informations que l’agent obtient dans les rubriques, cette approche réduit la nécessité de variables globales.

Cela correspond à l’exemple de la section précédente. Vous posez une nouvelle question dans la rubrique Parler au client , puis renvoyez la réponse à la rubrique Message d’accueil .

Configurer la rubrique source pour une variable renvoyée

Lorsque vous retournez une variable à une rubrique, la rubrique source est la rubrique qui fournit la valeur à transmettre à la rubrique d’origine. Dans cet exemple, la rubrique source est Conversation avec le client.

  1. Accédez à la rubrique source.

  2. Ajoutez un nœud Question et entrez « Dans quelle ville habitez-vous ? » pour le message.

  3. Sous Identifier, sélectionnez l’entité prédéfinie Ville.

  4. Sélectionnez la variable pour ouvrir le volet Propriétés de la variable. Nommez-le, puis sélectionnez customerCity.

    Capture d’écran de la rubrique Conversation avec le client avec la variable customerCity et ses propriétés mises en évidence.

  5. Ajoutez un nœud Message.

  6. Sélectionnez l’icône Insérer une variable ({x}), puis sélectionnez la variable customerCity.

  7. Après la variable dans la zone de message, entrez « doit être magnifique à cette période de l'année! ».

  8. Enregistrez la rubrique.

Configurer la rubrique de destination pour une variable renvoyée

Lorsque vous retournez une variable à une rubrique, la rubrique de destination reçoit des valeurs de la rubrique actuelle. Dans l’exemple suivant, la rubrique de destination est Greeting.

  1. Accédez à la rubrique de destination.

  2. La variable que vous avez sélectionnée dans la rubrique source s’affiche sur le nœud de redirection en tant que variable de sortie.

    Capture d’écran du flux de conversation du sujet Accueil avec une variable renvoyée dans un nœud de redirection.

  3. Enregistrez la rubrique.

Analyser les valeurs

Le nœud Valeur d'analyse convertit une valeur d'un type à un autre. Un cas d’usage courant pour le nœud Analyser valeur est de convertir le JSON brut. Par exemple, un agent appelle un flux qui appelle une API. L’API retourne un résultat. Vous avez besoin d’un moyen d’analyser ce résultat et de retourner une ou plusieurs variables primitives. À l’aide du nœud de valeur d’analyse , vous pouvez envoyer le résultat de l’API entière sous la forme d’une chaîne, par exemple :

{
    "Name": "Parker",
    "Position": "Product manager",
    "Company": "Contoso",
    "FormerPositions": [{
            "Position": "Customer service representative"
        }
    ]
}

Le nœud de valeur d’analyse convertit la variable de chaîne en variable de type Record. L’éditeur Power Fx fournit la complétion de code IntelliSense et des suggestions pour ce type.

Outre l’analyse de chaînes JSON, un usage clé du nœud valeur d’analyse est l’analyse des objets non typés au moment de l’exécution. Le cas d’usage le plus courant est lorsque vous recevez un événement et que vous devez analyser la valeur de l’événement. Vous pouvez également analyser la System.Activity.ChannelData propriété, qui varie au moment de l’exécution par canal.

Si vous devez analyser les informations d’un événement provenant de Teams, reportez-vous à la documentation du développeur Teams pour trouver un exemple de ce que l’événement attendu peut ressembler. Vous pouvez ensuite suivre les instructions de cette section, en utilisant l’exemple d’événement comme exemple de données.

Pour ajouter un nœud de valeur d’analyse à une rubrique :

  1. Sélectionnez l’icône Ajouter un nœud sous le nœud après lequel vous souhaitez analyser une valeur. Pointez sur Gestion des variables, puis sélectionnez Valeur d’analyse.

  2. Ajoutez un nœud Analyser la valeur et sélectionnez la variable que vous souhaitez analyser.

    Capture d’écran montrant une sélection de variable à analyser.

  3. Pour le type de données, sélectionnez À partir de données d’échantillon.

    Capture d’écran montrant la sélection du type de données pour un nœud Analyser la valeur.

  4. Sélectionnez Obtenir le schéma à partir de l’exemple JSON, entrez l’exemple JSON souhaité dans l’éditeur qui s’ouvre, puis sélectionnez Confirmer.

    Capture d’écran montrant l’éditeur dans lequel vous entrez des exemples de données JSON.

  5. Sélectionnez la variable pour contenir la valeur analysée. En règle générale, vous créez une variable.

    Capture d’écran montrant comment créer une variable pour contenir une valeur analysée directement à partir du nœud de valeur d’analyse.

    La variable de sortie a désormais le type attendu : enregistrement.

    Capture d’écran montrant que la variable contenant les données analysées a le type attendu : enregistrement.