Reconhecimento dos botões dos menus como entrada do usuário mais de uma vez

Olá!

Eu possuo um fluxo cheio de opções e menus, como este:

Menu

Menus bem visuais e fáceis de entender, porém, há um problema que enfrento que traz vulnerabilidade pro meu chat.

A primeira interação que o usuário faz é perfeita segue para o fluxo pré-determinado, mas como o histórico da conversa fica salvo no chat, o user consegue interagir mais de uma vez com o mesmo menu, o que se acontecer buga o chat.

Queria saber se tem como eu fazer o chat reconhecer essa 2° interação com o menu de determinado fluxo e a partir disso seguir para o fluxo correspondente.

Ou se a partir do momento que fosse selecionado da primeira vez o menu se reduzisse a apenas uma opção igual acontece no Quick Reply:

image

image

3 curtidas

Bom dia @Kaue . Seja bem vindo a nossa comunidade :smiley:

Uma solução que eu utilizo quando tenho este tipo de problema é o seguinte:

Nesse fluxo simples fiz um exemplo, dê uma olhada em todas as caixinhas, nas condições de saída e tente enteder… o processo é bem simples mesmo. Nada complexo. Se ainda ficar com alguma dúvida só falar aqui que tento ser mais específica!!

Mas basicamente quando o usuário der qualquer “Input inesperado” mesmo que seja do menu da primeira interação ele vai retornar ao menu pra que ele tenha a possibilidade de clicar na opção que deseja!

Agora, se você utiliza regex vai precisar criar uma variável e adapatar a configuração de saída do bloco de input.

exceptions10.json (10,5,KB)

1 curtida

Boa Tarde @Aline_Camargos. Obrigado pela ajuda!!

Veja se eu entendi direito, por favor.

Basicamente eu teria que colocar uma validação dessa em cada entrada do user, analisando se “da match” com alguma das opções do menu, e caso não dê ele vai ser mandado pro fluxo que ele parou ao invés do inicio de todo o atendimento, é isso?

Agora, então não teria como eu fazer o chat reconhecer que quando o user interagir uma segunda vez com um menu anterior, ele quer pegar a informação referente a esse outro fluxo que ficou pra trás correto? :sweat_smile:

1 curtida

Se caso não der match com nenhuma opção do menu é considerado um input inesperado, a partir disso você trata ele como quiser, ou enviando ele pro menu novamente como exemplifiquei ou pode redirecionar ele pro inicio onde ele vai começar todo o atendimento de novo. Daí depende mesmo de como você quer tratar isso no bot.

E sobre a segunda pergunta… é o mesmo menu independente se ele clicar no primeiro ou no segundo. Isso porque apontamos para o mesmo bloco. Então a informação sempre será do mesmo menu.

1 curtida