Questa guida spiega come inviare contenuti avanzati a Messenger Dialogflow.
Passaggio 1: crea uno strumento addRichContent nell'agente
Crea un strumento funzione chiamato addRichContent con i seguenti dati:
Input dello strumento:
properties: {}
type: object
Output dello strumento:
properties:
status:
type: string
reason:
type: string
type: object
Passaggio 2: spiega all'agente come utilizzare questo strumento
Spiega all'agente come utilizzare lo strumento nelle istruzioni e negli esempi.
Ad esempio, aggiungi qualcosa di simile alle istruzioni:
- Greet the user
- Ask the user what their favorite color is.
At the same time run ${TOOL: addRichContent} to display buttons
for blue, red, yellow, and green.
- Thank the user
Ad esempio, crea un esempio simile al seguente:
Tieni presente che la sintassi per i contenuti avanzati è la stessa che utilizzi se si restituisce un payload personalizzato in un agente virtuale basato sul flusso.
Passaggio 3: definisci il codice JavaScript
Nel codice della pagina che ospita df-messenger
,
devi creare codice JavaScript
che definisce una funzione che indica a df-messenger
di eseguire il rendering dei contenuti avanzati.
Devi anche registrare questa funzione con df-messenger
,
in modo che sappia di eseguirla quando l'agente virtuale ne ha bisogno.
Assicurati che la variabile dfMessenger
sia dichiarata
e punta alla tua istanza di df-messenger
.
Ecco un codice di esempio che puoi utilizzare a questo scopo:
const dfMessenger = document.querySelector('df-messenger');
function addRichContent(customPayload) {
dfMessenger.renderCustomCard(customPayload.richContent);
// add error handling
return Promise.resolve({ status: "OK", reason: null });
}
// substitute your own tool id
const toolId = 'projects/PROJECT_ID/locations/LOCATION/agents/AGENT_ID/tools/TOOL_ID'
dfMessenger.registerClientSideFunction(toolId, addRichContent.name, addRichContent);