Variablen themenübergreifend wiederverwenden
Wichtig
Power Virtual Agents-Fähigkeiten und -Funktionen sind jetzt Teil von Microsoft Copilot Studio nach erheblichen Investitionen in generative KI und verbesserte Integrationen in Microsoft Copilot.
Einige Artikel und Screenshots beziehen sich möglicherweise auf Power Virtual Agents während wir Dokumentation und Schulungsinhalte aktualisieren.
Variablen speichern die Antworten Ihrer Kunden auf Fragen Ihres Copiloten. Sie können beispielsweise den Namen eines Kunden in einer Variablen namens UserName
speichern. Der Copilot kann den Kunden dann im weiteren Verlauf der Konversation mit seinem Namen ansprechen.
Standardmäßig kann der Wert einer Variablen nur in dem Thema verwendet werden, in dem die Variable erstellt wurde. Es ist jedoch möglich, denselben Wert themenübergreifend wiederzuverwenden. In einem „Willkommen“-Thema fragt der Bot beispielsweise nach dem Namen und der E-Mail-Adresse des Kunden. Im Thema „Terminbuchung“ soll sich der Copilot die Eingaben des Kunden merken und nicht noch einmal nachfragen.
Eine Möglichkeit der Wiederverwendung einer Variablen besteht darin, die Variable zwischen Themen zu übergeben. Die andere Möglichkeit besteht darin, den Bereich der Variablen als global festzulegen, und darum geht es in diesem Artikel. Globale Variablen werden so genannt, weil sie in allen Themen des gesamten Copiloten verfügbar sind.
Copilot-Variablen gelten während einer Einzelbenutzersitzung. Sie geben an, welche Variablen als Copilot-Variablen behandelt werden sollen, um sie von Variablen auf Themenebene zu unterscheiden.
Erstellen einer globalen Variablen
Sie erstellen eine globale Variable, indem Sie den Bereich jeder Themenvariablen ändern.
Erstellen Sie eine Variable, oder verwenden Sie den Bereich Variablen, um eine vorhandene Variable zu öffnen.
Wählen Sie im Bereich Variableneigenschaften die Option Global (jedes Thema kann zugreifen) aus.
Der Variablenname erhält das Präfix
Global.
, um es von den Variablen auf Themenebene zu unterscheiden. Zum Beispiel wird die VariableUserName
jetzt alsGlobal.UserName
angezeigt.Speichern Sie das Thema.
Der Name einer globalen Variablen muss über alle Themen hinweg eindeutig sein. Wenn ein Konflikt vorliegt, müssen Sie die Variable umbenennen, bevor Sie Ihr Thema speichern.
Verwenden von globalen Variablen
Wenn Sie eine Copilot-Nachricht in einem Nachrichten- oder Frageknoten verfassen, wählen Sie das {x}-Symbol aus, um sich die dem Thema zur Verfügung stehenden Variablen anzeigen zu lassen. Globale Variablen werden auf der Registerkarte Benutzerdefiniert neben den Themenvariablen angezeigt. Variablen werden in alphabetischer Reihenfolge aufgeführt.
Finden aller Themen mit einer globalen Variablen
Sie können ermitteln, wo eine globale Variable definiert wurde und von welchen anderen Themen sie verwendet wird. Dies kann nützlich sein, wenn Sie an einem neuen Copiloten arbeiten oder mehrere Variablen und komplexe Themenverzweigungen haben.
Wählen Sie im Erstellungsbereich eine globale Variable aus, oder öffnen Sie den Bereich Variablen, und wählen Sie eine globale Variable aus.
Wählen Sie im Bereich Variableneigenschaften im Abschnitt Referenz eines der Themen aus, in denen die Variable verwendet wird, um direkt zu diesem Thema und Knoten zu gelangen.
Lebenszyklus globaler Variablen
Standardmäßig bleibt der Wert einer globalen Variablen bestehen, bis die Sitzung endet. Der Knoten Variablenwerte löschen setzt die Werte globaler Variablen zurück und wird im Systemthema „Unterhaltung zurücksetzen“ verwendet. Dieses Thema kann entweder durch Weiterleitung ausgelöst werden oder wenn der Benutzer einen Triggerausdruck wie „Neu starten“ eingibt. In diesem Fall werden alle globalen Variablen zurückgesetzt.
Festlegen eines Wertes einer globalen Variablen aus externen Quellen
Wenn Sie sicherstellen möchten, dass der Copilot eine Unterhaltung mit etwas Kontext beginnt, können Sie eine globale Variable mithilfe einer externen Quelle initialisieren. Angenommen, auf Ihrer Website müssen sich die Benutzer anmelden. Da Ihr Copilot den Namen eines Benutzers bereits kennt, kann er Kunden mit Namen begrüßen, bevor diese ihre erste Frage eingeben.
Wählen Sie eine globale Variable aus.
Wählen Sie im Bereich Variableneigenschaften die Option Externe Quellen können Werte festlegen aus.
Globale Variablen in einem eingebetteten Copiloten festlegen
Wenn Sie Ihren Copiloten in eine einfache Webseite einbetten, können Sie Variablen und ihre Definitionen an die URL des Copiloten anhängen. Oder, wenn Sie etwas mehr Kontrolle wünschen, können Sie einen <script>
-Codeblock zum programmatischen Aufrufen und Verwenden von Variablen verwenden.
Der Variablenname in der Abfragezeichenfolge der URL muss mit dem Namen der globalen Variablen übereinstimmen, ohne das Global.
-Präfix. Eine globale Variable Global.UserName
würde in der Abfrage beispielsweise als UserName
bezeichnet.
Die nachfolgenden Beispiele enthalten eine einfache Deklaration für die Variablen. In einem Produktionsszenario könnten Sie als Abfrageparameter oder Variablendefinition eine andere Variable als Abfrageparameter oder Variablendefinition eine andere Variable übergeben, die bereits den Namen des Benutzers gespeichert hat (z.B. wenn Sie den Benutzernamen aus einem Anmeldeskript haben).
Hängen Sie die Variablen und ihre Definitionen an die URL des Copiloten als Parameter für Abfragezeichenfolgen im Format botURL?variableName1=variableDefinition1&variableName2=variableDefinition2
an.
Zum Beispiel:
- Sie haben eine globale Variable namens
Global.UserName
. - Die URL Ihres Copiloten lautet https://web.powerva.microsoft.com/webchat/bots/12345.
- Hängen Sie die Abfragezeichenfolge
UserName=
als https://web.powerva.microsoft.com/webchat/bots/12345?UserName=Renata an, um den Benutzernamen beim Starten einer Copilot-Unterhaltung auf einer Website weiterzugeben.
Beim Parameternamen wird die Groß-/Kleinschreibung nicht berücksichtigt. username=Renata
funktioniert auch in diesem Beispiel.
Einem benutzerdefiniertem Canvas globale Variablen hinzufügen
Sie können die Variable auch einem benutzerdefinierten Canvas hinzufügen.
Im
<script>
-Abschnitt auf der Seite, auf der Sie Ihren Copiloten haben, definieren Sie die Variablen wie folgt und ersetzenvariableName1
für den Variablennamen ohneGlobal.
-Präfix undvariableDefinition1
für die Definition. Trennen Sie mehrere Variablen durch Kommas (,
).const store = WebChat.createStore({}, ({ dispatch }) => next => action => { if (action.type === 'DIRECT_LINE/CONNECT_FULFILLED') { dispatch({ type: "WEB_CHAT/SEND_EVENT", payload: { name: "pvaSetContext", value: { "variableName1": "variableDefinition1", "variableName2": "variableDefinition2" } }, }); } return next(action); });
Rufen Sie in Ihrem
<script>
-Abschnittstore
auf, wenn Sie Ihren Copiloten einbetten. Siehe folgendes Beispiel, wostore
genau oberhalb aufgerufen wird, wostyleOptions
aufgerufen wird (Sie müssen dieBOT_ID
mit der ID Ihres Copiloten ersetzen):const BOT_ID = "12345-5678"; const theURL = "https://powerva.microsoft.com/api/botmanagement/v1/directline/directlinetoken?botId=" + BOT_ID; fetch(theURL) .then(response => response.json()) .then(conversationInfo => { window.WebChat.renderWebChat( { directLine: window.WebChat.createDirectLine({ token: conversationInfo.token, }), store, styleOptions }, document.getElementById('webchat') ); }) .catch(err => console.error("An error occurred: " + err));
Verwandte Themen
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Tickets als Feedbackmechanismus für Inhalte auslaufen lassen und es durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unter:Einreichen und Feedback anzeigen für