Diese Seite gilt für Apigee und Apigee Hybrid.
Apigee Edge-Dokumentation aufrufen
Übersicht
Die SetDialogflowResponse-Richtlinie ermöglicht die Einbindung von Dialogflow in Apigee. Weitere Informationen finden Sie unter Apigee in Contact Center AI einbinden.
Die SetDialogflowResponse-Richtlinie verarbeitet und formatiert die Antwortdaten aus Ihren Backend-Systemen, bevor die Daten als WebhookResponse an den Dialogflow-Agent gesendet werden. Für einen Dialogflow-Agent ist die WebhookResponse in einem bestimmten Format erforderlich. Die SetDialogflowResponse-Richtlinie erstellt dafür die Antwort im erforderlichen Format. Die Richtlinie legt eine WebhookResponse für einen Dialogflow-Agent im erforderlichen Format an. Die WebhookResponse enthält Wortgruppen in natürlicher Sprache und andere Parameter, die der Dialogflow-Agent verarbeiten kann.
Wenn Sie Back-End-Dienstintegrator sind, ist das Format der Dialogflow-WebhookResponse für Sie nicht relevant. Die vorkonfigurierte SetDialogflowResponse-Richtlinie verarbeitet die Antwortdaten automatisch.
Diese Richtlinie ist eine erweiterbare Richtlinie und die Verwendung dieser Richtlinie kann je nach Apigee-Lizenz Auswirkungen auf die Kosten oder die Nutzung haben. Informationen zu Richtlinientypen und Auswirkungen auf die Nutzung finden Sie unter Richtlinientypen.
<SetDialogflowResponse>
Definiert eine SetDialogflowResponse-Richtlinie.
Standardwert | – |
Erforderlich? | Erforderlich |
Typ | Komplexes Objekt |
Übergeordnetes Element | – |
Untergeordnete Elemente |
<DisplayName> <Source> <DialogflowVersion> <NaturalLanguageResponse> <Parameters> <IgnoreUnresolvedVariables> |
Die folgende Tabelle enthält eine allgemeine Beschreibung der untergeordneten Elemente des Elements SetDialogflowResponse
:
Untergeordnetes Element | Erforderlich? | Beschreibung |
---|---|---|
<DisplayName> |
Optional | Ein benutzerdefinierter Name für die Richtlinie. |
<Source> |
Optional | Gibt die zu parsende Variable an. |
<DialogflowVersion> |
Optional | Gibt die Dialogflow-Version an. |
<NaturalLanguageResponse> |
Optional | Kapselt alle Inhalte, die als WebhookResponse.FulfillmentResponse -Objekt gesendet werden müssen. |
<Parameters> |
Optional | Übergeordnetes Element von <Parameter> . Definiert den Satz an Parametern für die Antwort des Webhooks. |
<IgnoreUnresolvedVariables> |
Optional | Legt fest, ob die Verarbeitung beendet wird, wenn eine nicht aufgelöste Variable vorhanden ist. |
Weitere untergeordnete Elemente | ||
<MergeBehavior> |
Optional | Legt das Verhalten der Zusammenführung für die Antwortnachrichten fest. |
<Header> |
Optional | Extrahiert den Wert des angegebenen Felds im Antwortheader. |
<JSONPath> |
Optional | Extrahiert den Wert des angegebenen JSON-Pfads. |
<Parameter> |
Erforderlich | Legt einen Parameter für das sessionInfo.parameters -Objekt in der Antwort des Webhooks fest. |
<Phrase> |
Erforderlich | Legt die Wortgruppe (Text) für das fulfillmentResponse.messages -Objekt in der Antwort des Webhooks fest. |
<Phrases> |
Optional | Übergeordnetes Element von <Phrase> . Definiert den Satz an Wortgruppen in natürlicher Sprache für die Antwort des Webhooks. |
<Ref> |
Optional | Extrahiert den Wert der angegebenen Referenzvariablen. |
<Value> |
Optional | Legt einen benutzerdefinierten Text für den angegebenen Parameter fest. |
Beispiel
Im Folgenden finden Sie das Beispiel einer SetDialogflowResponse-Richtlinie und einer an den Dialogflow-Agent gesendeten WebhookResponse:
Syntax
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <SetDialogflowResponse continueOnError="false" enabled="true" name="POLICY_NAME"> <!-- The display name for this policy --> <DisplayName>DISPLAY_NAME</DisplayName> <!-- The message variable from which the policy extracts the required information --> <Source>MESSAGE_VARIABLE</Source> <!-- The version of Dialogflow for which this response policy is written up. This policy supports only the CX version. This element is optional and defaults to CX if unspecified --> <DialogflowVersion>DIALOGFLOW_VERSION</DialogflowVersion> <!-- A container object to encapsulate all content needed for a natural language response to be returned to Dialogflow from the Southbound API --> <NaturalLanguageResponse> <!-- Defines the merge behavior for existing responses and new responses. Refer here for more details --> <MergeBehavior>MERGE_BEHAVIOR</MergeBehavior> <!-- An ordered list of natural language phrases to be returned to Dialogflow from the Southbound API --> <Phrases> <!-- A phrase is a natural language phrase that Dialogflow agents can send back to their caller/chatting customer --> <Phrase> <!-- A phrase can be extracted from the response JSON payload of a service callout --> <JSONPath>JSON_PATH</JSONPath> </Phrase> <Phrase> <!-- A phrase can be extracted from the response headers of a service callout --> <Header name="HEADER_NAME"/> </Phrase> <Phrase> <!-- A phrase refer to the value of an existing flow variable --> <Ref>EXISTING_FLOW_VARIABLE</Ref> </Phrase> <Phrase> <!-- A phrase can be static text --> <Value>CUSTOM_TEXT</Value> </Phrase> </Phrases> </NaturalLanguageResponse> <!-- A container object defining the parameters to be set as session parameters in the Webhook response sent to Dialogflow --> <Parameters> <!-- Defines a single parameter to be set in sessionInfo.parameters object of the WebhookResponse object. The name of the parameter is defined as an attribute --> <Parameter name="PARAMETER_NAME"> <!-- A parameter's value can be extracted from the response JSON payload of a service callout --> <JSONPath>JSON_PATH</JSONPath> </Parameter> <Parameter name="PARAMETER_NAME"> <!-- A parameter's value can be extracted from the response headers of a service callout --> <Header name="HEADER_NAME"/> </Parameter> <Parameter name="PARAMETER_NAME"> <!-- A parameter's value can be refer to the value of an existing flow variable --> <Ref>EXISTING_FLOW_VARIABLE</Ref> </Parameter> <Parameter name="PARAMETER_NAME"> <!-- A parameter's value can be static text --> <Value>CUSTOM_TEXT</Value> </Parameter> </Parameters> <IgnoreUnresolvedVariables>BOOLEAN_VALUE</IgnoreUnresolvedVariables> </SetDialogflowResponse>
SetDialogflowResponse-Richtlinie
Das folgende Beispiel zeigt die Definition der SetDialogflowResponse
-Richtlinie:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <SetDialogflowResponse continueOnError="false" enabled="true" name="CCAIDialogflowResponse-InsuranceAgent"> <DisplayName>Insurance Agent Webhook Response Policy</DisplayName> <Source>myMessageVar</Source> <DialogflowVersion>CX</DialogflowVersion> <NaturalLanguageResponse> <MergeBehavior>APPEND</MergeBehavior> <Phrases> <Phrase> <JSONPath>$.claim.status.text</JSONPath> </Phrase> <Phrase> <Header name="X-Response-Text"/> </Phrase> <Phrase> <Ref>myVar</Ref> </Phrase> <Phrase> <Value>You call is important to us</Value> </Phrase> </Phrases> </NaturalLanguageResponse> <Parameters> <Parameter name="claimStatus"> <JSONPath>$.claim.status.value</JSONPath> </Parameter> <Parameter name="claimAmount"> <JSONPath>$.claim.amount</JSONPath> </Parameter> <Parameter name="timeSpent"> <Header name="X-Time-Spent"/> </Parameter> <Parameter name="myVar"> <Ref>dialogflow.my.var</Ref> </Parameter> <Parameter name="responder"> <Value>SYSTEM</Value> </Parameter> </Parameters> <IgnoreUnresolvedVariables>true</IgnoreUnresolvedVariables> </SetDialogflowResponse>
Im nächsten Beispiel wird die von dieser Richtlinie erstellte Antwort des Webhooks dargestellt.
Webhook-Antwort
Das folgende Beispiel zeigt eine WebhookResponse, die an den Dialogflow-Agent gesendet wird:
{ "fulfillmentResponse": { "mergeBehavior": "APPEND", "messages": [{ "text": { "text": ["Your claim is currently being processed", "Please call back in a couple of days"] } }] }, "sessionInfo": { "parameters": { "claimStatus": "PROCESSING", "claimAmount": 1000 } } }
Dieses Element hat folgende Attribute, die allen Richtlinien gemeinsam sind:
Attribut | Standard | Erforderlich? | Beschreibung |
---|---|---|---|
name |
- | Erforderlich |
Der interne Name der Richtlinie. Der Wert des Attributs Optional können Sie das Element |
continueOnError |
false | Optional | Legen Sie false fest, um einen Fehler zurückzugeben, wenn eine Richtlinie fehlschlägt. Dies ist für die meisten Richtlinien das erwartete Verhalten. Legen Sie true fest, damit die Ablaufausführung auch nach dem Fehlschlagen einer Richtlinie fortgesetzt wird. Weitere Informationen:
|
enabled |
wahr | Optional | Setzen Sie den Wert auf true , um die Richtlinie zu erzwingen. Legen Sie false fest, um die Richtlinie zu deaktivieren. Die Richtlinie wird nicht durchgesetzt, selbst wenn sie mit einem Ablauf verknüpft ist. |
async |
false | Verworfen | Dieses Attribut wurde verworfen. |
Verweis auf untergeordnetes Element
In diesem Abschnitt werden die untergeordneten Elemente von<SetDialogflowResponse>
beschrieben.
<DisplayName>
Wird zusätzlich zum Attribut name
verwendet, um die Richtlinie im Proxy-Editor der Verwaltungs-UI mit einem anderen, natürlicher klingenden Namen zu versehen.
Das Element <DisplayName>
ist für alle Richtlinien gleich.
Standardwert | – |
Erforderlich? | Optional. Wenn Sie <DisplayName> weglassen, wird der Wert des Attributs name der Richtlinie verwendet. |
Typ | String |
Übergeordnetes Element | <PolicyElement> |
Untergeordnete Elemente | Keine |
Das <DisplayName>
-Element verwendet die folgende Syntax:
Syntax
<PolicyElement> <DisplayName>POLICY_DISPLAY_NAME</DisplayName> ... </PolicyElement>
Beispiel
<PolicyElement> <DisplayName>My Validation Policy</DisplayName> </PolicyElement>
Das <DisplayName>
-Element hat keine Attribute oder untergeordneten Elemente.
<Source>
Gibt die zu parsende Variable an. Der Wert von <Source>
ist standardmäßig message
. Der Wert message
ist kontextabhängig. In einem Anfragefluss löst message
die Anfragenachricht auf. In einem Antwortfluss löst message
die Antwortnachricht auf.
Obwohl Sie diese Richtlinie häufig zum Extrahieren von Informationen aus einer Anfrage- oder Antwortnachricht verwenden, können Sie sie zum Extrahieren von Informationen aus einer beliebigen Variable verwenden. Sie können sie beispielsweise verwenden, um Informationen aus einer Entität zu extrahieren, die durch die AccessEntity-Richtlinie erstellt wurde, durch Daten, die von der ServiceCallout-Richtlinie zurückgegeben wurden, oder um Daten aus einem XML- oder JSON-Objekt zu extrahieren.
Wenn <Source>
nicht aufgelöst werden kann oder in einen Nicht-Nachrichtentyp aufgelöst wird, schlägt die Richtlinie fehl und Sie erhalten einen Laufzeitfehler.
Standardwert | – |
Erforderlich? | Optional |
Typ | String |
Übergeordnetes Element |
<SetDialogflowResponse>
|
Untergeordnete Elemente | Keine |
<Source>
-Element verwendet die folgende Syntax:
Syntax
<Source>MESSAGE_VARIABLE</Source>
Beispiel
Im folgenden Beispiel wird die Quelle auf myMessageVar
festgelegt:
<Source>myMessageVar</Source>
<DialogflowVersion>
Gibt die Dialogflow-Version an. Die ParseDialogflowRequest-Richtlinie unterstützt nur die CX-Version. Wenn Sie dieses Element nicht in der Richtlinie angeben, wird die Version standardmäßig auf CX gesetzt.
Standardwert | – |
Erforderlich? | Optional |
Typ | String |
Übergeordnetes Element |
<SetDialogflowResponse>
|
Untergeordnete Elemente | Keine |
<DialogflowVersion>
-Element verwendet die folgende Syntax:
Syntax
<DialogflowVersion>DIALOGFLOW_VERSION</DialogflowVersion>
Beispiel
Im folgenden Beispiel wird für DialogflowVersion der Wert CX
festgelegt:
<DialogflowVersion>CX</DialogflowVersion>
<IgnoreUnresolvedVariables>
Bestimmt, ob die Verarbeitung beendet wird, wenn eine nicht aufgelöste Variable erkannt wird.
Standardwert | True |
Erforderlich? | Optional |
Typ | Boolesch |
Übergeordnetes Element |
<SetDialogflowResponse>
|
Untergeordnete Elemente | Keine |
Auf true
festlegen, um nicht aufgelöste Variablen zu ignorieren und die Verarbeitung fortzusetzen. Andernfalls false
. Der Standardwert ist true
.
Das Festlegen von true
für <IgnoreUnresolvedVariables>
unterscheidet sich vom Festlegen von continueOnError
auf true
für <SetDialogflowResponse>
. Wenn Sie true
für continueOnError
angeben, ignoriert Apigee alle Fehler, also nicht nur Fehler in Variablen.
Das <IgnoreUnresolvedVariables>
-Element verwendet die folgende Syntax:
Syntax
<IgnoreUnresolvedVariables>[true|false]</IgnoreUnresolvedVariables>
Beispiel
Im folgenden Beispiel wird für <IgnoreUnresolvedVariables>
der Wert false
festgelegt:
<IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables>
<MergeBehavior>
Definiert das Verhalten der Zusammenführung für die Antwortnachrichten. Sie können die folgenden Werte angeben:
APPEND
: Fügt die Nachrichten der Liste der Nachrichten hinzu, die noch nicht an den Nutzer gesendet wurden.REPLACE
: Ersetzt in der Liste der Nachrichten, die noch nicht an den Nutzer gesendet wurden, ältere Nachrichten durch neuere.
APPEND
verwendet.
Standardwert | – |
Erforderlich? | Optional |
Typ | String |
Übergeordnetes Element |
<NaturalLanguageResponse>
|
Untergeordnete Elemente | Keine |
<MergeBehavior>
-Element verwendet die folgende Syntax:
Syntax
<MergeBehavior>BEHAVIOR</MergeBehavior>
Beispiel
Im folgenden Beispiel wird für das Verhalten der Zusammenführung der Wert APPEND
festgelegt:
<MergeBehavior>APPEND</MergeBehavior>
<NaturalLanguageResponse>
Kapselt alle Antworten in natürlicher Sprache, die Sie an den Dialogflow-Agent senden möchten.
Standardwert | – |
Erforderlich? | Optional |
Typ | Komplexes Objekt |
Übergeordnetes Element |
<SetDialogflowResponse>
|
Untergeordnete Elemente |
<MergeBehavior> <Phrases> |
<Parameters>
Definiert den Satz an Parametern für die Antwort des Webhooks. Der Name des Parameters ist ein Attribut des <Parameter>
-Elements.
Standardwert | – |
Erforderlich? | Optional |
Typ | Komplexes Objekt |
Übergeordnetes Element |
<SetDialogflowResponse>
|
Untergeordnete Elemente |
<Parameter>
|
<Parameter>
Legt einen Parameter im sessionInfo.parameters-Objekt der Antwort des Webhooks fest.
Sie können als Parameterwert einen statischen Text angeben oder den Wert aus einem der folgenden Felder in der Antwort extrahieren:
- Antwortheaderfelder
- JSON-Nutzlast
- Ablaufvariablen
Für jeden Wert, den Sie extrahieren möchten, müssen Sie ein eigenes <Parameter>
-Element definieren.
Standardwert | – |
Erforderlich? | Erforderlich |
Typ | Komplexes Objekt |
Übergeordnetes Element |
<Parameters>
|
Untergeordnete Elemente |
<Header> <JSONPath> <Ref> <Value> |
<Parameter>
-Element hat die folgenden Attribute:
Attribut | Beschreibung | Erforderlich? | Typ |
---|---|---|---|
name |
Der Name der Variablen, die mit diesem Parameter erstellt werden soll. | Ja | String |
Das <Parameter>
-Element verwendet die folgende Syntax:
Syntax
<Parameters> <Parameter name="PARAMETER_NAME"> <Header name="HEADER_NAME"/> </Parameter> <Parameter name="PARAMETER_NAME"> <JSONPath>JSON_PATH</JSONPath> </Parameter> <Parameter name="PARAMETER_NAME"> <Ref>EXISTING_FLOW_VARIABLE</Ref> </Parameter> <Parameter name="PARAMETER_NAME"> <Value>CUSTOM_TEXT</Value> </Parameter> </Parameters>
Headerfeldwert extrahieren
In diesem Beispiel wird für den Parameter timeSpent der Wert des Headers X-Time-Spent festgelegt.
<Parameter name="timeSpent"> <Header name="X-Time-Spent"/> </Parameter>
JSON-Pfadwert extrahieren
In diesem Beispiel wird für den Parameter claimAmount der Wert des Felds claim.amount in der JSON-Nutzlast festgelegt.
<Parameter name="claimAmount"> <JSONPath>$.claim.amount</JSONPath> </Parameter>
Wert der Ablaufvariablen extrahieren
In diesem Beispiel für den Parameter myVar der Wert der Ablaufvariablen dialogflow.my.var festgelegt.
<Parameter name="myVar"> <Ref>dialogflow.my.var</Ref> </Parameter>
Benutzerdefinierten Text festlegen
In diesem Beispiel wird für den Parameter responder der Wert SYSTEM festgelegt.
<Parameter name="responder"> <Value>SYSTEM</Value> </Parameter>
<Phrases>
Übergeordnetes Element von <Phrase>
. Definiert die sortierte Liste von Wortgruppen in natürlicher Sprache, die in der Antwort des Webhooks festgelegt werden soll.
Standardwert | – |
Erforderlich? | Optional |
Typ | Komplexes Objekt |
Übergeordnetes Element |
<NaturalLanguageResponse>
|
Untergeordnete Elemente |
<Phrase>
|
<Phrase>
Legt die Wortgruppe (Text) für das fulfillmentResponse.messages-Objekt in der Antwort des Webhooks fest.
Sie können als Wert für eine Wortgruppe einen statischen Text angeben oder den Wert aus einem der folgenden Felder in der Antwort extrahieren:
- Antwortheaderfelder
- JSON-Nutzlast
- Ablaufvariablen
Für jeden Wert, den Sie extrahieren möchten, müssen Sie ein eigenes <Phrase>
-Element definieren.
Standardwert | – |
Erforderlich? | Erforderlich |
Typ | Komplexes Objekt |
Übergeordnetes Element |
<Phrases>
|
Untergeordnete Elemente |
<Header> <JSONPath> <Ref> <Value> |
Das <Phrase>
-Element verwendet die folgende Syntax:
Syntax
<Phrases> <Phrase> <Header name="HEADER_NAME"/> </Phrase> <Phrase> <JSONPath>JSON_PATH</JSONPath> </Phrase> <Phrase> <Ref>EXISTING_FLOW_VARIABLE</Ref> </Phrase> <Phrase> <Value>CUSTOM_TEXT</Value> </Phrase> </Phrases>
Headerfeldwert extrahieren
In diesem Beispiel wird für einen Text in natürlicher Sprache in der Antwort der Wert des Headerfelds X-Response-Text
festgelegt.
<Phrase> <Header name="X-Response-Text"/> </Phrase>
JSON-Pfadwert extrahieren
In diesem Beispiel wird für einen Text in natürlicher Sprache in der Antwort der Wert des Felds claim.status.text
in der JSON-Nutzlast festgelegt.
<Phrase> <JSONPath>$.claim.status.text</JSONPath> </Phrase>
Wert der Ablaufvariablen extrahieren
In diesem Beispiel wird für einen Text in natürlicher Sprache in der Antwort der Wert der Ablaufvariablen myVar
festgelegt.
<Phrase> <Ref>myVar</Ref> </Phrase>
Benutzerdefinierten Text festlegen
In diesem Beispiel wird dem Text in natürlicher Sprache in der Antwort der Text You call is important to us
hinzugefügt.
<Phrase> <Value>You call is important to us</Value> </Phrase>
<Header>
Extrahiert den Wert aus dem angegebenen Feld im Antwortheader. Sie können mit dem Headerwert entweder einen Text in natürlicher Sprache oder einen Antwortparameter festlegen.
- Um den Headerwert als Antwort in natürlicher Sprache zu extrahieren, geben Sie das Element
<Header>
im Element<Phrase>
an. - Um den Headerwert als Antwortparameter zu extrahieren, geben Sie das Element
<Header>
im Element<Parameter>
an.
Standardwert | – |
Erforderlich? | Optional |
Typ | String |
Übergeordnetes Element |
<Phrase> <Parameter> |
Untergeordnete Elemente | Keine |
<Header>
-Element verwendet die folgende Syntax:
Syntax
<Header name="HEADER_FIELD"/>
Beispiel 1
Im folgenden Beispiel wird der Wert des Headerfelds X-Response-Text
als Antwort in natürlicher Sprache abgerufen:
<Phrase> <Header name="X-Response-Text"/> <Phrase/>
Beispiel 2
Im folgenden Beispiel wird der Wert des Headerfelds X-Response-Text
als Antwortparameter abgerufen:
<Parameter name="timeSpent"> <Header name="X-Response-Text"/> <Parameter/>
Für die Ablaufvariable timeSpent
wird der Wert des Headerfelds X-Response-Text
festgelegt.
Das <Header>
-Element hat die folgenden Attribute:
Attribut | Beschreibung | Erforderlich? | Typ |
---|---|---|---|
Name | Gibt den Namen des Antwortheaders an, aus dem der Wert extrahiert wird. | Erforderlich | String |
<JSONPath>
Extrahiert den Wert eines JSON-Pfads in einer JSON-Nutzlast des Service Callout. Sie können mit dem Wert entweder einen Text in natürlicher Sprache oder einen Antwortparameter festlegen.
- Um den JSON-Wert als Text in natürlicher Sprache zu extrahieren, geben Sie das Element
<JSONPath>
im Element<Phrase>
an. - Um den JSON-Wert als Antwortparameter zu extrahieren, geben Sie das Element
<JSONPath>
im Element<Parameter>
an.
Standardwert | – |
Erforderlich? | Optional |
Typ | String |
Übergeordnetes Element |
<Phrase> <Parameter> |
Untergeordnete Elemente | Keine |
<JSONPath>
-Element verwendet die folgende Syntax:
Syntax
<JSONPath>JSON_PATH</JSONPath>
Beispiel 1
Im folgenden Beispiel wird der Wert des JSON-Feldes claim.status.text
als Antwort in natürlicher Sprache abgerufen:
<Phrase> <JSONPath>$.claim.status.text</JSONPath> <Phrase/>
Beispiel 2
Im folgenden Beispiel wird der Wert des JSON-Felds claim.amount
als Antwortparameter abgerufen:
<Parameter name="claimAmount"> <JSONPath>$.claim.amount.</JSONPath> <Parameter/>
Für die Ablaufvariable claimAmount
wird der Wert des JSON-Felds {claim.amount}
festgelegt.
<Ref>
Extrahiert den Wert einer vorhandenen Ablaufvariablen. Sie können mit dem Wert entweder einen Text in natürlicher Sprache oder einen Antwortparameter festlegen.
- Um den Wert einer Variablen als Text in natürlicher Sprache zu extrahieren, geben Sie das Element
<Ref>
im Element<Phrase>
. - Um den Wert einer Variablen als Antwortparameter zu extrahieren, geben Sie das Element
<Ref>
im Element<Parameter>
an.
Standardwert | – |
Erforderlich? | Optional |
Typ | String |
Übergeordnetes Element |
<Phrase> <Parameter> |
Untergeordnete Elemente | Keine |
<Ref>
-Element verwendet die folgende Syntax:
Syntax
<Ref>EXISTING_FLOW_VARIABLE</Ref>
Beispiel 1
Im folgenden Beispiel wird der Wert der Ablaufvariablen myVar
als Antwort in natürlicher Sprache abgerufen:
<Phrase> <Ref>myVar</Ref> <Phrase/>
Beispiel 2
Im folgenden Beispiel wird der Wert der Ablaufvariablen dialogflow.my.var
als Antwortparameter abgerufen:
<Parameter name="customVar"> <Ref>dialogflow.my.var</Ref> <Parameter/>
Für Ablaufvariable customVar
wird der Wert der Variable dialogflow.my.var
festgelegt.
<Value>
Legt einen Literalwert für einen Text in natürlicher Sprache oder einen Antwortparameter fest.
- Um den Literalwert als Text in natürlicher Sprache festzulegen, geben Sie das Element
<Value>
im Element<Phrase>
an. - Um den Literalwert als Antwortparameter festzulegen, geben Sie das Element
<Value>
im Element<Parameter>
an.
Standardwert | – |
Erforderlich? | Optional |
Typ | String |
Übergeordnetes Element |
<Phrase> <Parameter> |
Untergeordnete Elemente | Keine |
<Value>
-Element verwendet die folgende Syntax:
Syntax
<Value>CUSTOM_TEXT</Value>
Beispiel 1
Im folgenden Beispiel wird der Literaltext You call is important to us
als Antwort in natürlicher Sprache festgelegt:
<Phrase> <Value>You call is important to us</Value> <Phrase/>
Beispiel 2
Im folgenden Beispiel wird der Literaltext SYSTEM
als Antwortparameter festgelegt:
<Parameter name="responder"> <Value>SYSTEM</Value> <Parameter/>
Für die Ablaufvariable responder
wird der Wert SYSTEM
festgelegt.
Fehlercodes
In diesem Abschnitt werden die zurückgegebenen Fehlercodes und Fehlermeldungen beschrieben, die von Apigee festgelegt werden, wenn die Richtlinie einen Fehler auslöst. Diese Informationen sind wichtig, wenn Sie Fehlerregeln zur Verarbeitung von Fehlern entwickeln. Weitere Informationen finden Sie unter Was Sie über Richtlinienfehler wissen müssen und Fehler beheben.
Laufzeitfehler
Diese Fehler können bei Ausführung der Richtlinie auftreten.
Fehlercode | HTTP-Status | Ursache |
---|---|---|
steps.setdialogflowresponse.ExecutionFailed |
500 |
Dieser Fehler tritt auf, wenn die Ausführung der Richtlinie aufgrund einer allgemeinen Ausnahme fehlgeschlagen ist. Die Fehlermeldung enthält die Details der Ausnahme. |
steps.setdialogflowresponse.InvalidSourceType |
500 |
Dieser Fehler tritt auf, wenn die im Element <Source> angegebene Variable nicht vom Typ message ist. |
steps.setdialogflowresponse.MalformedInput |
500 |
Dieser Fehler tritt auf, wenn die JSON-Datei für diese Richtlinie ungültig oder fehlerhaft ist. |
steps.setdialogflowresponse.SourceMessageNotAvailable |
500 |
Dieser Fehler tritt auf, wenn einer der folgenden Punkte für die message-Variable zutrifft, die im Element Source der Richtlinie angegeben ist:
|
steps.setdialogflowresponse.UnresolvedHeader |
500 |
Dieser Fehler tritt auf, wenn das Header -Element einen ungültigen Header enthält.
Der Fehler wird beispielsweise angezeigt, wenn das Header -Element den Wert X-Response-Text hat und der Antwortheader keinen X-Response-Text enthält.
|
steps.setdialogflowresponse.UnresolvedJSONPath |
500 |
Dieser Fehler tritt auf, wenn das JSONPath -Element einen ungültigen Pfad enthält.
Der Fehler wird beispielsweise angezeigt, wenn das JSONPath -Element den Wert {claim.status.value} enthält und in der JSON-Nutzlast kein status -Objekt vorhanden ist. |
steps.setdialogflowresponse.UnresolvedVariable |
500 |
Dieser Fehler tritt wegen einer Variablen auf, die in der SetDialogflowResponse-Richtlinie angegeben ist. Für die Variable gilt dann:
|
Bereitstellungsfehler
Diese Fehler können auftreten, wenn Sie einen Proxy mit dieser Richtlinie bereitstellen.
Fehlername | Ursache |
---|---|
UnsupportedOperation |
Dieser Fehler tritt auf, wenn Sie im DialogflowVersion -Element eine nicht unterstützte Dialogflow-Version angegeben haben. Die SetDialogflowResponse-Richtlinie unterstützt nur die CX -Version. |
Fehlervariablen
Wenn in einer Richtlinie Ausführungsfehler auftreten, generiert Apigee Fehlermeldungen. Sie können sich diese Fehlermeldungen in der Fehlerantwort ansehen. Häufig sind vom System generierte Fehlermeldungen im Kontext Ihres Produkts möglicherweise nicht relevant. Sie können die Fehlermeldungen basierend auf dem Fehlertyp anpassen, um die Nachrichten aussagekräftiger zu machen.
Zum Anpassen der Fehlermeldungen können Sie entweder Fehlerregeln oder die RaiseFault-Richtlinie verwenden. Informationen zu Unterschieden zwischen Fehlerregeln und der RaiseFault-Richtlinie finden Sie unter FaultRules-Richtlinie im Vergleich zur RaiseFault-Richtlinie.
Prüfen Sie, ob Bedingungen mit dem Element Condition
in den Fehlerregeln und in der RaiseFault-Richtlinie verwendet werden.
Apigee stellt Fehlervariablen bereit, die für jede Richtlinie eindeutig sind. Die Werte der Fehlervariablen werden festgelegt, wenn eine Richtlinie Laufzeitfehler auslöst.
Mit diesen Variablen können Sie nach bestimmten Fehlerbedingungen suchen und entsprechende Maßnahmen ergreifen. Weitere Informationen zum Prüfen von Fehlerbedingungen finden Sie unter Bedingungen erstellen.
In der folgenden Tabelle werden die für diese Richtlinie spezifischen Fehlervariablen beschrieben.
Variablen | Wo | Beispiel |
---|---|---|
fault.name="FAULT_NAME" |
FAULT_NAME ist der Name des Fehlers, wie er in der Tabelle der Laufzeitfehler aufgeführt ist. Der Fehlername ist der letzte Teil des Fehlercodes. | fault.name Matches "UnresolvedVariable" |
setdialogflowresponse.POLICY_NAME.failed |
POLICY_NAME ist der benutzerdefinierte Name der Richtlinie, die den Fehler ausgelöst hat. | setdialogflowresponse.My-Set-Dialogflow-Response.failed = true |
Weitere Informationen
Referenzimplementierungen von Apigee-Proxys und freigegebenen Abläufen, die die Nutzung der SetDialogflowResponse-Richtlinie veranschaulichen, sind auf Apigee GitHub verfügbar. Weitere Informationen finden Sie unter Referenzimplementierungen für dialogorientierte KI.