Freigeben über


Mit Variablen arbeiten

Verwenden Sie Variablen, um die Antworten von Kunden zu speichern, damit Sie ihre Inhalte später in der Unterhaltung wiederverwenden können.

Sie können auch Variablen verwenden, um logische Ausdrücke zu erstellen, die den Kunden dynamisch durch verschiedene Unterhaltungen leiten. Speichern Sie beispielsweise den Namen eines Kunden in einer Variablen namens customerName, und der Agent kann den Kunden anhand des Namens adressiert, während die Unterhaltung fortgesetzt wird.

Sie können Variablen an andere Themen und Power Automate-Flüsse übergeben und von diesen zurückgeben.

Eine Variable erstellen

Jeder Knoten, der eine Ausgabe zurückgibt, z. B. ein Frageknoten , erstellt automatisch eine Ausgabevariable des entsprechenden Typs.

Screenshot eines Frageknotens mit hervorgehobenem Standardnamen und Typ der Variablen.

Trinkgeld

Benennen Sie Knoten um, um sie leichter identifizieren zu können. Wählen Sie das Namensfeld des Knotens aus, um den Namen direkt zu aktualisieren, oder wählen Sie die drei Punkte (...) des Knotens und wählen Sie im Menü Umbenen . Sie können Knoten im Code-Editor auch umbenennen.

Es ist nicht möglich, Trigger-Knoten und Zu Schritt gehen-Knoten umzubenennen.

Knotennamen können bis zu 500 Zeichen lang sein.

Die zu verwendenden Entität auswählen

Frageknoten verwenden standardmäßig Mehrfachauswahloptionen. Wenn Sie eine andere vordefinierte oder benutzerdefinierte Entität verwenden möchten, wählen Sie das Feld " Identifizieren " und dann den gewünschten Informationstyp aus.

Screenshot eines Frageknotens mit geöffnetem Bereich „Zu identifizierende Informationen auswählen“.

Eine Variable umbenennen

Damit Ihre Agents einfacher verwaltet werden können, ersetzen Sie den Standardnamen jeder Variablen durch einen aussagekräftigen Namen.

  1. Wählen Sie die Variable aus. Der Bereich Variableneigenschaften wird angezeigt.

  2. Geben Sie unter Dem Variablennamen den gewünschten Namen für die Variable ein.

Variable setzen

In der Regel verwenden Sie einen Frageknoten , um Benutzereingaben in einer Variablen zu speichern. Möglicherweise möchten Sie jedoch den Wert einer Variablen selbst festlegen. Verwenden Sie in diesen Fällen den Knoten Variablenwert festlegen.

  1. Wählen Sie unter dem Knoten das Symbol "Knoten hinzufügen" aus, nach dem Sie einen Variablenwertknoten festlegen möchten.

  2. Wählen Sie Variablenverwaltung>Eine Variable festlegen aus. Im Zeichenbereich wird ein Knoten zum Festlegen von Variablenwerten angezeigt.

  3. Wählen Sie das Feld unter "Variable festlegen" aus. Der Bereich "Variable auswählen " wird angezeigt.

    • Wenn die Variable, die Sie festlegen möchten, bereits vorhanden ist, wählen Sie sie aus.

    • Wählen Sie andernfalls "Neu erstellen" aus. Diese Aktion erstellt eine neue Variable. Sie ist vom Typ unbekannt, bis Sie ihr einen Wert zuweisen.

      Screenshot eines Knotens „Variablenwert festlegen“ mit einer neuen Variablen unbekannten Typs.

  4. Weisen Sie für "To-Wert" einen Wert mithilfe einer der folgenden Optionen zu:

    • Geben Sie einen Literalwert ein.

    • Wählen Sie eine vorhandene Variable desselben Typs aus.

    • Eine Power Fx Formell verwenden. Power Fx-Formeln sind nützlich für komplexere Typen, bei denen keine Literalwerte verwendet werden können, z. B. Tabellen- und Datensatztypen.

Verwenden von Variablen in Aktionsknoten

Wenn Sie eine Variable in einem Aktionsknoten verwenden, wenn der Basistyp einem parametertyp entspricht, der für einen Fluss oder für eine Bot Framework-Fähigkeit angegeben ist, können Sie sie zu diesem Parameter feeden. Die Ausgabe von Aktionsknoten generiert neue Variablen.

Weitere Kontextinformationen finden Sie in den Beispielszenarien in " Aufrufen eines Agent-Flusses aus einem Thema " und "Verwenden von Eingabe- und Ausgabevariablen zum Übergeben von Informationen".

Verwenden von Literalwerten für Variableneingaben

In einem Knoten, in dem Sie einen Wert für Eingabeparameter festlegen, können Sie einen Literalwert eingeben, anstatt eine andere Variable als Wert auszuwählen.

Screenshot zeigt die Verwendung eines Literalwerts für einen variablen Eingabeparameter mit dem Namen productName.

Der Knoten versucht, Literalwerte als Zeichenfolge, Zahl oder Booleschen Wert zu interpretieren. 123 wird beispielsweise als Zahl interpretiert. Wenn sie stattdessen als Zeichenfolgenwert interpretiert werden soll, umschließen Sie den Wert in doppelte Anführungszeichen, z. B. "123".

Für einige Szenarien, z. B. Szenarien, die komplexe Typen verwenden, müssen Sie möglicherweise eine Power Fx-Formel verwenden, um einen bestimmten Typ festzulegen.

Verwenden Sie Umgebungsvariablen für Azure Key Vault Geheimnisse

Eine Umgebungsvariable kann auf einen geheimen Schlüssel im Key Vault verweisen. Geheime Umgebungsvariablen sind ein Sonderfall von Umgebungsvariablen mit besonderen Gesichtspunkten.

Um eine geheime Umgebungsvariable in Power Apps zu erstellen, müssen Sie einen Key Vault-Tresor konfigurieren.

Führen Sie die folgenden Schritte aus, um Copilot Studio zum Lesen dieses Key Vault zu autorisieren.

  1. Weisen Sie der Microsoft Copilot Studio-Dienstanwendung die Rolle Key Vault Secrets-Benutzer zu.

  2. Um alle Agents aus der Umgebung für den Zugriff auf das Geheimnis zu autorisieren, erstellen Sie ein Tag AllowedEnvironments am Geheimnis und fügen Sie die zulässigen Umgebungs-IDs durch Kommas getrennt hinzu.

  3. Wenn Sie nur bestimmte Agenten aus der Umgebung für die Verwendung dieses Tresors autorisieren möchten, erstellen Sie ein Tag AllowedAgents, und legen Sie den Agent-Bezeichner im Format {envId}/{schemaName} fest. Trennen Sie die Werte bei mehreren Werte durch Kommas.

    Wenn Sie die maximale Anzahl an Zeichen erreicht haben, aber dennoch weitere Agenten hinzufügen müssen, fügen Sie ein weiteres Tag mit einem beschreibenden, aber eindeutigen Namen hinzu (zum Beispiel: AllowedAgents2).

Die Dialoglaufzeit speichert den geheimen Wert fünf Minuten lang zwischen. Sie speichert erfolglose Lesevorgänge für 30 Sekunden zwischen.

Warnung

Durch Hinzufügen des geheimen Schlüssels im Agent können Sie den Wert dieses geheimen Schlüssels verfügbar machen. Jeder, der den Agent in der Umgebung bearbeiten kann, kann einen Nachrichtenknoten hinzufügen und den Wert der variablen der geheimen Umgebung in einer Nachricht zurückgeben.

Variablenbereich

Im Bereich "Variablen " können Sie alle Variablen anzeigen, die für ein Thema verfügbar sind, unabhängig davon, in welchen Knoten sie definiert oder verwendet werden.

Um den Bereich "Variablen " zu öffnen, wählen Sie "Variablen " in der Menüleiste des Themas aus.

Screenshot des Bereichs

Für jede Themenvariable können Sie auswählen, ob sie ihren Wert aus anderen Themen empfangen, den Wert an andere Themen oder beides zurückgeben kann. Sie können auch eine Variable auswählen, um ihre Eigenschaften im Bereich Variableneigenschaften zu bearbeiten.

Bereich „Variableneigenschaften“

Im Bereich "Variable Eigenschaften " können Sie eine Variable umbenennen, sehen, wo ihr Agent sie verwendet, oder sie in eine globale Variable konvertieren. Sie können eine globale Variable nicht wieder in eine Themenvariable konvertieren. Sie können auch auswählen, ob eine Themenvariable Werte von anderen Themen empfangen oder ihren Wert an andere Themen übergeben kann.

Um den Bereich Variableneigenschaften für eine Variable zu öffnen, wählen Sie die gewünschte Variable im Bereich Variablen aus. Sie können den Bereich variabler Eigenschaften auch von jedem Knoten aus öffnen, der Variablen verwendet, indem Sie die gewünschte Variable auswählen.

Variablen zwischen Themen übergeben

Wenn Sie ein Thema zu einem anderen umleiten, können Sie die Werte von Variablen vom ursprünglichen Thema an das Zielthema übergeben und auch Werte vom Zielthema an das ursprüngliche Thema zurückgeben. Das Übergeben von Variablen zwischen Themen ist besonders hilfreich, wenn ein vorheriges Thema bereits Informationen gesammelt hat, die ein späteres Thema benötigt. Ihre Benutzer wissen sicherlich, dass sie nicht mehr als einmal dieselben Fragen beantworten müssen.

Werte aus anderen Themen empfangen

Wenn ein Thema eine Variable definiert (z. B. in einem Frageknoten), bittet der Agent den Benutzenden, den Wert der Variablen einzugeben. Wenn der Agent den Wert bereits in einem früheren Thema erfasst hat, gibt es keinen Grund, die Frage noch einmal zu stellen. In solchen Fällen können Sie die Variable als Werte aus anderen Themen empfangen festlegen. Wenn ein anderes Thema an dieses Thema umgeleitet wird, kann es den Wert einer Variablen oder eines Literalwerts an diese Variable übergeben und die Frage überspringen. Die Erfahrung für den Benutzer, der mit dem Agent kommuniziert, ist nahtlos.

In diesem Beispiel werden zwei Themen verwendet: Greeting und Talk to Customer. Beide Themen fragen nach dem Namen des Kunden. Wenn das Thema Begrüßung jedoch zuerst ausgeführt wird, überspringt das Thema Mit dem Kunden sprechen diese Frage. Stattdessen wird der aus dem Thema Begrüßung übergebene Wert der Variable verwendet.

Der Flow des Themas Mit dem Kunden sprechen lautet wie folgt:

Screenshot des Gesprächsflusses des Themas „Mit dem Kunden sprechen“.

Wie im Testbereich gezeigt, wird dieser Dialog zuerst ausgelöst und fragt den Benutzer: "Wie soll ich Sie nennen?" Der Wert wird dann in einer Zeichenfolgenvariable namens customerName gespeichert. Die customerName Variable wird auch so festgelegt, dass der Wert aus anderen Themen abgerufen wird. Das Thema endet mit der Nachricht: Ich hoffe, Sie haben einen wundervollen Tag, customerName!

Der Flow des Themas Begrüßung lautet wie folgt:

Screenshot des Gesprächsflusses des Themas „Begrüßung“.

Wie im Testbereich gezeigt, wird der Benutzer gefragt, ob dieses Thema zuerst ausgelöst wird: "Wie lautet Ihr Name?" Er speichert den Wert in einer Zeichenfolgenvariable namens customerName. Das Thema sendet die Nachricht: Freut mich, Sie kennenzulernen, customerName! Anschließend wird zum Thema Mit Kunden sprechen weitergeleitet, in dem die Nachricht gesendet wird: Ich hoffe, Sie haben einen schönen Tag, customerName! Beachten Sie jedoch, dass im Thema Mit Kunden sprechen die erneute Frage nach dem Namen des Benutzers übersprungen wurde. Stattdessen wurde der Wert der customerName Variablen verwendet, die aus dem Grußthema übergeben wurde.

Zum Schluss finden Sie hier noch einmal die zweite Unterhaltung, diesmal aus der Perspektive des Themas Mit dem Kunden sprechen:

Screenshot des Gesprächsflusses zum Thema „Mit dem Kunden sprechen“, wenn das Thema „Begrüßung“ zuerst ausgelöst wird.

Führen Sie die Schritte zum Einrichten eines Themas zum Empfangen von Werten aus anderen Themen durch. In diesem Beispielszenario wird das vordefinierte Thema "Begrüßung " als Quellthema und ein neues Thema " Mit Kunden sprechen " als Zielthema verwendet. Dieselben Schritte funktionieren jedoch für jedes Thema, das einen Wert aus einem früheren Thema verwenden sollte, wenn möglich.

Zielthema einrichten

Das Zielthema empfängt Werte aus anderen Themen. In diesem Beispiel ist es Mit dem Kunden sprechen.

  1. Erstellen Sie ein neues Thema, und nennen Sie es "Mit Kunden sprechen".

  2. Fügen Sie Triggerausdrücke wie "Mit mir sprechen", "mit mir sprechen" und "mit mir chatten" hinzu.

  3. Fügen Sie einen Frageknoten hinzu, und geben Sie Wie soll ich Sie nennen? für die Nachricht ein.

  4. Wählen Sie unter Identifizieren die vordefinierte Entität Personenname.

  5. Der Name der festzulegenden Variablen auswählen. Der Bereich Variableneigenschaften wird geöffnet.

  6. Ersetzen Sie den Standardnamen durch customerName, und wählen Sie dann "Empfangen von Werten aus anderen Themen" aus.

    Screenshot des Bereichs „Variableneigenschaften“ mit der Variable „customerName“ und ihren Eigenschaften.

  7. Einen Nachrichtenknoten hinzufügen.

  8. Geben Sie in das Nachrichtenfeld Ich hoffe, Sie haben einen wunderbaren Tag ein.

  9. Wählen Sie das Symbol Variable einfügen ({x}) und dann customerName aus.

  10. Wählen Sie das Leerzeichen hinter der Variablen aus, und geben Sie ein Ausrufezeichen (!) ein.

  11. Speichern Sie das Thema.

Datenquelle einrichten

Das Quellthema ist das Thema, das zu einem anderen Thema umgeleitet wird. Er stellt den Wert bereit und übergibt ihn an das Zielthema. In diesem Beispiel ist es "Gruß".

  1. Wechseln Sie zum Thema Begrüßung und löschen Sie die Standardknoten mit Ausnahme des Trigger-Knotens.

  2. Fügen Sie einen Frageknoten hinzu, und geben Sie Wie lautet Ihr Name? für die Nachricht ein.

  3. Wählen Sie unter Identifizieren die vordefinierte Entität Personenname.

  4. Ersetzen Sie den Standardnamen durch customerNameFromGreeting.

  5. Einen Nachrichtenknoten hinzufügen.

  6. Geben Sie im Nachrichtenfeld Freut mich, Sie kennenzulernen, ein.

  7. Wählen Sie das Symbol Variable einfügen ({x}) und dann customerNameFromGreeting aus.

  8. Wählen Sie das Leerzeichen hinter der Variablen aus, und geben Sie ein Ausrufezeichen (!) ein.

  9. Fügen Sie einen Umleitungsknoten hinzu, und wählen Sie das Zielthema Mit Kunden sprechen aus.

  10. Wählen Sie Eingabe hinzufügen und dann die Variable aus dem Zielthema aus, an das Sie einen Wert übergeben möchten.

    Screenshot des Begrüßungsthemas mit der Variablen customerName, die als Eingabe in einem Umleitungsknoten hinzugefügt wurde.

  11. Wählen Sie das > Symbol aus, und wählen Sie dann die Variable aus, deren Wert Sie übergeben möchten, in diesem Beispiel customerNameFromGreeting.

    Der Umleitungsknoten sieht möglicherweise wie folgt aus:

    Screenshot des abgeschlossenen Umleitungsknotens im Begrüßungsthema.

  12. Speichern Sie das Thema.

Werte an ursprüngliche Themen zurückgeben

In einem Agenten sammelt ein Themenbereich eine spezifische Information. Mehrere andere Themen können sie aufrufen und erwarten, dass sie die Informationen als Variable zurückgibt. Die Variable wird Teil des ursprünglichen Themas und kann wie jede andere Variable verwendet werden. Durch die Bereitstellung der Informationen, die der Agent für alle Themen abruft, reduziert dieser Ansatz die Notwendigkeit globaler Variablen.

Lassen Sie uns mit dem Beispiel aus dem vorherigen Abschnitt fortfahren. Sie stellen eine neue Frage im Thema „Mit Kunden sprechen“ und kehren dann für die Antwort zum Thema Begrüßung zurück.

Das Quellthema für eine zurückgegebene Variable einrichten

Wenn Sie eine Variable an ein Thema zurückgeben, ist das Quellthema das Thema, das den Wert bereitstellt, um ihn an das ursprüngliche Thema zurückzugeben. In diesem Beispiel ist das Quellthema Mit dem Kunden sprechen.

  1. Wechseln Sie zum Quellthema.

  2. Fügen Sie einen Frageknoten hinzu, und geben Sie Wo wohnen Sie? für die Nachricht ein.

  3. Wählen Sie unter Identifizieren die vordefinierte Entität Stadt.

  4. Wählen Sie die Variable aus, um den Bereich Variableneigenschaften zu öffnen. Benennen Sie es customerCity, und wählen Sie dann Rückgabewerte zu den ursprünglichen Themen aus.

    Screenshot des Themas „Mit Kunden sprechen“ mit der Variablen „customerCity“ und hervorgehobenen Eigenschaften.

  5. Einen Nachrichtenknoten hinzufügen.

  6. Wählen Sie das Symbol Variable einfügen ({x}) und dann customerCity aus.

  7. Geben Sie nach der Variablen im Nachrichtenfeld muss zu dieser Jahreszeit schön sein! ein.

  8. Speichern Sie das Thema.

Das Zielthema für eine zurückgegebene Variable einrichten

Wenn Sie eine Variable zu einem Thema zurückgeben, empfängt das Zielthema Werte aus dem aktuellen Thema. Im folgenden Beispiel lautet das Zielthema "Greeting".

  1. Wechseln Sie zum Zielthema.

  2. Die im Quellthema ausgewählte Variable wird im Knoten "Umleitung " als Ausgabevariable angezeigt.

    Screenshot des Gesprächsflusses des Themas „Begrüßung“ mit einer zurückgegebenen Variablen in einem Umleitungsknoten.

  3. Speichern Sie das Thema.

Analysieren von Werten

Der Knoten " Parse-Wert " konvertiert einen Wert von einem Typ in einen anderen. Ein gängiger Anwendungsfall für den Parse-Wertknoten konvertiert unformatiertes JSON.A common use case for the Parse value node is converting raw JSON. Beispielsweise ruft ein Agent einen Fluss auf, der eine API aufruft. Die API gibt ein Ergebnis zurück. Sie benötigen eine Möglichkeit, dieses Ergebnis zu analysieren und eine oder mehrere Grundtypvariablen zurückzugeben. Mithilfe des Parse-Wertknotens können Sie das gesamte API-Ergebnis als Zeichenfolge senden, z. B. folgendes:

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

Der Knoten "Parse-Wert " konvertiert die Zeichenfolgenvariable in eine Variable vom Typ "Record". Der Power Fx-Editor bietet IntelliSense-Codevervollständigung und Vorschläge für diesen Typ.

Neben der Analyse von JSON-Zeichenfolgen ist eine weitere wichtige Nutzung des Parse-Wert-Knotens das Parsen von untypisierten Objekten zur Laufzeit. Der häufigste Anwendungsfall ist, wenn Sie ein Ereignis empfangen und den Ereigniswert analysieren müssen. Oder Sie möchten die System.Activity.ChannelData Eigenschaft analysieren, die zur Laufzeit nach Kanal variiert.

Wenn Sie Informationen aus einem Ereignis analysieren müssen, das von Teams stammt, finden Sie in der Teams-Entwicklerdokumentation ein Beispiel dafür, wie das erwartete Ereignis aussehen könnte. Anschließend können Sie den Anweisungen in diesem Abschnitt folgen, indem Sie das Beispielereignis als Beispieldaten verwenden.

So fügen Sie einem Thema einen Parse-Wertknoten hinzu:

  1. Wählen Sie das Symbol Knoten hinzufügen unter dem gewünschten Knoten aus, nach dem Sie einen Wert parsen möchten. Zeigen Sie auf Variablenverwaltung, und wählen Sie Wert analysieren aus.

  2. Fügen Sie einen Knoten Wert parsen hinzu, und wählen Sie die Variable aus, die Sie parsen möchten.

    Screenshot mit der Auswahl der zu analysierenden Variable.

  3. Wählen Sie für den Datentyp "Aus Beispieldaten" aus.

    Screenshot mit der Auswahl des Datentyps für einen Knoten „Wert analysieren“.

  4. Wählen Sie " Schema aus Beispiel-JSON abrufen" aus, geben Sie das gewünschte JSON-Beispiel in den editor ein, der geöffnet wird, und wählen Sie "Bestätigen" aus.

    Screenshot des Editors, in dem Sie JSON-Beispieldaten eingeben.

  5. Wählen Sie die Variable aus, die den analysierten Wert enthalten soll. In der Regel erstellen Sie eine neue Variable.

    Screenshot, der zeigt, wie eine Variable erstellt wird, um einen analysierten Wert direkt vom Parse-Value-Knoten zu übernehmen.

    Die Ausgabevariable hat nun den erwarteten Typ: Record.

    Screenshot, der zeigt, dass die Variable, die die analysierten Daten enthält, den erwarteten Typ aufweist: Datensatz.