Skip to main content

Olá pessoal


Achei um post sobre o assunto, mas não no whatsapp. Já existe alguma maneira de inserir um formulário no Blip sem ser via weblink, e que funcione de alguma maneira no whatsapp?


Abs

Olá @Eduardo_Cardoso é possível através de web view, mas não sei se atende seu caso.


Oi Rafael, obrigado. Sim, achei esse thread no forum [Resolvido] Formulario dentro do chat mas a necessidade era não “sair” do bot.


Voltando a este post, pois agora é possível inserir um formulário de captura de dados dentro do WhasApp sem sair da ferramenta. Será que alguém já conseguiu realizar?


@Jean_Bueno, boa tarde!

Creio que não, estou procurando uma solução


@Jean_Bueno ​@Gabriel Carrasco  é possível sim!

Vc precisa usar whatsapp flow para montar seu formulário.

Artigo da blip sobre: https://help.blip.ai/hc/pt-br/articles/19143153044375-O-que-%C3%A9-o-WhatsApp-Flows
Playground da meta: https://developers.facebook.com/docs/whatsapp/flows/playground
Documentação com os componentes existentes: https://developers.facebook.com/docs/whatsapp/flows/reference/components

Após vc montar o flow com os links acima, basta copiar o json do formulário e criar o whatsapp flow através da API disponibilizada pela Blip no artigo enviado acima.

Vc usa primeiro a rota para criar, depois para atualizar o flow (passando o json criado) e depois publicar o flow.

Depois vc usa o conteúdo dinâmico passando o json abaixo:

{
  "recipient_type": "individual",
  "messaging_product": "whatsapp",
  "type": "interactive",
  "interactive": {
    "type": "flow",
    "body": {
      "text": "Para abrir o formulário, basta clicar no botão abaixo.\n\nDigite *sair* para voltar ao menu."
    },
    "action": {
      "name": "flow",
      "parameters": {
        "flow_message_version": "3",
        "flow_token": "any_string_for_this_example",
        "flow_id": "{{idFlow}}",
        "flow_cta": "Abrir formulário",
        "flow_action": "navigate",
        "flow_action_payload": {
          "screen": "{{idPrimeiraScreenDoFlow}}",
          "data": {
            "type": "dynamic_object"
          }
        }
      }
    }
  }
}

Para pegar os dados informados pelo cliente, vc cria um script após o retorno do usuário
 

function run(retornoFlowCadastro) {

    try {

        if (typeof retornoFlowCadastro != 'object') retornoFlowCadastro = JSON.parse(retornoFlowCadastro);

 

        return retornoFlowCadastro.metadata)'#wa.interactive.nfm_reply.json_response'];

    } catch (e) {

        return 'DebugErro: ' + e;

    }

}


Comente