Mit Variablen arbeiten
Mithilfe von Variablen können Sie Antworten von Kunden speichern und später in der Unterhaltung wiederverwenden.
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 mit Namen ansprechen, während das Gespräch fortgesetzt wird.
Variablen können auch aus anderen Themen und Power Automate-Flows übergeben und zurückgegeben werden.
Eine Variable erstellen
Jeder Knoten, der Sie auffordert, eine Variable als Ausgabe auszuwählen, z. B. ein Frage-Knoten, erstellt automatisch eine Ausgabevariable des entsprechenden Typs.
Tipp
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 das Symbol Mehr (…) des Knotens und im Menü Umbenennen aus. 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 werden standardmäßig mit Multiple-Choice-Optionen erstellt. Wählen Sie für die Verwendung einer anderen vorgefertigten oder benutzerdefinierten Entität das Identifizieren-Feld und dann den Informationstyp aus, auf den der Agent achten soll.
Eine Variable umbenennen
Variablen wird beim Erstellen automatisch ein Name zugewiesen. Eine bewährte Methode ist, den Variablen aussagekräftige Namen zu geben, damit denjenigen, die Ihren Agenten verwalten müssen, der Zweck der Variablen klar ist.
Wählen Sie die Variable aus, um sie im Bereich für Variableneigenschaften zu öffnen.
Geben Sie unter Variablenname einen neuen Namen für Ihre Variable ein.
Variable setzen
In der Regel verwenden Sie einen Frageknoten, um Benutzereingaben in einer Variablen zu speichern. Es kann jedoch Situationen geben, in denen Sie den Wert einer Variable selbst festlegen möchten. Verwenden Sie in diesen Fällen den Knoten Variablenwert festlegen.
Wählen Sie Knoten hinzufügen (+), um einen Knoten hinzuzufügen, und wählen Sie dann Variablenverwaltung>Variablenwert festlegen.
Wählen Sie das Feld unter Variable festlegen und dann Eine neue Variable erstellen aus.
Es wird eine neue Variable erstellt. Sie ist vom Typ unbekannt, bis Sie ihr einen Wert zuweisen.
Für Bis Wert weisen Sie einen Wert zu, indem Sie eine der folgenden Optionen verwenden:
- Geben Sie einen Literalwert ein.
- Wählen Sie eine vorhandene Variable desselben Typs aus. Mit dieser Aktion wird Ihre Variable auf denselben Wert festgelegt wie die von Ihnen gewählte Variable.
- Verwenden Sie Power Fx-Formel. Power Fx-Formeln sind nützlich für komplexere Typen, bei denen keine Literalwerte verwendet werden können, z. B. Tabellen- und Datensatztypen.
Anmerkung
Wenn Sie beim Festlegen einer Variablen vom Typ „Zeichenfolge“ auf eine Nichtübereinstimmung zwischen Variable festlegen und Bis Wert stoßen, erscheint eine Fehlermeldung und die Schaltfläche Typkonflikt beheben wird angezeigt. Wählen Sie die Schaltfläche, damit Copilot Studio automatisch eine Formel Power Fx generiert, die die Nichtübereinstimmung behebt.
Variablen in Aktionsknoten verwenden
Wenn Sie eine Variable in einem Aktionsknoten verwenden und der Basistyp mit einem Parametertyp übereinstimmt, der für einen Flow oder eine Bot Framework-Fertigkeit angegeben ist, können Sie sie an diesen Parameter weitergeben. Die Ausgabe von Aktionsknoten generiert neue Variablen.
Verwenden von Literalwerten für Variableneingaben
In Knoten, in denen Sie einen Wert für Eingabeparameter festlegen können, können Sie immer einen Literalwert eingeben, anstatt eine andere Variable als Wert auszuwählen.
Der Knoten versucht, Literalwerte als Zeichenfolge, Zahl oder Booleschen Wert zu interpretieren. 123 wird beispielsweise als Zahl interpretiert. Wenn dieser Wert stattdessen als Zeichenfolgenwert interpretiert werden soll, können Sie ihn in doppelte Anführungszeichen setzen: 123.
In einigen Szenarien (z. B. Szenarien mit komplexen Typen) müssen Sie möglicherweise eine Power Fx Formel verwenden, um einen bestimmten Typ festzulegen.
Umgebungsvariablen für Azure Key Vault-Geheimnisse verwenden
Eine Umgebungsvariable kann auf ein Geheimnis im Key Vault verweisen. Geheime Umgebungsvariablen sind ein Sonderfall von Umgebungsvariablen mit besonderen Gesichtspunkten.
Um eine geheime Umgebungsvariable im Power Apps-Portal zu erstellen, müssen Sie den Key Vault konfigurieren.
Um das Lesen dieses Key Vaults für Copilot Studio zu autorisieren , müssen Sie die folgenden Aktionen ausführen:
Weisen Sie der
Microsoft Virtual Agents Service
-Anwendung dieKey Vault Secrets User
-Rolle zu.Um allen Agenten von der Umgebung aus den Zugriff auf das Geheimnis zu erlauben, erstellen Sie ein
AllowedEnvironments
-Tag auf das Geheimnis und fügen Sie die zulässigen Umgebung-IDs durch Kommas getrennt hinzu.Um nur bestimmten Agenten aus der Umgebung die Nutzung dieses Key Vaults zu erlauben, erstellen Sie ein
AllowedAgents
-Tag und geben Sie die Agenten-Kennung im Format{envId}/{schemaName}
ein. 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
).
Der geheime Wert wird zur Dialoglaufzeit fünf Minuten lang zwischengespeichert. Nicht erfolgreiche Lesevorgänge werden 30 Sekunden lang zwischengespeichert.
Warnung
Durch das Hinzufügen des Geheimnisses im Agenten können Sie den Wert dieses Geheimnisses allen Benutzenden zugänglich machen, die den Agenten in der Umgebung bearbeiten können, da diese Benutzenden den Agenten bearbeiten könnten, sodass er den Wert im SendMessage
-Knoten zurückgibt.
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 sind oder verwendet werden. Für jede Variable können Sie auswählen, ob sie ihren Wert von anderen Themen erhalten und/oder ihren Wert an andere Themen zurückgeben können soll. Sie können auch eine Variable auswählen, um deren Eigenschaften im Bereich Variableneigenschaften zu bearbeiten.
Wählen Sie in der Menüleiste des Themas die Option Variablen aus, um den Bereich Variablen zu öffnen.
Bereich Variableneigenschaften
Im Bereich Variableneigenschaften können Sie eine Variable umbenennen, sehen, wo eine Variable verwendet wird, oder eine Variable in eine globale Variable umwandeln. Sie können eine globale Variable jedoch nicht wieder in eine Themen-Variable 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 Variableneigenschaften auch öffnen, indem Sie eine Variable in einem beliebigen Knoten 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 Nutzer werden es zu schätzen wissen, dass sie die gleichen Fragen nicht noch einmal 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. Für diese Fälle können Sie die Variable auf 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 verwenden wir zwei Themen: Begrüßung und Kundengespräch. 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:
Wie im Testbereich gezeigt, wenn dieses Thema zuerst ausgelöst wird, fragt es den Benutzer: Wie soll ich Sie nennen? Der Wert wird in einer Zeichenfolgenvariablen mit dem Namen customerName gespeichert. Die Variable „customerName“ ist auch so festgelegt, dass sie ihren Wert aus anderen Themen abruft. Das Thema endet mit der Nachricht: Ich hoffe, Sie haben einen wundervollen Tag, customerName!
Der Flow des Themas Begrüßung lautet wie folgt:
Wie im Testbereich gezeigt, wenn dieses Thema zuerst ausgelöst wird, fragt es den Benutzer: Wie ist Ihr Name? Der Wert wird in einer Zeichenfolgenvariablen mit dem Namen customerName gespeichert. 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 wird der Wert der customerName-Variable aus dem Thema Begrüßung verwendet.
Zum Schluss finden Sie hier noch einmal die zweite Unterhaltung, diesmal aus der Perspektive des Themas Mit dem Kunden sprechen:
Lassen Sie uns die Schritte zum Einrichten eines Themas zum Empfangen von Werten aus anderen Themen durchgehen. In unserem Beispielszenario wird das vordefinierte Thema Begrüßung als Quellthema und ein neues Thema Mit Kunden sprechen als Zielthema verwendet. Die gleichen Schritte gelten jedoch für jedes Thema, das nach Möglichkeit einen Wert aus einem früheren Thema verwenden soll.
Zielthema einrichten
Das Zielthema ist das Thema, an das weitergeleitet wird, also das Thema, das die Werte aus anderen Themen erhält. In unserem Beispiel ist es Mit dem Kunden sprechen.
Erstellen Sie ein neues Thema, und nennen Sie es „Mit Kunden sprechen“.
Fügen Sie Trigger-Ausdrücke wie Rede mit mir, Sprich mit mir, Chatte mit mir hinzu.
Fügen Sie einen Frageknoten hinzu, und geben Sie Wie soll ich Sie nennen? für die Nachricht ein.
Wählen Sie unter Identifizieren die vordefinierte Entität Personenname.
Der Name der festzulegenden Variablen auswählen. Der Bereich Variableneigenschaften wird geöffnet.
Ersetzen Sie den Standardnamen durch customerName und wählen Sie dann Werte von anderen Themen empfangen.
Einen Nachrichtenknoten hinzfügen.
Geben Sie in das Nachrichtenfeld Ich hoffe, Sie haben einen wunderbaren Tag ein.
Wählen Sie das Symbol Variable einfügen ({x}) und dann customerName aus.
Wählen Sie das Leerzeichen hinter der Variablen aus, und geben Sie „!“ ein.
Speichern Sie das Thema.
Datenquelle einrichten
Das Quellthema ist das Thema, das die Umleitung durchführt, das den Wert bereitstellt und an das Zielthema übergibt. In unserem Beispiel lautet es Begrüßung.
Wechseln Sie zum Thema Begrüßung und löschen Sie die Standardknoten mit Ausnahme des Trigger-Knotens.
Fügen Sie einen Frageknoten hinzu, und geben Sie Wie lautet Ihr Name? für die Nachricht ein.
Wählen Sie unter Identifizieren die vordefinierte Entität Personenname.
Ersetzen Sie den Standardnamen durch „customerNameFromGreeting“.
Einen Nachrichtenknoten hinzfügen.
Geben Sie im Nachrichtenfeld Freut mich, Sie kennenzulernen, ein.
Wählen Sie das Symbol Variable einfügen ({x}) und dann customerNameFromGreeting aus.
Wählen Sie das Leerzeichen hinter der Variablen aus, und geben Sie „!“ ein.
Fügen Sie einen Umleitungsknoten hinzu, und wählen Sie das Zielthema Mit Kunden sprechen aus.
Wählen Sie Eingabe hinzufügen und dann die Variable aus dem Zielthema aus, an das Sie einen Wert übergeben möchten.
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:
Speichern Sie das Thema.
Werte an ursprüngliche Themen zurückgeben
Wenn eine Umleitung an ein Thema erfolgt und es eine Variable durch eine Frage oder auf andere Weise erhält, kann die Variable an das ursprüngliche Thema zurückgegeben werden. Die Variable wird Teil des ursprünglichen Themas und kann wie jede andere Variable verwendet werden. Informationen, die der Agent erhält, sind also themenübergreifend verfügbar, wodurch der Bedarf an globalen Variablen reduziert wird.
Lassen Sie uns mit dem Beispiel aus dem vorherigen Abschnitt fortfahren. Wir stellen eine neue Frage im Thema Mit Kunden sprechen und geben dann die Antwort im 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, der an das ursprüngliche Thema zurückgegeben werden soll. In diesem Beispiel ist das Quellthema Mit dem Kunden sprechen.
Wechseln Sie zum Quellthema.
Fügen Sie einen Frageknoten hinzu, und geben Sie Wo wohnen Sie? für die Nachricht ein.
Wählen Sie unter Identifizieren die vordefinierte Entität Stadt.
Wählen Sie die Variable aus, um den Bereich Variableneigenschaften zu öffnen. Nennen Sie es customerCity und wählen Sie dann Rückgabe von Werten an ursprüngliche Themenaus.
Einen Nachrichtenknoten hinzfügen.
Wählen Sie das Symbol Variable einfügen ({x}) und dann customerCity aus.
Geben Sie nach der Variablen im Nachrichtenfeld muss zu dieser Jahreszeit schön sein! ein.
Speichern Sie das Thema.
Das Zielthema für eine zurückgegebene Variable einrichten
Wenn Sie eine Variable an ein Thema zurückgeben, ist das Zielthema das Thema, das Werte vom aktuellen Thema empfängt. In unserem Beispiel lautet das Zielthema Begrüßung.
Wechseln Sie zum Zielthema.
Die Variable, die Sie im Quellthema ausgewählt haben, sollte auf dem Knoten Umleiten als Ausgabevariable angezeigt werden.
Speichern Sie das Thema.
Knoten „Wert parsen“
Mit dem Knoten Wert parsen können Sie einen Wert eines Typs in den Wert eines anderen Typs konvertieren. Wenn Sie einem Thema einen Knoten hinzufügen, wählen Sie das Symbol Knoten hinzufügen aus, zeigen Sie auf Variablenverwaltung, und wählen Sie Wert parsen aus.
Wichtige Szenarien, in denen der Knoten Wert parsen verwendet wird, konzentrieren sich auf die Konvertierung von rohem JSON oder untypisierten Variablen (deren Wert oder Struktur erst zur Laufzeit bekannt ist, z. B. ChannelData) in konkrete Typen.
Der Prozess startet, wenn ein Flow aufgerufen wird, der wiederum eine API aufruft. Die App gibt dann ein Ergebnis zurück. Normalerweise analysieren Sie diese Antwort und geben dann eine oder mehrere primitive Variablen zurück. Mit dem Knoten Wert parsen können Sie das gesamte API-Ergebnis als Zeichenfolge senden. Zum Beispiel:
{
"Name": "Parker",
"Position": "Product manager",
"Company": "Contoso",
"FormerPositions": [{
"Position": "Customer service representative"
}
]
}
Die Zeichenfolge-Variable, die Sie jetzt haben, kann unter Verwendung dieses neuen Knotens in eine Aufnahme-Variable mit vollständiger Intellisense-Unterstützung in Power Fx umgewandelt werden. Ein Beispiel mit Beispieldaten soll diesen Prozess veranschaulichen.
Beispiel für die Verwendung des Knotens „Wert parsen“
Fügen Sie einen Knoten Wert parsen hinzu, und wählen Sie die Variable aus, die Sie parsen möchten.
Wählen Sie den Datentyp aus. Wählen Sie in diesem Fall Aus Beispieldaten.
Wählen Sie Schema aus JSON-Beispiel und geben Sie das gewünschte JSON-Beispiel in den sich öffnenden Editor ein.
Geben Sie abschließend an, in welche Variable Sie den analysierten Wert einfügen möchten. Normalerweise würden Sie hierfür eine neue Variable erstellen.
Beachten Sie, dass die Ausgabevariable jetzt den richtigen Typ hat: Aufzeichnen.
Neben der Analyse von JSON-Zeichenfolgen ist eine wichtige Verwendung des Wert parsen Knotens das Analysieren von UntypedObjects zur Laufzeit. Der häufigste Anwendungsfall ist, wenn Sie ein Ereignis empfangen und den Ereigniswert analysieren müssen. Oder Sie können die System.Activity.ChannelData-Eigenschaft analysieren, die zur Laufzeit je nach Kanal variiert.
Wenn Sie Informationen aus einem Ereignis aus Teams analysieren möchten, müssten Sie die Teams-Entwicklungsdokumentation verwenden, um ein Beispiel dafür zu finden, wie das erwartete Ereignis aussehen könnte, und dann dieses Beispiel als Beispieldaten verwenden, wie zuvor in diesem Abschnitt beschrieben.