Skip to main content

OlĆ”, pessoal!!!



Enquanto aguardamos o lanƧamento oficial da funcionalidade pela Take, vamos de soluĆ§Ć£o alternativa!



Vc vai precisar baixar o JSON do bot, pois serƔ necessƔrio editƔ-lo.


ApĆ³s baixar, organize/formate o conteĆŗdo para facilitar a ediĆ§Ć£o e para isso, sugiro instalar o plugin JSON Viewer no NotePad++ e utilizar o atalho CTRL+Alt+Shift+M ou utilizar outra ferramenta que melhor lhe atenda.



Vamos editar manualmente o bloco alvo e para isso, vamos utilizar o JSON do link abaixo como exemplo:



JSONBot.json (22,7KB)







No bot de exemplo acima, eu faƧo 2 perguntas ao usuĆ”rio e se a resposta for diferente de ā€œSimā€ ou ā€œNĆ£oā€, envio ele para o bloco ā€œValidaĆ§Ć£oā€, onde digo que ā€œnĆ£o entendi sua respostaā€ e envio-o de volta ao bloco da mesma pergunta. Obviamente num fluxo real, vc deve controlar quantas vezes o usuĆ”rio pode repetir esse processo para nĆ£o o deixar em um loop infinito (essa configuraĆ§Ć£o nĆ£o foi aplicada no bot do exemplo).





Passo 1:


Busque o nome do bloco no seu JSON.


Ele tem que ter pelo menos uma condiĆ§Ć£o de saĆ­da configurada.


No nosso exemplo, o nome do bloco ā€œValidaĆ§Ć£oā€ estĆ” na linha 909.





Passo 2:


Busque as condiƧƵes de saƭda ($conditionOutputs) do bloco no seu JSON.


No nosso exemplo, as condiƧƵes de saĆ­da do bloco ā€œValidaĆ§Ć£oā€ comeƧam na linha 881.


A condiĆ§Ć£o de saĆ­da que eu quero editar comeƧa na linha 882 e termina na linha 897.





Passo 3:


Edite o ā€œstateIdā€ da condiĆ§Ć£o de saĆ­da, trocando o ID do bloco de destino pela variĆ”vel desejada.


No nosso exemplo, o ā€œstateIdā€ estĆ” na linha 883 (print acima) e o ID antigo foi substituĆ­do pela variĆ”vel ā€œ{{state.previous.id}}ā€ (print abaixo), que remete ao bloco que o usuĆ”rio passou anteriormente antes de chegar ao bloco ā€œValidaĆ§Ć£oā€.





Passo 4:


Salve o JSON e suba-o de volta ao builder.


Pronto! Agora a condiĆ§Ć£o de saĆ­da do seu bloco estĆ” apontando para uma variĆ”vel.


No nosso exemplo, o usuƔrio voltarƔ ao bloco anterior (de uma das perguntas) sempre que inserir um input inesperado no fluxo.





Casos de uso:







  1. Vc pode criar uma variƔvel personalizada com vƔrios IDs de blocos especƭficos e setar no JSON de acordo com a necessidade, exemplo: {{variƔvel@id}};







  2. Neste bloco editado vc pode criar trackings coletando o nome do bloco anterior ({{state.previous.name}}) e a entrada do usuƔrio ({{input.content}}) para fins de anƔlise e melhoria contƭnua do fluxo.







  3. Facilidade para validar pontos de decisĆ£o (perguntas e/ou menus) em um sĆ³ lugar, sem a necessidade de enviar o usuĆ”rio para um bloco de ā€œerro genĆ©ricoā€, mantendo-o engajado no fluxo e diminuindo a possibilidade de abandono.







ObservaĆ§Ć£o:



Esta dica Ć© de minha prĆ³pria autoria. Criada por necessidade, testada e implementada em um cliente que possui cerca de 20 mil acessos diĆ”rios no WhatsApp, porĆ©m mesmo assim, a responsabilidade de colocar algo editado manualmente diretamente no JSON do bot em produĆ§Ć£o Ć© do prĆ³prio desenvolvedor, portanto, teste em HMG todas as ediƧƵes que fizer para garantir o perfeito funcionamento do fluxo.



Espero que tenha bons resultados!!! 😊

Sensacional, como sempre, @Wesley.Oliveira! :blipinlove:


que demais, @Wesley.Oliveira 😍


Comente