Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Variablen speichern die Antworten Ihrer Kunden auf Fragen Ihres Agents. Sie können beispielsweise den Namen eines Kunden in einer Variablen namens UserName speichern. Der Agent kann den Kunden dann im weiteren Verlauf der Unterhaltung 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 Agent die Eingaben des Kunden merken und nicht noch einmal nachfragen.
Eine Möglichkeit, eine Variable wiederzuverwenden, besteht darin, die Variable von einem Thema an ein anderes 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 Agenten verfügbar sind. Sie können auch aus externen Quellen festgelegt werden.
Globale Variablen gelten während einer Einzelbenutzersitzung. Sie geben an, welche Variablen als globale 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.
Anmerkung
Der Name einer globalen Variable muss über alle Themen hinweg eindeutig sein.
Erstellen Sie eine Variable oder verwenden Sie das Bedienfeld Variablen, um eine vorhandene Variable zu öffnen.
Wählen Sie im Bereich Variableneigenschaftenglobal (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 VariableUserNamejetzt alsGlobal.UserNameangezeigt.Speichern Sie das Thema.
Verwenden von globalen Variablen
Wenn Sie eine Nachricht in einem Nachrichten-Knoten oder Frage-Knoten verfassen, wählen sie das {x} Symbol, um die im Thema verfügbaren Variablen anzuzeigen. 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. Diese Funktion kann nützlich sein, wenn Sie an einem neuen Agent arbeiten oder wenn Sie mehrere Variablen und komplexe Themenverzweigung haben.
Wählen Sie die gewünschte globale Variable auf der Bearbeitungsfläche oder im Bereich Variable aus.
Wählen Sie im Bereich Variableneigenschaften im Abschnitt Referenz die Option Alle Verweise anzeigen aus.
Wechseln Sie zur Registerkarte Andere und wählen Sie ein beliebiges Thema aus, in dem die Variable verwendet wird, um direkt zu diesem Thema und Knotenpunkt zu wechseln.
Globale Variablen löschen
Wenn Sie eine globale Variable entfernen, die in anderen Themen verwendet wird, werden die Verweise auf diese Variable in den Themen als Unknown markiert. Sie erhalten eine Warnung über das Löschen der globalen Variable, bevor Sie den Vorgang bestätigen können.
Knoten, die Verweise auf eine gelöschte globale Variable enthalten, teilen Ihnen mit, dass sie eine unbekannte Variable enthalten.
Themen mit Knoten, die Verweise auf gelöschte global Variablen enthalten, funktionieren möglicherweise nicht mehr. Stellen Sie sicher, dass Sie alle Themen entfernen oder korrigieren, die die gelöschte Variable vor der Veröffentlichung Ihres Agents verwendet haben.
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. Wenn eine Umleitung dieses Thema auslöst (oder wenn der Benutzer einen Ausdruck wie „Start over“ eingibt), werden alle globalen Variablen zurückgesetzt.
Eine globale Variable aus einer externen Quelle festlegen
Um sicherzustellen, dass der Agent eine Unterhaltung mit einem bestimmten Kontext startet, können Sie eine globale Variable verwenden und dessen Wert aus einer externen Quelle festlegen. Angenommen, auf Ihrer Website müssen sich die Benutzer anmelden. Wenn Sie den Namen eines Benutzers in einer globalen Variablen speichern und an Ihren Agent übergeben, kann der Agent Kunden nach Namen begrüßen, bevor er mit der Eingabe der ersten Frage beginnt. Ein weiteres Beispielszenario besteht darin, den Kontext von Dynamics 365 Customer Service an einen Agent zu übergeben, damit es mit dem Wissen über das, was der Kunde erreichen möchte, beginnen kann.
Um unerwünschte Wartezeiten zu verhindern, können Sie angeben, wie lange Ihr Agent auf einen Wert warten kann. Sie können auch einen Standardwert festlegen, der verwendet werden soll, wenn die externe Quelle nicht rechtzeitig reagiert.
Anmerkung
Agents, die im Dynamics 365 Contact Center-Kanal für IVR-Anwendungsfälle veröffentlicht werden, unterstützen keine Timeoutwerte, die für globale Variablen konfiguriert sind, die von externen Quellen festgelegt sind.
Erstellen Sie ein dediziertes Thema für die Konfiguration für alle Variablen, die aus externen Quellen festgelegt werden sollen. Sie können dieses Thema beispielsweise „Kontextvariablen festlegen“ nennen. Dieses Thema dient keinen anderen Zwecken, daher müssen keine Triggerausdrücke festgelegt werden.
Fügen Sie Ihrem dedizierten Thema einen -Variablenwert festlegen Knoten hinzu.
Wählen Sie optional unter Variable festlegen die Option Neue Variable erstellen aus, um eine Variable zu erstellen.
Wählen Sie den Standardnamen der neuen Variablen aus. Der Bereich Variableneigenschaften wird angezeigt.
Ersetzen Sie den Standardnamen durch einen Namen, der exakt dem Namen der Variablen entspricht, die vom externen System übergeben wird.
Unter Nutzung wählen Sie Global (ein beliebiges Thema kann zugreifen) und externe Quellen können Wert festlegen aus.
Wählen Sie unter "Verweis" die drei Punkte (⋮) in der oberen rechten Ecke aus, und wählen Sie "Wert aus diesem Knoten abrufen" aus, wenn er leer ist.
(Optional) Legen Sie eine Timeout-Verzögerung in Millisekunden fest. Dieser Wert legt fest, wie lange Ihr Agent warten kann, bis die Variable von einer externen Quelle festgelegt wurde, bevor eine Zeitüberschreitung eintritt und mit dem Standardwert fortgefahren wird, den Sie im Knoten Variablenwert festlegen festgelegt haben. Diese Einstellung ist in Szenarien relevant, in denen die Variable von einem langen oder asynchronen Prozess abhängt, aber Ihr Agent muss eine maximale Latenz berücksichtigen, um eine gute Benutzererfahrung sicherzustellen.
Für Variablen, die von Omnichannel for Customer Service stammen, empfehlen wir einen Wert von 10 Sekunden (10.000 ms) als maximale Wartezeit.
Geben Sie im Knoten Variablenwert festlegen den Standardwert ein, der verwendet werden soll, wenn das Timeout erreicht ist. Zur Laufzeit erwartet Ihr Agent Werte mit demselben Datentyp. Wenn dieser Standardwert eine leere Zeichenfolge sein soll, verwenden Sie
Text("")als Formel.
Fügen Sie für alle anderen Werte, die Sie aus einem externen System erwarten, weitere Knoten Variablenwert festlegen zu Ihrem dedizierten Thema hinzu, und konfigurieren Sie die erforderlichen globalen Variablen auf dieselbe Weise.
Daher ist Ihr Agent zum Testen bereit. Wenn der Agent aufgerufen wird, kann Ihr Agent sofort mit dem Senden von Nachrichten beginnen, die nicht von den übergebenen Variablen abhängig sind, anstatt auf unbestimmte Zeit zu warten, bis alle Variablen ausgefüllt werden. Wenn Ihr Agent versucht, auf eine Variable zuzugreifen, die extern festgelegt wird, wird sie angehalten, bis der Wert eingeht oder das Timeout auftritt. Erfahren Sie mehr über die Optimierung von Agenten, um die Latenz zu minimieren.
Von Bedeutung
Wenn Ihr Agent während des normalen Unterhaltungs-Flows eine Variable festlegt, die andernfalls für einen externen Wert kommt, hat der in Ihrem Agent festgelegte Wert Vorrang. Jeder im Kontext übergebene Wert wird ignoriert. Mit dieser Regel wird verhindert, dass Der Agent absichtlich Werte überschreibt, die in Themen festgelegt wurden.
Globale Variablen in einem eingebetteten Agent festlegen
Wenn Sie Ihren Agenten in eine einfache Webseite einbetten, können Sie Variablen und ihre Definitionen an die URL des Agenten 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.
In den folgenden Beispielen wird eine einfache Deklaration für die Variablen verwendet. In einem Produktionsszenario könnten Sie als Abfrageparameter oder Variablendefinition eine andere Variable übergeben, die bereits den Namen des Benutzers speichert (zum Beispiel, wenn Sie den Benutzernamen aus einem Anmeldeskript haben).
Hängen Sie die Variablen und ihre Definitionen an die URL des Agenten 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 des Agenten 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=Ana an, um den Benutzernamen beim Starten einer Agentenunterhaltung auf einer Website weiterzugeben.
Beim Parameternamen wird die Groß-/Kleinschreibung nicht berücksichtigt.
username=Ana würde auch in diesem Beispiel funktionieren.
Einem benutzerdefiniertem Canvas globale Variablen hinzufügen
Sie können die Variable auch einem benutzerdefinierten Canvas hinzufügen.
In dem
<script>-Abschnitt auf der Seite, auf der Sie Ihren Agenten haben, definieren Sie die Variablen wie folgt und ersetzen SievariableName1für den Variablennamen ohneGlobal.-Präfix undvariableDefinition1fü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>-Abschnittstoreauf, wenn Sie Ihren Agent einbetten, wie im folgenden Beispiel, wostoregenau oberhalb aufgerufen wird, wostyleOptionsaufgerufen wird (Sie müssen dieBOT_IDmit Ihrer Agent-ID 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));
Authentifizierungsbezogene globale Variablen
Abhängig von der Authentifizierungskonfiguration des Agents stehen Ihnen eine Reihe von globalen Variablen zur Verfügung, die dem ausgewählten Authentifizierungsanbieter zugeordnet sind. Einzelheiten dazu, welche Variablen verfügbar sind und wie sie verwendet werden, finden Sie unter Themen eine Endbenutzerauthentifizierung hinzufügen.