Se utilizzi Amazon Lex V2, consulta invece la guida Amazon Lex V2.
Se utilizzi Amazon Lex V1, ti consigliamo di aggiornare i bot ad Amazon Lex V2. Non stiamo più aggiungendo nuove funzionalità alla V1 e consigliamo vivamente di utilizzare la V2 per tutti i nuovi bot.
Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Passaggio 6: utilizzare il bot
A scopo dimostrativo, fornisci input al bot come cliente e come agente. Per distinguere tra le due, le domande poste dal cliente iniziano con «Cliente:» e le risposte fornite dall'agente iniziano con «Agente:». Puoi scegliere da un menu di input suggeriti.
Esegui la tua applicazione web aprendola index.html
per avviare una conversazione simile all'immagine seguente con il tuo bot:

La pushChat()
funzione nel file index.html è spiegata di seguito.
var endConversationStatement = "Customer: I have no more questions. Thank you."
// If the agent has to send a message, start the message with 'Agent'
var inputText = document.getElementById('input');
if (inputText && inputText.value && inputText.value.trim().length > 0 && inputText.value[0]=='Agent') {
showMessage(inputText.value, 'agentRequest','conversation');
inputText.value = "";
}
// If the customer has to send a message, start the message with 'Customer'
if(inputText && inputText.value && inputText.value.trim().length > 0 && inputText.value[0]=='Customer') {
// disable input to show we're sending it
var input = inputText.value.trim();
inputText.value = '...';
inputText.locked = true;
customerInput = input.substring(2);
// Send it to the Lex runtime
var params = {
botAlias: '$LATEST',
botName: 'KendraTestBot',
inputText: customerInput,
userId: lexUserId,
sessionAttributes: sessionAttributes
};
showMessage(input, 'customerRequest', 'conversation');
if(input== endConversationStatement){
showMessage('Conversation Ended.','conversationEndRequest','conversation');
}
lexruntime.postText(params, function(err, data) {
if (err) {
console.log(err, err.stack);
showMessage('Error: ' + err.message + ' (see console for details)', 'lexError', 'conversation1')
}
if (data &&input!=endConversationStatement) {
// capture the sessionAttributes for the next cycle
sessionAttributes = data.sessionAttributes;
showMessage(data, 'lexResponse', 'conversation1');
}
// re-enable input
inputText.value = '';
inputText.locked = false;
});
}
// we always cancel form submission
return false;
Quando fornisci un input come cliente, il runtime di Amazon Lex lo API invia ad Amazon Lex.
La showMessage(daText, senderRequest, displayWindow)
funzione visualizza la conversazione tra l'agente e il cliente nella finestra di chat. Le risposte suggerite da Amazon Kendra vengono visualizzate in una finestra adiacente. La conversazione termina quando il cliente dice “I have no more questions. Thank you.”
Nota: elimina il tuo indice Amazon Kendra quando non è in uso.