Skip to main content
Respondido

Redirecionar para o Blip Desk por API


Faço uma requisição http para um ERP. Só que esse ERP demora para responder mais que 60 segundos. Fiz essa chamada assincrona e dependendo da resposta do ERP temos fluxo diferentes. Envio as mensagens e o change user state. Mas tem um caso de uso que preciso redirecionar direto para o Atendimento humano, sem interação do usuário. Outra coisa: consigo alterar o fluxo sem a necessidade de interação do usuário?
Obrigado pela atenção

Melhor resposta por alecindro_castilho

A solução para esse caso:

1 - Mudar o stateid do usuário para a caixa de atendimento (Blip Docs | API Reference) onde resource será o id da caixa de atendimento humano, por exemplo:

POST
https://http.msging.net/commands
HTTP/1.1
Content-Type:application/json
Authorization:Key {YOUR_TOKEN}
{"id":"{xxxxx}",
"to":"postmaster@msging.net",
"method":"set",
"uri":"/contexts/{identity}/stateid@{Identificador do fluxo}",
"type":"text/plain",
"resource":"id do atendimento humano"}

2 - Abrir o ticket passando o ultimo input do usuário (Blip Docs | API Reference):

POST
https://http.msging.net/commands
HTTP/1.1
Content-Type:application/jsonAuthorization:Key {YOUR_TOKEN}
{ 
 "id":"{xxxx}",
 "to":"postmaster@desk.msging.net",
 "method":"set",
 "uri":"/tickets/{identity}",
 "type":"text/plain",
 "resource":"Input do usuario"
}

3 - Setar a variavel de contexto helpDeskHasTicket :

POST
https://http.msging.net/commands
HTTP/1.1
Content-Type:application/json
Authorization:Key {YOUR_TOKEN}
{
 "id":"{xxxx}",
 "method":"set",
 "uri":"/contexts/{identity}/helpDeskHasTicket",
 "type":"text/plain",
 "resource":"true"
}
Veja o original
O conteúdo deste tópico foi útil para você?

Bruno
  • Specialist
  • 6 de maio de 2020

Você consegue criar um ticket para um usuário através do endpoint: Create a new ticket


Mas o Bot continua no fluxo, o usuário não é redirecionado para o atendimento humano…


Bruno
  • Specialist
  • 6 de maio de 2020

Basta você direcionar ele pro bloco de atendimento humano utilizando o endpoint: Change user state


Bruno
  • Specialist
  • 7 de maio de 2020

Que bom @alecindro_castilho

Pode marcar a resposta como solução, por favor?


Deculpa, mas como faço isso?


Bruno
  • Specialist
  • 7 de maio de 2020

Tem um botão de Solução abaixo da resposta


Seguinte houve um engano. Não funcionou. Dá um erro no debug. Executed with input Composing.
O que fiz: Alterei o change user para atendimento humano e criei um ticket, via API.
O Atendente recebe, consegue se comunicar com o usuario, mas tudo que o usuário escreve não aparece para o atendente, dando o erro acima.


Bruno
  • Specialist
  • 13 de maio de 2020

Compreendo, Alecindro 🤔

O bloco de atendimento humano faz uma verificação em relação ao bloco anterior, também. Por isso está dando esse erro.

Neste caso, o que você pode fazer é:

  1. Criar um bloco que não envia nenhuma mensagem e não espera entrada do usuário
  2. Colocar o bloco de atendimento humano como condição de saída deste bloco
  3. Enviar o usuário via API para este novo bloco. Como bloco não espera mensagem do usuário, ele irá transferir automaticamente o usuário para o bloco de atendimento humano e irá funcionar.

Oi perfeito. Quase deu tudo certo. Agora, quando feito dessa forma, se o usuário não digitar nada e o atendente finalizar o atendimento, automaticamente gera um novo atendimento.
Como posso resolver isso?


Bruno
  • Specialist
  • 14 de maio de 2020

Alecindro, você está criando um ticket via API? Uma vez que você envia o usuário para este bloco anterior ao bloco de atendimento e ele envia para o atendimento, ele também já cria o ticket.


Sim estou criando o ticket via api, pois senão o usuário não cai no atendimento humano.
Já testei sem criar o ticket e criando o ticket.


Bruno
  • Specialist
  • 14 de maio de 2020

Estranho, pois não é necessário criar o ticket via API. Uma vez que ele entra no Bloco de Atendimento Humano, vindo do bloco que você o enviou, ele cria um ticket (eu acabei de realizar o processo aqui e funciona perfeitamente).

Neste caso, ou estamos deixando passar algum detalhe, ou a plataforma está com um comportamento inesperado. Qual o seu plano BLiP?


Eu sei que o plano é Enterprise. Segue imagem anexo explicando o fluxo e o problema atual.


Bruno
  • Specialist
  • 15 de maio de 2020

Seria possível abrir um chamado no seu suporte para este caso? Eles irão conseguir te ajudar te forma mais assertiva.

http://support.blip.ai/


OK. Muito Obrigado. Tendo a solução, posto aqui.


Você conseguiu achar uma solução? Estamos com o mesmo problema.


Ainda não. O suporte da Blip está atuando.


A solução para esse caso:

1 - Mudar o stateid do usuário para a caixa de atendimento (Blip Docs | API Reference) onde resource será o id da caixa de atendimento humano, por exemplo:

POST
https://http.msging.net/commands
HTTP/1.1
Content-Type:application/json
Authorization:Key {YOUR_TOKEN}
{"id":"{xxxxx}",
"to":"postmaster@msging.net",
"method":"set",
"uri":"/contexts/{identity}/stateid@{Identificador do fluxo}",
"type":"text/plain",
"resource":"id do atendimento humano"}

2 - Abrir o ticket passando o ultimo input do usuário (Blip Docs | API Reference):

POST
https://http.msging.net/commands
HTTP/1.1
Content-Type:application/jsonAuthorization:Key {YOUR_TOKEN}
{ 
 "id":"{xxxx}",
 "to":"postmaster@desk.msging.net",
 "method":"set",
 "uri":"/tickets/{identity}",
 "type":"text/plain",
 "resource":"Input do usuario"
}

3 - Setar a variavel de contexto helpDeskHasTicket :

POST
https://http.msging.net/commands
HTTP/1.1
Content-Type:application/json
Authorization:Key {YOUR_TOKEN}
{
 "id":"{xxxx}",
 "method":"set",
 "uri":"/contexts/{identity}/helpDeskHasTicket",
 "type":"text/plain",
 "resource":"true"
}

system
  • Connected
  • 19 de junho de 2020

Este tópico foi fechado automaticamente 7 dias depois da úlima resposta. Novas respostas não são mais permitidas.


Comente


Cookie Policy

We use cookies to enhance and personalize your experience. If you accept you agree to our full cookie policy. Learn more about our cookies.

 
Definições de cookies