Skip to main content
Respondido

Como através da API checar o fluxo de chatbot que um número está?


mateuscdemattos

Olá, pessoal. Tudo bem?

Gostaria de saber como através da API checar o fluxo de chatbot que um número está? Não encontrei nada na documentação como um get current user chatbot ao algo do tipo. Obrigado!

Melhor resposta por Lucas Ventura

Fala @mateuscdemattos ! Bao?

Para ver qual bloco o contato está você pode chamar a rota get user state https://docs.blip.ai/#get-user-state

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

{
"id": "{{$guid}}",
"to": "[email protected]",
"method": "get",
"uri": "/contexts/{{user-identity}}/stateid@{{flow-identifier}}"
}

Você precisa passar o “IDENTIFICADOR DO FLUXO” do bot, que você pega nas configurações do builder:
 

 

 

 

Se o contexto do roteador do seu bot, onde fica o bloco Atendimento Humano estiver ativo, você pode fazer a requisição acima passando as informações desse bot. A requisição irá retornar o id do bloco onde o contato está e o de atendimento começa com desk: . Lembrando que o usuário pode ter voltado pro “Início” e neste caso a API retornaria erro ao invés de sucesso com o id do bloco onde a pessoa está.

{
    "method": "get",
    "status": "failure",
    "reason": {
        "code": 67,
        "description": "The requested resource was not found"
    }

    ...
}
 

 

Este tópico foi fechado para respostas.

5 comentários

Rafael_Figueiredo
Blipper
Forum|alt.badge.img+6

Olá, pessoal. Tudo bem?

Gostaria de saber como através da API checar o fluxo de chatbot que um número está? Não encontrei nada na documentação como um get current user chatbot ao algo do tipo. Obrigado!

Olá @mateuscdemattos  tudo bem ? 

 

Faça essa request aqui : 

curl --location 'https://{{iddocontrato}}.http.msging.net/commands' \
--header 'Authorization: Key do bot' \
--header 'Content-Type: application/json' \
--data '{
"id": "{{$guid}}",
"method": "get",
"uri": "/buckets/blip_portal:builder_working_flow"
}'

 


mateuscdemattos

Obrigado, Rafael! Vamos testar aqui e te retorno. Aproveitando, é possível além de identificar o fluxo de chat bot que o usuário esteja, qual o bloco? A intenção é conseguir identificar quando o usuário está transbordado para atendimento humano e se possível com qual atendente ou fila. É possível?


Lucas Ventura
Forum|alt.badge.img+3
  • Specialist
  • Resposta
  • August 1, 2024

Fala @mateuscdemattos ! Bao?

Para ver qual bloco o contato está você pode chamar a rota get user state https://docs.blip.ai/#get-user-state

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

{
"id": "{{$guid}}",
"to": "[email protected]",
"method": "get",
"uri": "/contexts/{{user-identity}}/stateid@{{flow-identifier}}"
}

Você precisa passar o “IDENTIFICADOR DO FLUXO” do bot, que você pega nas configurações do builder:
 

 

 

 

Se o contexto do roteador do seu bot, onde fica o bloco Atendimento Humano estiver ativo, você pode fazer a requisição acima passando as informações desse bot. A requisição irá retornar o id do bloco onde o contato está e o de atendimento começa com desk: . Lembrando que o usuário pode ter voltado pro “Início” e neste caso a API retornaria erro ao invés de sucesso com o id do bloco onde a pessoa está.

{
    "method": "get",
    "status": "failure",
    "reason": {
        "code": 67,
        "description": "The requested resource was not found"
    }

    ...
}
 

 


Lucas Ventura
Forum|alt.badge.img+3

Sobre conseguir saber em qual fila ou atendente, a fila você pode chamar a rota para retornar o valor da variável “Equipe” que é a regra de atendimento. Agora o atendente acho que não tem como.


mateuscdemattos

Obrigado, pessoal! Vou testar por aqui!