Ações avançadas e preações em chatbots WOZTELL para otimizar conversas

Bot Builder | Ações

Um nó da árvore pode ter Pre-ações e Post-ações enquanto um nó global pode ter Ações.

Pre-ações são executadas antes das respostas serem executadas e enviadas, enquanto Post-ações são executadas após as respostas serem executadas e enviadas.

Uma Ação é uma função Promise que pode ser usada para lógicas, manipulação interna de banco de dados e chamadas a APIs externas. O objeto membro pode ser recuperado e editado. Você pode usar o callback resolve da função promise para resolver um objeto com member como chave. Então, o membro pode ser passado para nós subsequentes. Os detalhes do membro serão salvos no banco de dados após todos os nós relacionados terem sido executados.

Pre-ação

Pre-ação é a ação que você gostaria de executar ANTES de enviar respostas aos usuários, como salvar tags específicas em um membro ou coletar respostas dos usuários para construir perfis. Para isso, você precisa criar tempData para armazenar os dados relevantes no perfil do usuário.

Exemplo para salvar o gênero dos usuários:

return new Promise((resolve) => {
this.member.botMeta.tempData.gender = this.messageEvent.data.text
resolve({
member: this.member.
})
})
Se você fosse desenvolver um chatbot de resposta pública para Facebook no WOZTELL, poderia escrever a seguinte pre-ação para salvar o comentário de cada um dos seus usuários.

Exemplo para salvar o comentário dos usuários:
return new Promise(async (resolve, reject) => {
const result = await this.savePostCommentAnalytics({
comment: this.messageEvent.data.text,
postId: this.messageEvent.data.post_id,
isMatched: true,
memberId: this.member._id,
fbId: this.member.fbId,
name: this.messageEvent.data.from.name,
channelId: this.member.channel,
appId: this.member.app,
})
resolve()
})


Propriedade

Descrição
postIdRepresenta o ID do seu post específico no Facebook.
isMatchedDefina como "true" se for o gatilho de comentário correto; defina como "false" se for o gatilho de comentário errado.
this.member.fbIdRepresenta um ID único de usuário para os usuários que comentam na postagem. Será criado somente após o comentário do usuário.
nameRepresenta o nome do usuário do Facebook para os usuários que comentam na postagem. Será criado somente após o comentário do usuário.

Post-ação

Post-ação é a ação que você gostaria de executar APÓS enviar respostas aos usuários. Recomendamos definir uma post-ação como padrão: salvar o CompositeId. Isso ajudará você a rastrear a posição dos seus usuários no fluxo da conversa, para que você possa ler sua pegada e analisar para segmentação futura.

Exemplo para salvar a pegada dos usuários:

return new Promise((resolve) => {
this.member.botMeta.nodeCompositeId = this.node.compositeId
this.member.botMeta.tree = this.node.tree
resolve({
member: this.member,
})
})

Idea
DICA
Caso você queira incluir um dado específico na próxima resposta da mensagem, você deve usar pre-ações para armazenar primeiro o dado.

Criar uma ação

Você pode planejar toda a jornada do seu chatbot e criar ações que ajudam a coletar dados dos usuários em uma página separada chamada: Ações.

  1. Clique para editar um nó no Bot Builder.

  2. Clique em "+ Nova Ação" para criar uma nova pre-ação.

  1. Nomeie a ação para que possa pesquisá-la e reutilizá-la se necessário. Depois, selecione "Avançado".
  1. Aplique o código da ação e "Salvar" a pre-ação.
  1. Por fim, "Salvar" as alterações feitas neste nó.

Ações avançadas do chatbot

Algumas ações úteis do chatbot só podem ser aplicadas com um pouco de codificação no modo avançado do template de recurso. Para tornar essas funções mais acessíveis aos usuários em geral, o WOZTELL introduziu um conjunto de Ações avançadas do chatbot disponíveis para todos os usuários.

Essas ações avançadas incluem:

  • "Salvar TempData"
  • "Assinar"
  • "Cancelar assinatura"
  • "Ativar chat ao vivo"
  • "Desativar chat ao vivo"
  • "Alterar idioma"
  • "Salvar informações do membro na fonte de dados"
  • "Invocar API"
  • "Definir agenda"
  • "Remover agenda"

Variáveis

O campo de texto na ação também pode suportar variáveis.