...
Node name: É o nome do nó.
If an user says: em português é "Se um usuário disser", é onde deve ser inserida a frase que o cliente deve usar naquele node que será identificada como gatilho para a interação.
Melhores práticas: Ter pelo menos 10 frases de treinamento.
Section |
---|
Parameters: Todos os dados podem ser extraídos das mensagens do usuário, identificados por meio do Nome do Parâmetro configurado
Section |
---|
+ Add a parameter: Em português adicionar parâmetro
Section |
---|
Parameter name: Nome do parâmetro
Section |
---|
+ Add response: Adicionar uma resposta
Section |
---|
Named Queries: é possível adicionar queries (consultas estáticas) a uma conversation e configurá-las.
Section |
---|
+ Add a named query: ao acionar este botão a query é adicionada permitindo nomear e configurar.
Section |
---|
Fulfillment
Section |
---|
Sua conversation pode ter um fulfillment para cada node de Intenção. O fulfillment do node de intenção será executado quando o node de intenção for ativado por meio de uma mensagem do usuário |
Plano de execução do node de Intenção
Section |
---|
Criação de um novo Fulfillment
Para adicionar um fulfillment a um node de intenção, selecione a guia preenchimento no painel detalhe do node de intenção e clique no botão + Add a fulfillment.
Section |
---|
Depois disso, o Carol Assistant adicionará um novo cumprimento ao node de intenção e abrirá o Ambiente de Desenvolvimento de fulfillment.
Outra forma de permitir a execução de codigo fonte customizado é utilizando webhooks. Webhook é um método de ampliar ou alterar o comportamento de uma aplicação utilizando callbacks (ligações de retorno) personalizados com contratos, autenticação e padrões pré-estabelicidos. O TOTVS Carol Assistente permite que antes de cada envio de resposta ao usuário da conversa, uma chamada autenticada a um endpoint externo sejá realizada com o conteúdo do contexto da conversa e aguarde uma nova resposta a ser enviada para a conversa com o usuário.
Para configurar o webhook no nó de intenção, na aba fulfillment, selecione o fulfillment type Webhook.
Agora você pode adicionar a URL do endpoint que irá receber a chamada do webhook. Caso necessário pode-se informar diferentes endpoints para ambientes de desenvolvimento e produção, para isso basta desmarcar o checkbox Use the same URL for Production and Development?
Quando configurado, o TOTVS Carol Assistente, sempre que o nó de intenção for ativado durante uma conversa, irá fazer uma chamada HTTP usando o comando POST para a URL do endpoint configurada. Além dos cabeçalhos http habituais, será enviado um cabeçado específico para a autenticação com o token mostrado na configuração do fulfillment, o que deverá ser validado na ponta que receberá a chamada. Os cabeçalhos da chamada são:
Cabeçalho | Descrição |
---|---|
X-Assistant-Signature-Token | Contém o Webhook token gerado aleatóriamente no momento da configuração do webhook do nó de intenção. |
Content-Type | Tipo de conteúdo do payload. Sempre será 'application/json' |
O payload da chamada do webhook contém as seguintes propriedades:
Parâmetro | Tipo | Descrição |
---|---|---|
intent_name | Str | Nome do nó ativado |
parameters | Dict | Todos os parametros desse contexto de conversa |
sessionLog | List | Lista de ID de sessões até esse ponto da conversa |
namedQueries | Dict | Resultados da Named Query (se houver) (a ser descontinuado) |
query | String | Query executada (se houver) (a ser descontinuado) |
language | String | Idioma da conversa |
carolOrganization | String | Nome da Organização |
carolEnvironment | String | Nome do Ambiente |
carolOrganizationId | String | Id da Organização |
carolEnvironmentId | String | Id do Ambiente |
sessionId | String | Id da sessão da conversa atual |
isProduction | Boolean | Informa se a convesa está acontecendo em Produção ou Desenvolvimento |
channelName | String | Nome do canal por onde a mensagem chegou |
Para retornar dados pelo WebHook, o TOTVS Carol Assistente espera que os dados estejam em um formado pré definido. O retorno deverá ser um objeto JSON com as seguintes propriedades:
Parâmetro | Obrigatório? | Tipo | Descrição |
---|---|---|---|
message | Sim | String | Mensagem que será retornada na conversa |
short_message | Não | String | Mensagem curta de retorno |
jump_to | Não | String | Nome do nó para o qual a conversa será direcionada |
options | Não | Array[Str] | Lista de opções pré-definidas que aparecerão como botões na resposta |
logout | Não | Boolean | Destrói a sessão de usuário na conversa |
parameters | Não | Object | Parametros que serão adicionados no contexto da conversa |
...