Pular para o conteúdo principal

Integrações de áudio

Uma integração de áudio conecta uma plataforma onde suas chamadas são geradas ou armazenadas com o AuditorIA, para que as gravações entrem sem precisar enviá-las manualmente. Cada integração é um ponto de entrada: deixa o áudio dentro do AuditorIA e, a partir daí, o app o processa com seu fluxo normal (transcrição, análise e auditoria).

As origens de áudio são escolhidas em cada campanha, na aba Origens de Áudio. Esta página explica como conectar cada origem externa. Para o mapa geral da campanha, veja Configuração de campanhas.

O que uma integração faz e o que não faz

Nenhuma integração audita sozinha. Ela apenas faz o áudio entrar no AuditorIA. Uma vez dentro, o caso segue o mesmo percurso que qualquer outro: aparece nas tarefas, é transcrito e fica pronto para auditar.

O endereço do webhook é o da sua instalação

As integrações por webhook (como a Anura) enviam os dados pela internet ao endereço público do seu próprio AuditorIA. O endpoint que você carrega na Anura é https://<seu-dominio-de-auditoria>/webhook/anura/, onde o domínio é o da sua instalação. Você não precisa adivinhar: o AuditorIA mostra o endpoint exato na tela da Anura (passo 1), pronto para copiar. Uma instalação em localhost não pode receber esses webhooks: a plataforma externa precisa de um endereço acessível pela internet.


Anura

Conecte seu PBX na nuvem Anura para que cada chamada finalizada com gravação entre automaticamente no AuditorIA e fique pronta para auditar.

Como funciona

Quando uma chamada termina na Anura, a Anura envia um aviso (webhook) ao AuditorIA com os dados da chamada e o link da gravação. O AuditorIA valida a chave de acesso, identifica o operador, baixa a gravação, cria a tarefa e a processa. Você não precisa enviar nada manualmente.

Antes de começar

  • Uma campanha de chamadas criada no AuditorIA. Você vai precisar do identificador dela (campaign_id). Veja Configuração de campanhas.
  • Uma planilha de qualidade associada a essa campanha, para poder auditar depois. Veja Planilhas de qualidade.
  • Uma API Key do AuditorIA (a chave que autentica o aviso da Anura).
  • Acesso à configuração de Eventos / Webhooks na sua conta da Anura.
  • A URL pública do seu AuditorIA (veja o aviso sobre o endereço do webhook).

Passo 1 - No AuditorIA: marcar a Anura como origem

  1. No menu lateral, abra Campanhas > Configuração de campanhas > Chamadas. Você verá a lista de campanhas: escolha a que quer integrar com a Anura.

Lista de campanhas em Configuração de campanhas

  1. Abra a campanha (se for nova, salve-a primeiro: a origem se configura sobre uma campanha já salva) e entre na aba Origens de Áudio.

Campanha aberta com suas abas de configuração

  1. Escolha Anura e salve.

Aba Origens de Áudio com a Anura selecionada

Ao escolher a Anura, o AuditorIA mostra um guia com o endpoint, os cabeçalhos e as regras. Use-o como referência enquanto configura o evento na Anura.

Guia de configuração da Anura dentro do AuditorIA

Passo 2 - No AuditorIA: criar a API Key

  1. Abra Configurações > API Keys (/dashboard/settings/api-keys).
  2. Gere uma API Key e copie. Você vai usá-la como cabeçalho X-API-Key ao configurar a Anura.
informação

Guarde a API Key em um lugar seguro ao criá-la. É a credencial que autentica os avisos da Anura no seu AuditorIA.

Passo 3 - Na Anura: criar o evento

Na sua conta da Anura, crie um evento que avise o AuditorIA quando a chamada termina.

  1. Entre no painel da Anura.

Painel principal da Anura

  1. Abra Configuração > Eventos.

Menu da Anura: acesso a Eventos

  1. Use Adicionar para criar um evento novo.

Lista de eventos na Anura com o botão Adicionar

O evento tem três abas: Requisição, Cabeçalhos e Corpo. Preencha as três.

Requisição

Define para onde e como o aviso é enviado.

CampoValor
ProtocoloHTTPS
Hosto domínio público do seu AuditorIA
Porta443
Rota/webhook/anura/
MétodoPOST
Tipo de conteúdoapplication/json
AutorizaçãoSem autorização (a chave vai nos Cabeçalhos)

Aba Requisição do evento na Anura

O host é o da sua instalação

O host é o domínio público da sua instalação do AuditorIA. Não adivinhe: na tela de Origens de Áudio > Anura (passo 1) está o endpoint exato, pronto para copiar. Uma instalação em localhost não funciona, porque a Anura precisa alcançá-la pela internet.

Cabeçalhos

Adicione, como pares Chave / Valor, os cabeçalhos do aviso:

  • X-API-Key: a API Key que você criou no passo 2.
  • Content-Type: application/json.

Aba Cabeçalhos do evento na Anura com X-API-Key e Content-Type

Corpo

O Corpo é o JSON que a Anura vai enviar em cada chamada. Monta-se assim:

  • as chaves são os campos que o AuditorIA precisa;
  • os valores são as variáveis da Anura {{ ... }}, que a Anura substitui pelos dados reais ao enviar;
  • campaign_id não é uma variável: é o número da sua campanha no AuditorIA. Você o vê no cabeçalho da campanha como ID da campanha #N, e vai sem aspas.

Não inclua os campos automáticos: cdrid é gerado pelo AuditorIA se não vier, e hooktrigger assume END por padrão (além disso, seu evento já dispara somente em END).

Cole este JSON no Corpo e substitua <ID_DA_SUA_CAMPANHA> pelo número da sua campanha:

{
"dialtime": "{{ dialtime }}",
"direction": "{{ direction }}",
"calling": "{{ calling }}",
"called": "{{ called }}",
"status": "{{ status }}",
"duration": "{{ duration }}",
"billseconds": "{{ billseconds }}",
"wasrecorded": "{{ wasrecorded }}",
"audio_file_mp3": "{{ audio_file_mp3 }}",
"accountname": "{{ accountname }}",
"accountextension": "{{ accountextension }}",
"queueagentname": "{{ queueagentname }}",
"answerterminal": "{{ answerterminal }}",
"campaign_id": <ID_DA_SUA_CAMPANHA>
}

Aba Corpo do evento na Anura com o JSON colado

O que cada campo significa:

CampoPara que serve
dialtimeData e hora da chamada.
directionEntrante (inbound) ou sainte (outbound).
calling / calledNúmeros de origem e destino.
statusEstado final da chamada.
durationDuração em segundos.
billsecondsSegundos faturados.
wasrecordedDeve ser true.
audio_file_mp3URL pública e acessível da gravação.
accountnameNome da conta/agente. Em chamadas saintes o AuditorIA o usa como operador.
accountextensionRamal da conta.
queueagentname / answerterminalNome do agente em chamadas entrantes. O AuditorIA o usa como operador.
campaign_idNúmero da campanha no AuditorIA (não é uma variável).
O operador depende da direção da chamada

O AuditorIA identifica o operador pelo nome: em chamadas saintes usa accountname; em entrantes usa queueagentname (ou answerterminal). Por isso convém incluir os três. Tem que ser o nome do agente, não um ramal. Confirme na Anura o nome exato de cada variável.

Se faltar algum dos campos da tabela, a Anura ainda envia o aviso, mas o AuditorIA o rejeita.

A Anura também oferece muitas outras variáveis (por exemplo callingname, calledname, dados de fila ou accounttags). Você pode adicioná-las ao Corpo se as quiser para seus próprios registros, mas são opcionais: hoje o AuditorIA não as usa, então, para que a chamada seja processada, bastam os campos da tabela.

As variáveis {{ ... }} que você vê no JSON são oferecidas pela Anura. O AuditorIA as lista no guia de Origens de Áudio > Anura, em duas colunas: à esquerda o campo (a chave do JSON) e à direita a variável (o valor). Não é uma aba nem um formulário separado: é uma referência das variáveis que existem, para você usá-las dentro do Corpo. Por exemplo, accountname -> {{ accountname }} significa que no Corpo vai "accountname": "{{ accountname }}".

Lista de variáveis da Anura usadas como valores no Corpo

Exemplo do JSON já completo que a Anura envia

aviso

Só são processados eventos END com gravação. Se wasrecorded não for true ou audio_file_mp3 não estiver acessível, nenhuma tarefa é criada.

Com isso a integração fica pronta

Salve o evento. Não há passos adicionais: a partir da próxima chamada finalizada com gravação, a Anura avisa o AuditorIA e a chamada entra sozinha no fluxo. A Anura não tem botão de teste, então, para confirmar, faça uma chamada real (curta, com gravação) e verifique se aparece nas tarefas da campanha.

O que acontece depois

Quando tudo está configurado, cada chamada finalizada com gravação:

  1. Chega ao AuditorIA, que valida a API Key.
  2. Identifica o operador pelo nome. Se esse operador ainda não existir, ele o cria.
  3. Baixa a gravação e cria a tarefa.
  4. Entra no fluxo normal: aparece em Buscar e trabalhar com tarefas, é transcrita e fica pronta para revisar e auditar.

Notas importantes

  • Operador pelo nome: se o nome do agente na Anura não coincidir com um operador existente, o AuditorIA cria um novo. Para evitar operadores duplicados, use os mesmos nomes que você já tem cadastrados. Veja Gerenciar operadores locais.
  • Campanha correta: se campaign_id não coincidir com uma campanha real, a chamada pode não ser associada à campanha esperada.
  • Apenas END com gravação: os demais eventos são recebidos mas não geram tarefas.

Problemas frequentes

  • Nenhuma chamada entra: verifique que o evento seja END, que a gravação esteja ativada, que audio_file_mp3 seja acessível e que a URL e os cabeçalhos estejam corretos.
  • O aviso é rejeitado (não autorizado): a X-API-Key está faltando ou incorreta.
  • A chamada entra em outra campanha ou sem o operador correto: verifique campaign_id e o nome do agente.

Outras origens

O guia detalhado das demais origens está em preparação. Enquanto isso, você pode selecioná-las na aba Origens de Áudio da campanha:

  • Interno: áudios enviados manualmente ou pela API interna. Veja Enviar áudio.
  • Net2Phone: sincronização de gravações por webhook.
  • Servidor SFTP: sincronização a partir de um servidor remoto.
  • API Externa: integração genérica com terceiros pela API do AuditorIA.
  • Neotel: ingestão nativa (SQL Server + FTP).