Skip to main content

Bom dia, pessoal! Esse tópico vai ser bem curtinho e resumido, para ajudar quem precisa fazer o direcionamento de usuários no fluxo. Tenho visto dúvidas a respeito desse tema e talvez essa doc possa ajudar.

 

São necessárias duas requisições e exatamente na seguinte ordem:

 

Primeira Requisição

Verbo: POST
URL: https://{{id_do_contrato}}.http.msging.net/commands

Header

Content-Type: application/json

Authorization: Key {YOUR_ROUTER_TOKEN}

 

Body

{

"id": "{{$guid}}",

"to": "[email protected]",

"method": "set",

"uri": "/contexts/{{contact.identity}}/Master-State",

"type": "text/plain",

"resource": "{{idDoSubbot}}@msging.net"

}

 

Obs: 

  • A variável {{$guid}} é gerada automaticamente para uso no Postman
  • A variável {{contact.identity}} é o número de telefone do usuário + o identificador padrão do Whatsapp.
    Exemplo: [email protected]
  • A variável {{idDoSubbot}} é o id do bot que será direcionado. Essa informação pode ser obtida na página home do seu bot. Em baixo do nome terá uma chave-valor de nome “Id”, com o valor desejado à frente.
    Exemplo: BlnmA3qAYGvgvDu93UriBMppQoAzB-gHjh91qgAa8B47GqF24Z7pHXlIJmPgAm30ruiq2ZqoPo0_SP-lFx-qa2_3vk4Wq9IJ2SpJMTkyNfgN2lpbCfG1_xQHbF8ypSxJsPizXNgL_QBGGE5JqV9V

 

Segunda Requisição

Verbo: POST
URL: https://{{id_do_contrato}}.http.msging.net/commands

Header

Content-Type: application/json

Authorization: Key {YOUR_ROUTER_TOKEN}

 

Body

{

"id": "{{$guid}}",

"to": "[email protected]",

"method": "set",

"uri": "/contexts/{{contact.identity}}/stateid@{{flow-identifier}}",

"type": "text/plain",

"resource": "{{state-id}}"

}


Obs:

  • A variável {{$guid}} é gerada automaticamente para uso no Postman
  • A variável {{contact.identity}} é o número de telefone do usuário + o identificador padrão do Whatsapp.
    Por exemplo: [email protected]
  • A variável {{flow-identifier}} pode ser obtida ao abrir o Builder do subbot desejado, clicar nas configurações que ficam no painel à esquerda, clicar em Identificador do Fluxo e copiar o seu valor.
    Exemplo:

     

  • A variável {{state-id}} é o identificador do bloco que você enviará o contato. Alguns pontos devem ser observados neste momento.
  1. O bloco que receberá o usuário não exibirá nenhum conteúdo e executará apenas as condições de saída.
  2. É uma boa prática criar este bloco separado para receber o usuário e que tenha a condição de aguardar “Entrada do usuário”.
    Exemplo:

     

  3. A imagem acima é um bom exemplo de como este bloco deve ser. Ele é paralelo ao bloco “Início”, aguarda um input do usuário para iniciar a conversa e somente depois que envia o usuário para o primeiro bloco do fluxo, neste caso denominado “valida”.
  4. Para coletar o valor de {{state-id}} basta clicar com o botão direito em cima do bloco e clicar em “Copiar Id”
    Exemplo:
    b--XZ8sFXeoVbaY8_fc1Fyiox6NqRSvXpE02DegpGQfS3bZLH2bNK7QURUJVs7xBKqQwHVbHx2Y9SDNav7eETdiDKISoW9zGv5cLc_O1F0XeA-ZmFs7VlIhRfo9Ja6_pvweq1kbHKuM3PygLZcmTLw

 

As duas requisições devem ser realizadas na ordem que aqui se apresenta. Em caso de disparo de mensagem ativa com um redirecionamento personalizado, é recomendado primeiro efetuar o disparo da mensagem ativa para depois executar as etapas deste documento.

 

Acredito que vai ajudar muitas pessoas que tem a duvida sobre o redirecionamento de contato entre bots via api.


Bom dia, eu fiz todo o procedimento mas não vai nem com bomba, criei as duas requisições executei na mesma ordem, as duas retornam 200 success mas não acontece nada no bot, alguem conseguiria me dar uma força ? Conferi as informaçoes solicitadas mais de uma vez pra ver se não tinha trocado alguma mas esta tudo nar ordem certa mas ele não redireciona para onde eu quero enviar   


Bom dia, eu fiz todo o procedimento mas não vai nem com bomba, criei as duas requisições executei na mesma ordem, as duas retornam 200 success mas não acontece nada no bot, alguem conseguiria me dar uma força ? Conferi as informaçoes solicitadas mais de uma vez pra ver se não tinha trocado alguma mas esta tudo nar ordem certa mas ele não redireciona para onde eu quero enviar   

Estou com o mesmo problema, conseguiu resolver?


Bom dia, eu fiz todo o procedimento mas não vai nem com bomba, criei as duas requisições executei na mesma ordem, as duas retornam 200 success mas não acontece nada no bot, alguem conseguiria me dar uma força ? Conferi as informaçoes solicitadas mais de uma vez pra ver se não tinha trocado alguma mas esta tudo nar ordem certa mas ele não redireciona para onde eu quero enviar   

Estou com o mesmo problema, conseguiu resolver?

Olá @sonath está usando a chave do router? 

O contexto está habilitado entre o bots ? 

Após as duas requisições você enviou um input, pois mesmo redirecionando via api você precisa enviar um mensagem pois o local que você vai está é o bloco depois do conteúdo e aguardando o input.

 

Ref : 

 

 


Bom dia, eu fiz todo o procedimento mas não vai nem com bomba, criei as duas requisições executei na mesma ordem, as duas retornam 200 success mas não acontece nada no bot, alguem conseguiria me dar uma força ? Conferi as informaçoes solicitadas mais de uma vez pra ver se não tinha trocado alguma mas esta tudo nar ordem certa mas ele não redireciona para onde eu quero enviar   

Estou com o mesmo problema, conseguiu resolver?

Olá @sonath está usando a chave do router? 

O contexto está habilitado entre o bots ? 

Após as duas requisições você enviou um input, pois mesmo redirecionando via api você precisa enviar um mensagem pois o local que você vai está é o bloco depois do conteúdo e aguardando o input.

 

Ref : 

 

 

  • O problema estava no id do contato, como tem roteador em cima de roteador tive que pegar o id do contanto no roteador responsável.

    Outra duvida:

    - Além de posicionar o contanto no bloco específico preciso enviar para o bloco dados e colocar em uma variável para ser usado no fluxo.
    - Além de posicionar preciso seguir com o fluxo sem que o cliente coloque algum input.

    É possivel?
     

Bom dia, eu fiz todo o procedimento mas não vai nem com bomba, criei as duas requisições executei na mesma ordem, as duas retornam 200 success mas não acontece nada no bot, alguem conseguiria me dar uma força ? Conferi as informaçoes solicitadas mais de uma vez pra ver se não tinha trocado alguma mas esta tudo nar ordem certa mas ele não redireciona para onde eu quero enviar   

Estou com o mesmo problema, conseguiu resolver?

Olá @sonath está usando a chave do router? 

O contexto está habilitado entre o bots ? 

Após as duas requisições você enviou um input, pois mesmo redirecionando via api você precisa enviar um mensagem pois o local que você vai está é o bloco depois do conteúdo e aguardando o input.

 

Ref : 

 

 

  • O problema estava no id do contato, como tem roteador em cima de roteador tive que pegar o id do contanto no roteador responsável.

    Outra duvida:

    - Além de posicionar o contanto no bloco específico preciso enviar para o bloco dados e colocar em uma variável para ser usado no fluxo.
    - Além de posicionar preciso seguir com o fluxo sem que o cliente coloque algum input.

    É possivel?
     

Olá @sonath para inserir dados no contato e usar no fluxo faça essa request : https://docs.blip.ai/?http#update-a-contact 

Você pode fazer esse redirecionamento sem que o cliente mande input caso tenha sido feito

POST https://{{contract.id}}.http.msging.net/messages HTTP/1.1
Content-Type: application/json
Authorization: Key {YOUR_TOKEN}

{
"id": "2",
"to": "[email protected]",
"type": "application/vnd.lime.redirect+json",
"content": {
"address": "[email protected]",
"context": {
"type": "text/plain",
"value": "Get started"
}
}
}

ou com envio de NA https://docs.blip.ai/?http#sending-a-notification-active-message antes de fazer os redis .

 

 


Bom dia, eu fiz todo o procedimento mas não vai nem com bomba, criei as duas requisições executei na mesma ordem, as duas retornam 200 success mas não acontece nada no bot, alguem conseguiria me dar uma força ? Conferi as informaçoes solicitadas mais de uma vez pra ver se não tinha trocado alguma mas esta tudo nar ordem certa mas ele não redireciona para onde eu quero enviar   

Estou com o mesmo problema, conseguiu resolver?

Olá @sonath está usando a chave do router? 

O contexto está habilitado entre o bots ? 

Após as duas requisições você enviou um input, pois mesmo redirecionando via api você precisa enviar um mensagem pois o local que você vai está é o bloco depois do conteúdo e aguardando o input.

 

Ref : 

 

 

  • O problema estava no id do contato, como tem roteador em cima de roteador tive que pegar o id do contanto no roteador responsável.

    Outra duvida:

    - Além de posicionar o contanto no bloco específico preciso enviar para o bloco dados e colocar em uma variável para ser usado no fluxo.
    - Além de posicionar preciso seguir com o fluxo sem que o cliente coloque algum input.

    É possivel?
     

Olá @sonath para inserir dados no contato e usar no fluxo faça essa request : https://docs.blip.ai/?http#update-a-contact 

Você pode fazer esse redirecionamento sem que o cliente mande input caso tenha sido feito

POST https://{{contract.id}}.http.msging.net/messages HTTP/1.1
Content-Type: application/json
Authorization: Key {YOUR_TOKEN}

{
"id": "2",
"to": "[email protected]",
"type": "application/vnd.lime.redirect+json",
"content": {
"address": "[email protected]",
"context": {
"type": "text/plain",
"value": "Get started"
}
}
}

ou com envio de NA https://docs.blip.ai/?http#sending-a-notification-active-message antes de fazer os redis .

 

 

Na verdade o que eu quero é inserir dados em uma variavel do fluxo.


@sonath você pode invocar ela de acordo com algum dado do cliente que esteja no extras ou resultado de script ou até mesmo usando o definir variavel do bot : https://help.blip.ai/hc/pt-br/articles/4474381503127-A%C3%A7%C3%A3o-Definir-vari%C3%A1vel ai você pode invocar ela no fluxo usando {{context.variavelname}}

 

Ref: https://help.blip.ai/hc/pt-br/articles/4474389817623-A%C3%A7%C3%A3o-Executar-script#:~:text=A%20a%C3%A7%C3%A3o%20de%20executar%20um,din%C3%A2micos%20e%20muitas%20outras%20op%C3%A7%C3%B5es.


@sonath você pode invocar ela de acordo com algum dado do cliente que esteja no extras ou resultado de script ou até mesmo usando o definir variavel do bot : https://help.blip.ai/hc/pt-br/articles/4474381503127-A%C3%A7%C3%A3o-Definir-vari%C3%A1vel ai você pode invocar ela no fluxo usando {{context.variavelname}}

 

Ref: https://help.blip.ai/hc/pt-br/articles/4474389817623-A%C3%A7%C3%A3o-Executar-script#:~:text=A%20a%C3%A7%C3%A3o%20de%20executar%20um,din%C3%A2micos%20e%20muitas%20outras%20op%C3%A7%C3%B5es.

@Rafael_Figueiredo cara obrigado pela força que esta dando!!

Vou pontuar o que estou querendo.

O contexto é o seguinte:
Estou fazendo um request em um fluxo XPTO, como essa resposta pode demorar, depois que essa resposta estiver pronta em nosso servidor quero enviar essa resposta para um fluxo→bloco e armazenar em uma variavel. Com isso pronto preciso posicionar o contato la para seguir nesse fluxo.

Sacou?

O lance de posicionar o contanto em um fluxo→ bloco específico já descobri, o problema é como enviar um command que carregue os dados que preciso colocar nesse fluxo e startar o fluxo.

sacou?


Comente