Quando há correspondência de uma intent no ambiente de execução, o agente do Dialogflow continua coletando informações do usuário final até que ele forneça dados para cada um dos parâmetros obrigatórios. Esse processo é chamado de preenchimento de slot.
Por padrão, o Dialogflow não envia uma solicitação de webhook de fulfillment até coletar todos os dados necessários do usuário final.
Se o webhook para preenchimento de slot estiver ativado, o Dialogflow enviará uma solicitação de webhook de fulfillment para cada conversão de conversação durante o preenchimento do slot.
Na maioria dos casos, as solicitações de parâmetros são suficientes para coletar todos os parâmetros obrigatórios, mas um webhook para preenchimento de slots permite definir uma lógica de agente mais específica durante a coleta dos parâmetros. Por exemplo, o webhook pode lidar com a personalização de perguntas de acompanhamento ou a definição de slots de parâmetros que não podem ser recuperados da resposta do usuário final, como um banco de dados.
Ativar o webhook para o preenchimento de slots
Para ativar o webhook para preenchimento de slots no momento do projeto:
- Acesse o console do Dialogflow ES.
- Selecione um agente.
- Selecione Intents no menu da barra lateral à esquerda.
- Selecione uma intent.
- Role para baixo até a seção Fulfillment.
- Ative a opção Ativar chamada de webhook para preenchimento de slot.
- Clique em Salvar.
Gerenciar o webhook para chamadas de preenchimento de slots no ambiente de execução
A mensagem de solicitação do webhook recebida pelo serviço do webhook tem um campo queryResult.parameters
.
Esse campo contém o conjunto atual de parâmetros fornecidos pelo usuário final.
Os valores que ainda não foram coletados são definidos como strings vazias.
Um exemplo da mensagem de resposta do webhook para definir parâmetros pode ser encontrado em Exemplos de resposta do webhook.