Questa pagina si applica ad Apigee e Apigee hybrid.
Visualizza la documentazione di Apigee Edge.
Panoramica
Il criterio SetDialogflowResponse facilita l'integrazione di Dialogflow con Apigee. Per ulteriori informazioni, consulta Integrare Apigee con Contact Center AI.
Il criterio SetDialogflowResponse elabora e formatta i dati di risposta dei sistemi di backend prima di inviarli come WebhookResponse all'agente Dialogflow. Un agente Dialogflow richiede la WebhookResponse in un formato specifico e il criterio SetDialogflowResponse crea la risposta del formato richiesto. Il criterio crea un WebhookResponse nel formato richiesto per un agente Dialogflow. WebhookResponse contiene frasi in linguaggio naturale e altri parametri compresi dall'agente Dialogflow.
Se sei un integratore di servizi di backend, non devi perdere tempo a comprendere il formato di Dialogflow WebhookResponse. Il criterio SetDialogflowResponse predefinito gestisce senza problemi l'elaborazione dei dati di risposta.
Questo criterio è una norma estendibile e il suo utilizzo potrebbe comportare costi o di utilizzo delle applicazioni, a seconda della licenza Apigee. Per informazioni sui tipi di criteri e sulle implicazioni per l'utilizzo, consulta Tipi di criteri.
<SetDialogflowResponse>
Definisce un criterio SetDialogflowResponse.
Valore predefinito | N/D |
Obbligatorio? | Obbligatorio |
Tipo | Oggetto complesso |
Elemento principale | N/D |
Elementi secondari |
<DisplayName> <Source> <DialogflowVersion> <NaturalLanguageResponse> <Parameters> <IgnoreUnresolvedVariables> |
La tabella seguente fornisce una descrizione generale di tutti gli elementi secondari
dell'elemento SetDialogflowResponse
:
Elemento secondario | Obbligatorio? | Descrizione |
---|---|---|
<DisplayName> |
Facoltativo | Un nome personalizzato per la norma. |
<Source> |
Facoltativo | Specifica la variabile da analizzare. |
<DialogflowVersion> |
Facoltativo | Specifica la versione di Dialogflow. |
<NaturalLanguageResponse> |
Facoltativo | Incapsula tutti i contenuti che devono essere inviati come oggetto WebhookResponse.FulfillmentResponse . |
<Parameters> |
Facoltativo | Elemento principale di <Parameter> . Definisce l'insieme di parametri da impostare nella risposta del webhook. |
<IgnoreUnresolvedVariables> |
Facoltativo | Specifica se l'elaborazione si interrompe quando viene rilevata una variabile non risolta. |
Altri elementi secondari | ||
<MergeBehavior> |
Facoltativo | Specifica il comportamento di unione per i messaggi di risposta. |
<Header> |
Facoltativo | Estrae il valore del campo specificato nell'intestazione di risposta. |
<JSONPath> |
Facoltativo | Estrae il valore del percorso JSON specificato. |
<Parameter> |
Obbligatorio | Specifica un parametro da impostare nell'oggetto sessionInfo.parameters della risposta del webhook. |
<Phrase> |
Obbligatorio | Specifica la frase (testo) da impostare nell'oggetto fulfillmentResponse.messages della risposta del webhook. |
<Phrases> |
Facoltativo | Elemento principale di <Phrase> . Definisce l'insieme di frasi in linguaggio naturale da impostare nella risposta del webhook. |
<Ref> |
Facoltativo | Estrae il valore della variabile di riferimento specificata. |
<Value> |
Facoltativo | Imposta un testo personalizzato per il parametro specificato. |
Esempio
L'esempio seguente mostra un esempio di criterio SetDialogflowResponse e WebhookResponse inviati all'agente Dialogflow:
Sintassi
<?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>
Norme SetDialogflowResponse
L'esempio seguente mostra la definizione del criterio SetDialogflowResponse
:
<?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>
Vai all'esempio successivo per visualizzare la risposta webhook creata da questo criterio.
Risposta webhook
L'esempio seguente mostra una WebhookResponse inviata all'agente Dialogflow:
{ "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 } } }
Questo elemento ha i seguenti attributi comuni a tutti i criteri:
Attributo | Predefinito | Obbligatorio? | Descrizione |
---|---|---|---|
name |
N/D | Obbligatorio |
Il nome interno del criterio. Il valore dell'attributo Se vuoi, utilizza l'elemento |
continueOnError |
falso | Facoltativo | Imposta su false per restituire un errore quando un criterio non va a buon fine. Questo è un comportamento previsto per la maggior parte dei criteri. Imposta su true per continuare l'esecuzione del flusso anche dopo un fallimento del criterio. Vedi anche:
|
enabled |
true | Facoltativo | Imposta su true per applicare il criterio. Imposta su false per disattivare il
criterio. Il criterio non verrà applicato anche se rimane collegato a un flusso. |
async |
falso | Ritirato | Questo attributo è stato ritirato. |
Riferimento all'elemento secondario
In questa sezione vengono descritti gli elementi secondari di<SetDialogflowResponse>
.
<DisplayName>
Da utilizzare insieme all'attributo name
per etichettare il criterio nell'editor proxy dell'interfaccia utente di gestione con un nome diverso e più naturale.
L'elemento <DisplayName>
è comune a tutti i criteri.
Valore predefinito | N/D |
Obbligatorio? | Facoltativo. Se ometti <DisplayName> , viene utilizzato il valore dell'attributo name del criterio. |
Tipo | Stringa |
Elemento principale | <PolicyElement> |
Elementi secondari | Nessuno |
La sintassi dell'elemento <DisplayName>
è la seguente:
Sintassi
<PolicyElement> <DisplayName>POLICY_DISPLAY_NAME</DisplayName> ... </PolicyElement>
Esempio
<PolicyElement> <DisplayName>My Validation Policy</DisplayName> </PolicyElement>
L'elemento <DisplayName>
non ha attributi o elementi secondari.
<Source>
Specifica la variabile da analizzare. Il valore di <Source>
è message
per impostazione predefinita. Il valore message
è sensibile al contesto. In un flusso di richieste, message
si risolve nel messaggio di richiesta. In un flusso di risposta, message
si risolve nel messaggio di risposta.
Sebbene tu utilizzi spesso questo criterio per estrarre informazioni da un messaggio di richiesta o risposta, puoi usarlo per estrarre informazioni da qualsiasi variabile. Ad esempio, puoi utilizzarlo per estrarre informazioni da un'entità creata dal regolamento AccessEntity, dai dati restituiti dal regolamento ServiceCallout o da un oggetto XML o JSON.
Se <Source>
non può essere risolto o si risolve in un tipo non di messaggio, il criterio non va a buon fine e viene visualizzato un errore di runtime.
Valore predefinito | N/D |
Obbligatorio? | Facoltativo |
Tipo | Stringa |
Elemento principale |
<SetDialogflowResponse>
|
Elementi secondari | Nessuno |
<Source>
è la seguente:
Sintassi
<Source>MESSAGE_VARIABLE</Source>
Esempio
L'esempio seguente imposta l'attributo Origine su myMessageVar
:
<Source>myMessageVar</Source>
<DialogflowVersion>
Specifica la versione di Dialogflow. Il criterio SetDialogflowResponse supporta solo la versione CX. Se non specifichi questo elemento nel criterio, la versione predefinita è CX.
Valore predefinito | N/D |
Obbligatorio? | Facoltativo |
Tipo | Stringa |
Elemento principale |
<SetDialogflowResponse>
|
Elementi secondari | Nessuno |
<DialogflowVersion>
è la seguente:
Sintassi
<DialogflowVersion>DIALOGFLOW_VERSION</DialogflowVersion>
Esempio
Nell'esempio seguente, DialogflowVersion viene impostato su CX
:
<DialogflowVersion>CX</DialogflowVersion>
<IgnoreUnresolvedVariables>
Determina se l'elaborazione si interrompe quando viene rilevata una variabile non risolta.
Valore predefinito | Vero |
Obbligatorio? | Facoltativo |
Tipo | Booleano |
Elemento principale |
<SetDialogflowResponse>
|
Elementi secondari | Nessuno |
Imposta su true
per ignorare le variabili non risolte e continuare l'elaborazione. altrimenti false
. La
il valore predefinito è true
.
L'impostazione di <IgnoreUnresolvedVariables>
su true
è diversa dall'impostazione di <SetDialogflowResponse>
Da continueOnError
a true
. Se imposti continueOnError
su true
, Apigee ignora tutti gli errori, non solo quelli nelle variabili.
La sintassi dell'elemento <IgnoreUnresolvedVariables>
è la seguente:
Sintassi
<IgnoreUnresolvedVariables>[true|false]</IgnoreUnresolvedVariables>
Esempio
L'esempio seguente imposta <IgnoreUnresolvedVariables>
su false
:
<IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables>
<MergeBehavior>
Definisce il comportamento di unione per i messaggi di risposta. Puoi specificare uno qualsiasi dei seguenti valori:
APPEND
: aggiunge i messaggi all'elenco dei messaggi in attesa di essere inviati all'utente.REPLACE
: sostituisce i messaggi precedenti con quelli più recenti nell'elenco dei messaggi in attesa di essere inviati all'utente.
APPEND
.
Valore predefinito | N/D |
Obbligatorio? | Facoltativo |
Tipo | Stringa |
Elemento principale |
<NaturalLanguageResponse>
|
Elementi secondari | Nessuno |
<MergeBehavior>
utilizza la seguente sintassi:
Sintassi
<MergeBehavior>BEHAVIOR</MergeBehavior>
Esempio
Nell'esempio seguente il comportamento di unione è impostato su APPEND
:
<MergeBehavior>APPEND</MergeBehavior>
<NaturalLanguageResponse>
Incapsula tutte le risposte in linguaggio naturale che vuoi inviare all'agente Dialogflow.
Valore predefinito | N/D |
Obbligatorio? | Facoltativo |
Tipo | Oggetto complesso |
Elemento principale |
<SetDialogflowResponse>
|
Elementi secondari |
<MergeBehavior> <Phrases> |
<Parameters>
Definisce l'insieme di parametri da impostare nella risposta del webhook. Il nome del parametro è come attributo del
Elemento <Parameter>
.
Valore predefinito | N/D |
Obbligatorio? | Facoltativo |
Tipo | Oggetto complesso |
Elemento principale |
<SetDialogflowResponse>
|
Elementi secondari |
<Parameter>
|
<Parameter>
Specifica un parametro da impostare nell'oggetto sessionInfo.parameters di la risposta del webhook.
Puoi specificare un testo statico come valore del parametro o estrarre il valore da uno dei seguenti campi della risposta:
- Campi intestazione della risposta
- Payload JSON
- Variabili di flusso
Devi definire un elemento <Parameter>
separato per ogni valore che vuoi estrarre.
Valore predefinito | N/D |
Obbligatorio? | Obbligatorio |
Tipo | Oggetto complesso |
Elemento principale |
<Parameters>
|
Elementi secondari |
<Header> <JSONPath> <Ref> <Value> |
<Parameter>
prevede i seguenti attributi:
Attributo | Descrizione | Obbligatorio? | Tipo |
---|---|---|---|
name |
Il nome della variabile da creare con questo parametro. | Sì | Stringa |
La sintassi dell'elemento <Parameter>
è la seguente:
Sintassi
<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>
Estrai valore campo intestazione
Questo esempio imposta il parametro timeSpent sul valore del campo header X-Time-Spent.
<Parameter name="timeSpent"> <Header name="X-Time-Spent"/> </Parameter>
Estrai valore percorso JSON
Questo esempio imposta il parametro claimAmount sul valore del valore-chiave claim.amount nel payload JSON.
<Parameter name="claimAmount"> <JSONPath>$.claim.amount</JSONPath> </Parameter>
Estrai il valore della variabile di flusso
Questo esempio imposta il parametro myVar sul valore della variabile di flusso dialogflow.my.var.
<Parameter name="myVar"> <Ref>dialogflow.my.var</Ref> </Parameter>
Imposta testo personalizzato
In questo esempio, il valore del parametro responder viene impostato su SYSTEM.
<Parameter name="responder"> <Value>SYSTEM</Value> </Parameter>
<Phrases>
Elemento principale di <Phrase>
. Definisce l'elenco ordinato di frasi in linguaggio naturale da impostare nella risposta dell'webhook.
Valore predefinito | N/D |
Obbligatorio? | Facoltativo |
Tipo | Oggetto complesso |
Elemento principale |
<NaturalLanguageResponse>
|
Elementi secondari |
<Phrase>
|
<Phrase>
Specifica la frase (il testo) da impostare nell'oggetto fulfillmentResponse.messages della risposta del webhook.
Puoi specificare un testo statico come valore della frase o estrarre il valore da uno dei seguenti campi della risposta:
- Campi intestazione della risposta
- Payload JSON
- Variabili di flusso
Devi definire un elemento <Phrase>
separato per ogni valore da estrarre.
Valore predefinito | N/D |
Obbligatorio? | Obbligatorio |
Tipo | Oggetto complesso |
Elemento principale |
<Phrases>
|
Elementi secondari |
<Header> <JSONPath> <Ref> <Value> |
L'elemento <Phrase>
utilizza la seguente sintassi:
Sintassi
<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>
Estrai il valore del campo Intestazione
Questo esempio imposta un testo in linguaggio naturale nella risposta al valore del campo dell'intestazione X-Response-Text
.
<Phrase> <Header name="X-Response-Text"/> </Phrase>
Estrai valore percorso JSON
Questo esempio imposta un testo in linguaggio naturale nella risposta al valore del
campo claim.status.text
nel payload JSON.
<Phrase> <JSONPath>$.claim.status.text</JSONPath> </Phrase>
Estrai il valore della variabile di flusso
Questo esempio imposta un testo in linguaggio naturale nella risposta al valore della variabile di flusso myVar
.
<Phrase> <Ref>myVar</Ref> </Phrase>
Imposta testo personalizzato
Questo esempio aggiunge il testo You call is important to us
al testo in linguaggio naturale nella risposta.
<Phrase> <Value>You call is important to us</Value> </Phrase>
<Header>
Estrae il valore dal campo specificato nell'intestazione di risposta. Puoi utilizzare il valore dell'intestazione per impostare un testo in linguaggio naturale o un parametro di risposta.
- Per estrarre il valore dell'intestazione come risposta in linguaggio naturale, specifica
<Header>
all'interno dell'elemento<Phrase>
. - Per estrarre il valore dell'intestazione come parametro di risposta, specifica l'elemento
<Header>
all'interno dell'elemento<Parameter>
.
Valore predefinito | N/D |
Obbligatorio? | Facoltativo |
Tipo | Stringa |
Elemento principale |
<Phrase> <Parameter> |
Elementi secondari | Nessuno |
<Header>
è la seguente:
Sintassi
<Header name="HEADER_FIELD"/>
Esempio 1
L'esempio seguente restituisce il valore del campo di intestazione X-Response-Text
come risposta in linguaggio naturale:
<Phrase> <Header name="X-Response-Text"/> <Phrase/>
Esempio 2
Nell'esempio seguente viene recuperato il valore del campo dell'intestazione X-Response-Text
come parametro di risposta:
<Parameter name="timeSpent"> <Header name="X-Response-Text"/> <Parameter/>
La variabile di flusso timeSpent
è impostata sul valore del campo intestazione X-Response-Text
.
L'elemento <Header>
prevede i seguenti attributi:
Attributo | Descrizione | Obbligatorio? | Tipo |
---|---|---|---|
nome | Specifica il nome dell'intestazione della risposta da cui estrarre il valore. | Obbligatorio | Stringa |
<JSONPath>
Estrae il valore di un percorso JSON in un payload JSON del callout del servizio. Puoi utilizzare il valore per impostare un testo in linguaggio naturale o un parametro di risposta.
- Per estrarre il valore JSON come testo in linguaggio naturale, specifica l'elemento
<JSONPath>
all'interno dell'elemento<Phrase>
. - Per estrarre il valore JSON come parametro di risposta, specifica l'elemento
<JSONPath>
all'interno dell'elemento<Parameter>
.
Valore predefinito | N/D |
Obbligatorio? | Facoltativo |
Tipo | Stringa |
Elemento principale |
<Phrase> <Parameter> |
Elementi secondari | Nessuno |
<JSONPath>
utilizza la seguente sintassi:
Sintassi
<JSONPath>JSON_PATH</JSONPath>
Esempio 1
L'esempio seguente restituisce il valore del campo JSON claim.status.text
come risposta in linguaggio naturale:
<Phrase> <JSONPath>$.claim.status.text</JSONPath> <Phrase/>
Esempio 2
Nell'esempio seguente viene restituito il valore del campo JSON claim.amount
come parametro di risposta:
<Parameter name="claimAmount"> <JSONPath>$.claim.amount.</JSONPath> <Parameter/>
La variabile di flusso claimAmount
è impostata sul valore del campo JSON {claim.amount}
.
<Ref>
Estrae il valore di una variabile di flusso esistente. Puoi utilizzare il valore per impostare un testo in linguaggio naturale o un parametro di risposta.
- Per estrarre il valore di una variabile come testo in linguaggio naturale, specifica l'elemento
<Ref>
all'interno dell'elemento<Phrase>
. - Per estrarre il valore di una variabile come parametro di risposta, specifica l'elemento
<Ref>
all'interno dell'elemento<Parameter>
.
Valore predefinito | N/D |
Obbligatorio? | Facoltativo |
Tipo | Stringa |
Elemento principale |
<Phrase> <Parameter> |
Elementi secondari | Nessuno |
<Ref>
è la seguente:
Sintassi
<Ref>EXISTING_FLOW_VARIABLE</Ref>
Esempio 1
Nell'esempio seguente viene recuperato il valore della variabile di flusso myVar
come risposta in linguaggio naturale:
<Phrase> <Ref>myVar</Ref> <Phrase/>
Esempio 2
Nell'esempio seguente viene recuperato il valore della variabile di flusso dialogflow.my.var
come parametro di risposta:
<Parameter name="customVar"> <Ref>dialogflow.my.var</Ref> <Parameter/>
La variabile di flusso customVar
è impostata sul valore della variabile dialogflow.my.var
.
<Value>
Imposta un valore letterale su un testo in linguaggio naturale o un parametro di risposta.
- Per impostare il valore letterale come testo in linguaggio naturale, specifica
<Value>
all'interno dell'elemento<Phrase>
. - Per impostare il valore letterale come parametro di risposta, specifica l'elemento
<Value>
all'interno dell'elemento<Parameter>
.
Valore predefinito | N/D |
Obbligatorio? | Facoltativo |
Tipo | Stringa |
Elemento principale |
<Phrase> <Parameter> |
Elementi secondari | Nessuno |
<Value>
è la seguente:
Sintassi
<Value>CUSTOM_TEXT</Value>
Esempio 1
L'esempio seguente imposta il testo letterale You call is important to us
come risposta in linguaggio naturale:
<Phrase> <Value>You call is important to us</Value> <Phrase/>
Esempio 2
Nell'esempio seguente, il testo letterale SYSTEM
viene impostato come parametro di risposta:
<Parameter name="responder"> <Value>SYSTEM</Value> <Parameter/>
La variabile del flusso responder
è impostata su SYSTEM
.
Codici di errore
Questa sezione descrive i codici di errore e i messaggi di errore restituiti e le variabili di errore impostate da Apigee quando questo criterio attiva un errore. Queste informazioni sono importanti se stai sviluppando regole di errore per gestire gli errori. Per scoprire di più, consulta Informazioni importanti sugli errori relativi alle norme e Gestione degli errori.
Errori di runtime
Questi errori possono verificarsi durante l'esecuzione del criterio.
Codice guasto | Stato HTTP | Causa |
---|---|---|
steps.setdialogflowresponse.ExecutionFailed |
500 |
Questo errore si verifica quando l'esecuzione del criterio non è riuscita a causa di un'eccezione generica. Il messaggio di errore contiene i dettagli dell'eccezione. |
steps.setdialogflowresponse.InvalidSourceType |
500 |
Questo errore si verifica se la variabile specificata nell'elemento <Source> non è di tipo message. |
steps.setdialogflowresponse.MalformedInput |
500 |
Questo errore si verifica quando il JSON fornito a questo criterio non è valido o non ha un formato corretto. |
steps.setdialogflowresponse.SourceMessageNotAvailable |
500 |
Questo errore si verifica se la variabile
message
specificata nell'elemento Source del criterio è:
|
steps.setdialogflowresponse.UnresolvedHeader |
500 |
Questo errore si verifica se l'elemento Header ha un'intestazione non valida.
Ad esempio, se l'elemento Header ha il valore X-Response-Text e non è presente X-Response-Text nell'intestazione di risposta, viene visualizzato questo errore.
|
steps.setdialogflowresponse.UnresolvedJSONPath |
500 |
Questo errore si verifica se il percorso dell'elemento JSONPath non è valido.
Ad esempio, se l'elemento JSONPath ha il valore {claim.status.value}
e non è presente alcun oggetto status nel payload JSON, viene visualizzato questo errore. |
steps.setdialogflowresponse.UnresolvedVariable |
500 |
Questo errore si verifica se una variabile specificata nel criterio SetDialogflowResponse è:
|
Errori di deployment
Questi errori possono verificarsi quando esegui il deployment di un proxy contenente questo criterio.
Nome dell'errore | Causa |
---|---|
UnsupportedOperation |
Questo errore si verifica se hai specificato una versione di Dialogflow non supportata nell'elemento
DialogflowVersion . Il criterio SetDialogflowResponse supporta
solo la versione CX . |
Variabili di errore
Ogni volta che si verificano errori di esecuzione in un criterio, Apigee genera messaggi di errore. Puoi visualizzare questi messaggi di errore nella risposta di errore. Spesso i messaggi di errore generati dal sistema potrebbero non essere pertinenti nel contesto del tuo prodotto. Ti consigliamo di personalizzare i messaggi di errore in base al tipo di errore per renderli più significativi.
Per personalizzare i messaggi di errore, puoi utilizzare le regole di errore o il criterio RaiseFault. Per informazioni sulle differenze tra le regole di errore e il criterio RaiseFault, consulta Regole di errore e criterio RaiseFault.
Devi verificare la presenza di condizioni utilizzando l'elemento Condition
sia nelle regole di errore sia nel criterio RaiseFault.
Apigee fornisce variabili di errore univoche per ogni criterio e i valori delle variabili di errore vengono impostati quando un criterio attiva errori di runtime.
Utilizzando queste variabili, puoi verificare la presenza di condizioni di errore specifiche e intraprendere le azioni appropriate. Per ulteriori informazioni su come controllare le condizioni di errore, consulta Condizioni di compilazione.
La tabella seguente descrive le variabili di errore specifiche per questo criterio.
Variabili | Dove | Esempio |
---|---|---|
fault.name="FAULT_NAME" |
FAULT_NAME è il nome dell'errore, come indicato nella tabella Errori di runtime. Il nome dell'errore è l'ultima parte del codice dell'errore. | fault.name Matches "UnresolvedVariable" |
setdialogflowresponse.POLICY_NAME.failed |
POLICY_NAME è il nome specificato dall'utente del criterio che ha generato l'errore. | setdialogflowresponse.My-Set-Dialogflow-Response.failed = true |
Argomenti correlati
Le implementazioni di riferimento dei proxy Apigee e dei flussi condivisi che mostrano l'utilizzo del criterio SetDialogflowResponse sono disponibili su GitHub di Apigee. Per ulteriori informazioni, consulta Implementazioni di riferimento dell'IA conversazionale.