Skip to main content

Pessoal,


Temos um CRM para incorporadoras e alguns clientes em Comum, precisamos capturar as conversas finalizadas no Chat (Bot e Humano) para adicionar em nossos Leads ou Atendimentos.


Poderiam me auxiliar?

Quais APIs devemos consumir?


Obrigado

Gabriel

Olá @Gabriel_Manzano


Dê uma olhadinha nesses tópicos, talvez eles possam te ajudar:



  1. Atendimento humano





  1. Atendimento pelo bot




Qualquer coisa, estou a disposição 😀


Legal!


Consigo uma API para retornar os Tickets de um E-mail?


Preciso disso para retornar as mensagens de um Lead em nosso CRM;


Não entendi muito bem sua pergunta. Você quer retornar todos os tickets (Id ou histórico de mensagens?) de um usuário (email)?


Sim!

Se eu conseguir os Tickets pelo e-mail, na outra API consigo pegar as mensagens de cada um dos tickets.


Entende?


@Gabriel_Manzano, entendi! 😀


Você pode fazer um filtro, utilizando o Id do usuário, conforme abaixo:



/tickets?$filter=(CustomerIdentity%20eq%20’{{Identity}}’)



Obs.: cuidado ao copiar a Uri, pois o caractere de aspas aqui do fórum é diferente e pode dar erro na requisição 😉


Se eu tiver somente o E-mail, consigo fazer essa busca?


Vi que temos identificadores para os clientes, temos algum documento que explique como esses identificadores são construídos?


Temos uma base histórica de clientes e o Blip já em produção, não tenho esses IDs comigo.


Não, apenas com o Id mesmo (que é diferente para cada canal). Você iria precisar de duas requisições:



  1. Você faz uma requisição para a API de Contacts, e pega o Id do usuário dado o seu e-mail.

    • Dá uma olhadinha aqui, para saber como fazer isso:







  1. Com o id do usuário, você faz a requisição para a API de Tickets.


Ou, se você preferir, pode pegar esse Id no Builder. No menu de contatos, faça o filtro pelo email, abra o contato. O Id fica na Url da página, após o “/users/”.


Ex.: https://portal.blip.ai/application/detail/demobot4/users/1ee01a04-03b2-43e7-8153-6ac29bc5b81a.demobot4@0mn.io


Estou usando o:


{

“id”: “{{$guid}}”,

“method”: “get”,

“uri”: “/tickets?$filter=(CustomerIdentity=‘[email protected]’)”

}


E estou tendo um problema:


{

“method”: “get”,

“status”: “failure”,

“reason”: {

“code”: 62,

“description”: “There’s no processor available for requested resource type”

},

“id”: “0096d5e1-9bd3-4492-aeaf-4317d22e336a”,

“from”: "[email protected]/#az-iris7",

“to”: "[email protected]",

“metadata”: {

#command.uri”: “lime://[email protected]/tickets?$filter=(CustomerIdentity=‘[email protected]’)”,

“uber-trace-id”: “c6907b9ae1e2882e%3Afd3ebadd24aa78bf%3Ac6907b9ae1e2882e%3A1”

}

}


Estou fazendo algo errado?


@Gabriel_Manzano você se esqueceu do



“to”: “[email protected].net”



E confira, por favor, mas acho que você deverá usar CustomerIdentity%20eq%20’{{Identity}}’ mesmo ao invés de substituir por “=”.


Cara, deu muito certo:

Resumindo:


Acho o cliente em:



{

“id”: “{{$guid}}”,

“method”: “get”,

“uri”: “/contacts?$skip=0&$take=20&$filter=(substringof(‘[email protected]’,email))”

}



Busco os tíckets em:



{

“id”: “{{$guid}}”,

“method”: “get”,

“to”: "[email protected]",

“uri”: “/tickets?$filter=(CustomerIdentity%20eq%20’[email protected]’)”

}



E busco as mensagens em:



{

“id”: “{{$guid}}”,

“method”: “get”,

“to”: "[email protected]",

“uri”: “/tickets/ac88912a-e47f-438f-a37e-016e94d2a55c/messages”

}



Obrigado!


Comente