Criação de Ticket / Chat de forma dinâmica

Olá,

Tenho um projeto gigante integrado com o ERP Odoo para atribuição de leads para mais de 180 lojas diferentes. Alguém conhece uma maneira eficiente de “Abrir um ticket” sem que eu tenha criar diversos blocos de intereção?

Ainda não tem APIs disponíveis para a criação de Ticket / Chat, então estou buscando alternativas.

1 curtida

Olá @renanteixeira tudo bem?

Existe uma API para atribuir um agente a uma sala que está sem agente. Se servir para você, é só você abrir todas as salas a uma fila central e não definir um agente, e depois via fluxo consumir a api para atribuir associando a um e-mail:

[PATCH] https://chats-engine.weni.ai/v1/external/room_agent/<id_do_ticket>
{“agent”: “agent@company.com”}

Levei sua necessidade para nosso time de produto estudar possibilidade de melhorias pro seu caso. Hoje ainda não é possível abrir tickets via API. Caso sinta a necessidade, você também pode abrir um ticket enviando email para suporte@weni.ai e informando o impacto que essa melhoria pode ter na sua operação :+1:

1 curtida

Olá Sarah, tudo bem por aqui :smiley:
2 dúvidas

  1. Esse id_do_ticket, qual devo considerar? Tenho o UUID do ticket que obtenho pela Flows V2 e tenho o UUID da room que obtenho pela Chats Engine
  2. Fiz um teste pelo Postman, mesmo enviando PATCH, o retorno é da API é que o método GET não está autorizado…

image

  1. O uuid é esse mesmo do flows. Você também pode conseguir o uuid do ticket consumindo a api de rooms
url>
    https://chats-engine.weni.ai/v1/external/list_rooms/
headers>
    Authorization: Bearer <token>
Params>
    search: string
    is_active: boolean
  • O parametro search busca nos campos uuid do contato, nome do contato, email do agente e urn. Recomenda-se que busque pelo uuid do contato para retornar resultados exatos para o contato em questão (se buscar com o nome, ele pode retornar contatos que tenham o mesmo nome).
  • O parametro is_active vai retornar salas de acordo com o estado (true=aberta, false=fechada)
  • Sobre o token de autenticação, solicite-o enviando um email para suporte@weni.ai e informando o uuid do projeto em questão.
  1. Você está usando seu token corretamente no header? Se sim e mesmo assim não funcionar, tenta com POST ou PUT

Oiie voltei :smiley:

Já abri alguns chamados sobre esse projeto, infelizmente a resposta é sempre que ainda não tem API… Mas sigo conversando com a CS e com o time de suporte / produtos… É um projeto muito complexo.

Enfim, testando aqui a rota /room_agent fora do postman, tenho o seguinte retorno…

{"Detail":"Agent field can't be blank, the agent is needed to update the ticket"}

Estou usando o card de abrir um ticket para um setor genérico, e através das APIs, fazer a atribuição… Consegui fazer o change_topic do /ticket_actions (Flows), porém só é alterado o ticket e não a sala em si.

Captura de tela de 2024-05-13 23-16-20

Testei todas as rotas PATCH/PUT do chats-engine, utilizando o token da minha conta de usuário ou token do projeto, com algumas eu recebo o status_code 200, mas não acontece nada… Não consegui identificar quais campos são realmente obrigatórios para o body…

v1_room

Aceito sugestões, pois o projeto está em risco sem os recursos necessários.

Já tentou definir o agente nessa chamada? é o e-mail do agente que você vai usar para atribuir

Sim, estou enviando no body é a variável “data” do update_room_agent, conforme imagem room_agent

No log eu Peço o e-mail, exibo a variavel data, depois tem o código de resposta da API e o erro.