Quando estamos criando ou editando um bot, pode acontecer de fazermos uma configuração que gera um efeito de repetição no bot, ou loopings. Quando isso acontece, o bot envia a seguinte mensagem:
"🤒🤕 nesse momento não consigo responder. Por favor aguarde um momento e tente novamente."
O looping pode ser gerado de duas formas:
Cenário 1:
Foi configurada uma intenção 1 que, no campo próximo fluxo, leva para uma intenção 2. Porém na intenção 2, o campo próximo fluxo está configurado para a intenção 1.
Para ilustrar, temos acima uma intenção inicial levando para a intencao_2.
O próximo fluxo configurado na intencao_2 leva a conversa novamente para a intencao_inicial. Com isso, o bot fica alternando entre as duas intenções repetidamente.
Cenário 2:
Um outro cenário que pode gerar looping é caso o bot tenha que fazer mais do que 6 verificações em sequência, por exemplo: você configurou uma intenção com mais de 6 condições ou uma sequência de 7 ou mais intenções sem nenhum retorno para o cliente (intenção 1 verifica alguma informação e direciona para a intenção 2 que verifica uma informação e direciona para a intenção 3, e assim sucessivamente por 7 ou mais intenções. Nesses casos, o looping ocorre porque existe uma limitação no bot em que ele pode realizar até 6 verificações em sequência antes de responder algo para o cliente. No entanto, caso ele precise realizar mais verificações, ele pode se "perder" entre uma e outra.
Um exemplo de intenção com mais de 6 condições.
Como identificar estas situações?
Durante a criação e edição do bot, é importante realizar testes recorrentes para verificar se o comportamento está de acordo com o esperado. Uma maneira rápida de fazer testes de fluxo é através do simulador de bot. Além de ser muito prático, o simulador também informa quando um looping foi identificado:
No exemplo da situação 1, o simulador retornou as mensagens configuradas na intenção repetidamente, até que por fim trouxe a mensagem de looping:
Caso você esteja testando fora do simulador, a mensagem de alerta de looping não vai aparecer, mas a mensagem padrão sim, e assim você conseguirá identificar que se trata deste tipo de erro.
E então, como corrigir?
Caso você verifique que o bot está entrando em repetição porque tem duas intenções "encadeadas", basta alterar o próximo fluxo de uma delas,
Já se o problema for a quantidade de verificações consecutivas do bot, basta acrescentar uma mensagem antes do limite de 6 verificações. Você pode, por exemplo, criar uma intenção com 3 condições e aí enviar uma mensagem para o cliente antes de fazer mais 3 verificações. Isso faz com que o bot processe "pedacinhos menores" do fluxo por vez, mitigando as chances de erro.
Uma vez corrigido o fluxo, não esqueça de testar e publicar em produção!
Artigos relacionados: Pra que serve e como usar o simulador de fluxos do bot.