Usuário voltar ao mesmo bloco após exceção

Olá!

Gostaria de saber como configurar o bloco de exceções para o usuário voltar ao bloco que estava anteriormente.

Exemplo: ele digitou uma opção que não existe no menu, então é mandado para o bloco de exceção e volta novamente para o bloco menu (e isso acontecer independente do bloco).

Consegui encontrar uns quatro tópicos sobre isso, no entanto não consegui reproduzir :cry:

1 Curtida

Eu coloco uma opção para se a resposta existe, ele volta para o mesmo bloco:
image

Não sei se seria isso que você quer.

Obrigada por tentar me ajudar, @Anderson_Fontis_dos

Não seria bem isso. Não sei se deu para entender o que quis dizer, mas o que eu gostaria é que o usuário sempre voltasse automaticamente para a parte que ele parou, após cair no bloco exceção. Compreende?

oi @Leticia_Caroline_Far ,
seja bem-vinda à comunidade.
Acredito que não tenha uma forma de realizar a ação que você está procurando de forma automática para todos os blocos do builder (se for algo que ainda não conheço, seria ótimo aprender aqui).

Eu faço o seguinte: onde tem um menu ou solicitação de informação, que é onde possivelmente alguns usuários irão digitar uma opção que não existe, eu incluo uma ação de saída para validar a resposta, (pode ser um script para questões mais complexas como email, telefone, cpf, ou uma condição de saída para casos mais simples).

Se a condição não é falsa, envio o usuário para um bloco onde reforço o pedido de digitar alguma opção do menu ou fazer o input da informação solicitada.

Se a condição é verdadeira, segue o fluxo planejado.

Essa validação faço nas etapas onde há necessidade sempre fazendo a curadoria (usando o histórico das conversas para entender o comportamento dos usuários durante o fluxo), mas isso manualmente porque ainda não achei uma forma de fazer automaticamente.

Espero ter ajudado,

1 Curtida

@costa obrigada pela contribuição :smiling_face_with_three_hearts:

Então, eu vi em um tópico que dá para fazer isso usando a variável {{state.previous.name}}, no entanto não soube como fazer isso :confused:

Espero que alguém possa elucidar para a gente.

@Leticia_Caroline_Far,

Você tem duas formas de fazer.

  1. Usando {{state.previous.name}}
    Essa variável retorna o valor do nome do ponto anterior do usuário.

Se o caminho do usuário for Ponto A --> Exceptions --> Ponto A.
Você poderia utilizar essa variável já que quando o usuário estiver em Exceptions o valor dela Seria Ponto A.

Caso o caminho seja: Ponto A --> Exceptions --> Ponto B --> Ponto A
Você teria esse fluxo caso der uma mensagem ou uma tratativa intermediária antes de voltar.
Para isso você precisaria popular uma terceira variável, dentro de exceptions com o valor de {{state.previous.name}}.
Isso seria feito usando um Definir variável com esse valor dentro de Exceptions. A partir daí é só utilizar a variável definida.

A dificuldade desse formato seria que pode ser necessário incluir várias condições de saída.

  1. Utilizando as APIs do Blip - https://docs.blip.ai/#change-user-state
    Para isso você precisaria passar o id do ponto de origem, dentro do body quando fizer a requisição.
{
  "id": "1294447a-2581-4597-be6a-a5dff33af156",
  "to": "postmaster@msging.net",
  "method": "set",
  "uri": "/contexts/{{contact.identity}}/stateid%400",
  "type": "text/plain",
  "resource": "IdPontoA"
}

O ID do ponto A pode ser obtido por {{state.previous.id}}
2 Curtidas

Este tópico foi fechado automaticamente 7 dias depois da úlima resposta. Novas respostas não são mais permitidas.