Pular para o conteúdo
ekovox.aiFalar com a gente

Arquitetura de integração

Discador integrado ao CRM ou discador avulso: o que muda no dia da operação

· atualizado em 27 de setembro de 2026 · 11 min de leitura

Sobre fundo navy, duas caixas separadas — CRM e discador — ligadas por uma ponte azul tracejada que se parte no meio, rotulada adaptador; abaixo, um único bloco branco escrito UMA BASE SÓ com a observação de que não há o que transportar

A pergunta chega assim: “esse discador integra com o meu CRM?”. A resposta é “sim”. E “sim” não informa nada: “integra” cobre três arranjos, e eles se comportam de maneiras muito diferentes às nove da manhã de uma segunda-feira.

A pergunta útil é de arquitetura: onde mora o dado, quem escreve a cola e quem conta o que precisa ser contado. Comparação de fornecedores está no guia dos dez discadores; as citações abaixo são documentação de plataforma e RFC. E a declaração de interesse: este site é do ekovox, um discador do terceiro arranjo.

Os três arranjos

Arranjo Onde mora o cadastro Quem leva o dado até a chamada O que quebra primeiro
Avulso, sem cola Dois lugares O operador, com os olhos e o Alt+Tab Tabulação que não volta; ligação para quem pagou
Acoplado por toolkit Dois lugares, com ponte Um adaptador JavaScript no navegador A ponte: formato de número, ordem de evento, navegador
Mesma base Um lugar Ninguém — não há transporte A telefonia; o dado não tem como divergir

O do meio é o único em que existe uma terceira coisa para manter: um adaptador que não é nem o discador nem o CRM. Antes de qualquer demonstração, peça ao fornecedor que diga em qual dos três arranjos ele está.

Os três arranjos em linhas: no avulso, duas bases separadas e um caminho tracejado que se parte no meio, feito pelo operador; no acoplado, as mesmas duas bases com um adaptador JavaScript no meio do percurso, entrando sólido e saindo tracejado; na mesma base, um único bloco e uma linha azul contínua até a chamada O trecho tracejado é onde o dado precisa ser transportado por alguém — e é exatamente onde ele some sem avisar.

O CRM entrega ganchos, não integração

O Open CTI da Salesforce é um kit JavaScript que roda o softphone do fornecedor num iframe; os métodos centrais são screenPop(), searchAndScreenPop() e getSoftphoneLayout(). O Channel Integration Framework 2.0 do Dynamics 365 segue o mesmo desenho, sobre uma “browser-based JavaScript API library”. O Calling Extensions SDK da HubSpot é o mais explícito: “if a call is initiated outside of HubSpot UI, the app should create the call engagement”.

Os três são toolkits. Alguém escreve e mantém o adaptador — e quando discador e CRM são de fornecedores diferentes, esse alguém costuma não estar em nenhum dos dois contratos.

A ficha na tela tem dois caminhos, e eles falham diferente

Caminho 1 — por número. Na integração do Genesys Cloud com Salesforce, “Salesforce searches all phone number fields for the caller ID (ANI)”. O CRM recebe o telefone e procura.

Caminho 2 — por dado anexado à chamada. O mesmo Genesys manda SF_URLPop, que abre uma página específica já preenchida, ou SF_SearchValue, que busca pelo critério que o fluxo mandou. O adaptador da Amazon Connect passa “contact attributes […] in addition to caller ID”. E o padrão aberto existe desde 2015: o RFC 7433 define o cabeçalho SIP User-to-User, que carrega “any custom information on the caller”.

O caminho 1 depende de casar telefone. O caminho 2 não. Quem promete “a ficha abre sozinha” sem dizer por qual caminho está vendendo o caminho feliz.

Dois cartões lado a lado. No caminho 1, por número, o telefone da chamada, o ANI, vai para uma busca no CRM: se casou, a ficha abre; se não casou, a ficha não abre, sem erro, sem alerta e sem log que o operador veja, e há um gatilho extra no Brasil: a base com o celular em 8 dígitos e o discador entregando 9. No caminho 2, por dado anexado, a chamada leva o dado junto: SF_URLPop e SF_SearchValue no Genesys Cloud com Salesforce, atributos de contato além do caller ID na Amazon Connect e o cabeçalho SIP User-to-User do RFC 7433, padrão aberto desde 2015; esse caminho não depende de casar telefone. Embaixo, a frase: quem promete a ficha abre sozinha sem dizer o caminho vende o caminho feliz

Os dois caminhos da ficha na tela: só o primeiro depende de casar o telefone — e, quando não casa, não dá erro.

E quando não casa, não dá erro. A HubSpot documenta: “Phone numbers must be in E.164 format. A misformatted number will silently prevent onCallerIdMatchSucceeded from firing”. Sem exceção, sem alerta, sem log que o operador veja — a ficha não abre e ele conclui que o sistema está lento.

No Brasil há um gatilho extra: a numeração móvel ganhou o nono dígito pela Resolução Anatel nº 553/2010, com a última etapa concluída em 06/11/2016, nos DDDs 41 a 46, 47 a 49 e 51 a 55. Base antiga guarda o celular com oito dígitos, o discador entrega com nove, e o casamento falha calado. O RFC 3966 já dizia por quê: número sem contexto de discagem é ambíguo por definição, não por descuido.

Não casar não dá erro. Quando o screen-pop é por telefone e o número não casa, não há exceção, nem alerta, nem log que o operador veja: a ficha não abre e ele conclui que o sistema está lento. No Brasil há um gatilho extra: base antiga com o celular em oito dígitos e discador entregando nove.

E quando a busca acha zero ou vários registros, quem decide não é o discador: o comportamento segue “the screen pop settings defined in the softphone layout in Salesforce”.

A ida: o mailing é uma cópia

A documentação da Vonix descreve a integração brasileira típica em duas etapas separadas: os eventos na PA, e “a alimentação de contatos em massa para o discador automático, geralmente realizada no servidor”. A segunda é onde o arranjo rompe, e o motivo é conceitual: o mailing é uma cópia.

Quem alimenta por arquivo ou carga em lote trabalha com uma foto da carteira: o pagamento das 10h, o acordo das 11h e o “não me ligue mais” das 11h30 não existem para o discador até a próxima carga.

Duas linhas do tempo do mesmo dia: na de cima, o CRM ao vivo com três eventos às 10h, 11h e 11h30; na de baixo, o discador com a cópia das 8h; entre elas, uma barreira tracejada onde os três eventos param, e às 14h uma chamada vermelha sai para quem pagou às 10h A idade do dado não é o intervalo entre cargas: é o tempo desde a última carga até a chamada que está saindo agora.

O modo de discagem não ajuda — preditivo, progressivo, power e preview mudam o ritmo do disparo, não a idade do dado.

A volta: tabulação sem ordem e sem unicidade

Entrega de evento não é confiável por natureza, e os fornecedores dizem isso por escrito. A Twilio avisa que “there is no guarantee” de que os status callbacks cheguem na ordem em que foram enviados. A AWS: “Connect delivers contact records at least once”, com orientação de deduplicar por ContactId. Integração sem chave de idempotência gera tabulação duplicada — e ninguém descobre pelo log, descobre pelo relatório que não fecha.

Duas faixas: o discador envia os eventos 1, 2 e 3 em ordem; o CRM recebe 2, 1, 3 e o 3 de novo, com as linhas se cruzando e as marcas fora de ordem e repetido. Ao lado, as frases dos fornecedores: there is no guarantee de ordem, da Twilio, e at least once, pelo menos uma vez, da AWS. Embaixo, dois cartões: sem chave de idempotência, o 3 repetido vira um registro a mais e a mesma tabulação é gravada duas vezes; com chave, que a AWS orienta ser o ContactId, o evento repetido é reconhecido e não vira tabulação nova. Por fim, a frase ninguém descobre pelo log, descobre pelo relatório que não fecha

Os números dos eventos são ilustração; a falta de garantia de ordem e a entrega “pelo menos uma vez” estão na documentação da Twilio e da AWS.

Há contratos de webhook bem mais enxutos que esse, e a documentação pública mostra um: a 3C Plus publica dois eventos e desliga o canal sozinha — “após 50 tentativas de envio com falha na recepção pela aplicação do cliente, o webhook passará a ser desativado automaticamente”. Pergunte ao seu fornecedor o que ele publica, porque isso varia de um para outro. Traduza a regra para o calendário: manutenção do CRM no domingo, cinquenta entregas falham, e na segunda a operação volta com o discador discando e o retorno morto — sintoma idêntico ao de “o pessoal não está tabulando”.

Dois cartões, domingo e segunda. No domingo, uma faixa de manutenção do CRM e cinquenta quadradinhos riscados, as entregas do discador falhando uma a uma, até o número 50: o webhook é desativado automaticamente, pela regra do fornecedor. Na segunda, a linha do discador discando segue contínua, com chamadas saindo, e a linha da tabulação voltando ao CRM está tracejada, com o canal desligado; o sintoma é idêntico ao de o pessoal não está tabulando. Embaixo, a frase pergunte ao seu fornecedor o que ele publica, isso varia, e a fonte: documentação pública da 3C Plus

A regra de desativação da 3C Plus no calendário: a falha acontece no domingo e só aparece na segunda, com cara de problema de equipe.

Falta o de-para: resultado de chamada e ocorrência de CRM não usam o mesmo vocabulário. Alguém traduz, e a tradução envelhece quando um dos lados cria um código.

A tela embarcada tem regras físicas

Do README do amazon-connect-streams: “the window hosting the softphone session must not be closed […] or the call will be disconnected”, e usar dois navegadores na mesma instância “is not supported”. Os domínios que inicializam a biblioteca precisam estar allowlisted e em HTTPS.

A 3C Plus expõe a tela do agente como uma URL com o token do agente, homologa só navegadores Chrome, exige HTTPS para o microfone e avisa que a interface do CRM não pode recarregar, sob pena de desconectar. Leia de novo: qualquer tela do seu CRM que faça refresh derruba a ligação em curso. Trocar o domínio do CRM quebra a telefonia sem ninguém encostar no discador. E o navegador já derrubou esse arranjo por conta própria: em fevereiro de 2020 o Chrome 80 passou a tratar cookie sem atributo como SameSite=Lax e quebrou integrações em iframe.

Os sintomas deste texto que parecem outra coisa:

  • “O sistema está lento”: pode ser o screen-pop por telefone que não casou — não dá erro, a ficha só não abre.
  • Ligação para quem pagou hoje: com mailing por carga, o pagamento não existe para o discador até a próxima carga.
  • Relatório que não fecha: pode ser evento repetido que, sem chave de idempotência, virou tabulação duplicada.
  • “O pessoal não está tabulando”: pode ser o webhook desativado depois de entregas com falha — na 3C Plus, após 50.
  • Ligação que cai sem ninguém desligar: pode ser uma tela do CRM que fez refresh, quando a interface do CRM não pode recarregar.

São quatro capacidades, não uma

Lista de logotipo não é escopo: há página de fornecedor que enfileira uma lista longa de CRMs “integrados” sem dizer, em nenhum deles, o que a integração cobre. “Integra” pode ser qualquer subconjunto disto:

Capacidade Como falha
Mailing automático Foto envelhecida: quem pagou hoje recebe ligação amanhã
Screen-pop Falha calada quando é por ANI e o número não casa
Retorno de tabulação Duplica sem idempotência; morre com o webhook desativado
Link da gravação Existe no fornecedor e não chega ao CRM

A última linha tem medida, de casa e não publicada: no repositório do nosso produto, das 16 pastas de fornecedor de discador, 14 têm código e 7 entregam a gravação — 4 sob demanda, quando o sistema pede a URL do áudio, e 3 por varredura das pendentes do dia (apuração interna de 29/08/2026). E um desses catorze tem a função de buscar o áudio pronta, sem estar ligada ao despachante que a chamaria: capacidade que existe e não é alcançável.

14das 16 pastas de fornecedor de discador no repositório do nosso produto têm códigoapuração interna de 29/08/2026, não publicada
7entregam a gravação: 4 sob demanda e 3 por varredura das pendentes do diaapuração interna de 29/08/2026, não publicada
1desses 14 tem a função de buscar o áudio pronta, sem estar ligada ao despachante que a chamariaapuração interna de 29/08/2026, não publicada

Quem conta é pergunta de arquitetura

Não encontrei norma brasileira que exija integração entre discador e CRM, nem que determine onde mora a lista de não-contato da carteira. A obrigação é de resultado — inclusive a de autenticar a chamada, já que o 0303 deixou de ser obrigatório (as regras federais estão aqui). Onde a regra mora é decisão sua, mas precisa ser um lugar.

  • Janela de horário. É lei estadual e varia; a leitura por estado está aqui. Na prática se usa o domicílio do devedor, na hora local dele — e não o fuso do call center —, então quem filtra o mailing precisa saber que horas são agora, não que horas eram na carga.
  • Tentativas por período. O art. 54-C do CDC, incluído pela Lei nº 14.181/2021, veda assediar ou pressionar o consumidor: é princípio, não número. Ainda assim alguém conta, e a conta não fecha se metade das ligações sai do discador e metade do clique no CRM.
  • Chamada curta. A cautelar da Anatel olha o percentual de chamadas muito curtas num mesmo dia, e caixa postal entra na conta; com o AMD de um lado e o relatório do outro, os números não batem. O efeito sobre o seu número e o AMD têm textos próprios.

E o discador de terceiro é operador de dados pessoais: a Lei nº 13.709/2018 trata da instrução do controlador e do registro das operações nos arts. 39 e 37 — texto que o planalto.gov.br não me deixou abrir nesta apuração. Confira na fonte oficial a redação vigente de tudo que citei nesta seção. Nada aqui é orientação jurídica.

As perguntas antes de assinar

Nenhuma é sobre preço; preço tem post próprio.

  1. O screen-pop é por telefone ou por identificador do registro? Se for por telefone, quem normaliza para E.164, e o que acontece com a base sem o nono dígito?
  2. Quem escreve o adaptador, quem mantém, e está em qual dos dois contratos?
  3. O mailing vai por carga ou por consulta ao vivo? Qual a idade máxima do dado ao discar?
  4. O retorno tem chave de idempotência? Qual campo? E evento repetido ou fora de ordem?
  5. O webhook é desativado depois de quantas falhas, e quem é avisado?
  6. O de-para de qualificações mora onde, e quem atualiza quando um lado cria um código?
  7. A tela do agente sobrevive a um refresh do CRM? E a uma troca de domínio?
  8. A gravação chega à ficha, ou só ao portal do discador?
  9. Quem conta tentativa, janela e chamada curta — de que lado?

Se mais de duas respostas forem “a gente vê na implantação”, não é integração: é um projeto de desenvolvimento sem dono, e ele reaparece no cronograma da migração.

O que não deu para confirmar

Quanto o arranjo integrado rende a mais não tem resposta publicável. Procurei ganho por screen-pop — segundos por chamada, redução de TMA — com método, amostra e fonte primária. O que existe é material de fornecedor citando “1 a 2 segundos”, sem denominador e sem quem mediu. É a lacuna mais relevante para quem precisa montar o business case; o que dá para medir na sua própria operação está no post de métricas.

A régua vale para nós: o que o ekovox responde em cada uma das nove perguntas acima ainda não está publicado num documento que você possa conferir sozinho.

Um atendimento simulado no ekovox mostra a tela de uma ligação, não as respostas às nove perguntas:

Atendimento de cobrança simulado no ekovox, com a Simmone ajudando o operador — dados fictícios. 2 min 53 s, com áudio: as vozes do negociador e da cliente são vozes humanas simuladas por IA.

Perguntas frequentes

Qual a diferença entre discador integrado ao CRM e discador avulso?

“Integra” cobre três arranjos. No avulso, o cadastro mora em dois lugares, quem leva o dado até a chamada é o operador, com os olhos e o Alt+Tab, e quebram primeiro a tabulação que não volta e a ligação para quem pagou. No acoplado por toolkit, as duas bases são ligadas por um adaptador JavaScript no navegador, e quebra primeiro essa ponte: formato de número, ordem de evento, navegador. Na mesma base, o cadastro mora num lugar só e não há transporte de dado; o que quebra primeiro é a telefonia.

Por que a ficha do cliente não abre quando a ligação chega?

Quando o screen-pop é por telefone, o CRM recebe o número e procura, e se o número não casa não dá erro: a ficha não abre e o operador conclui que o sistema está lento. A HubSpot documenta que número fora do formato E.164 impede, em silêncio, o evento de casamento do caller ID. No Brasil, base antiga com o celular em oito dígitos e discador que entrega nove produzem a mesma falha calada.

Por que o discador liga para quem já pagou?

Porque o mailing alimentado por arquivo ou carga em lote é uma cópia da carteira. O pagamento, o acordo e o pedido de não ligar feitos depois da carga não existem para o discador até a próxima. A idade do dado não é o intervalo entre cargas: é o tempo desde a última carga até a chamada que está saindo agora.

Por que a tabulação do discador chega duplicada no CRM?

Entrega de evento não é confiável por natureza. A Twilio avisa que não há garantia de que os status callbacks cheguem na ordem em que foram enviados, e a AWS entrega os registros de contato do Connect pelo menos uma vez, com orientação de deduplicar pelo ContactId. Integração sem chave de idempotência gera tabulação duplicada, e isso aparece no relatório que não fecha, não no log.

Existe lei que obrigue integrar o discador ao CRM?

Não encontrei norma brasileira que exija integração entre discador e CRM, nem que determine onde mora a lista de não-contato da carteira. A obrigação é de resultado — inclusive a de autenticar a chamada, já que o 0303 deixou de ser obrigatório —, e onde a regra mora é decisão sua, mas precisa ser um lugar só. Confira na fonte oficial a redação vigente; nada aqui é orientação jurídica.

O que perguntar ao fornecedor antes de contratar um discador integrado?

São nove perguntas, nenhuma sobre preço. Entre elas: se o screen-pop é por telefone ou por identificador do registro, quem escreve e mantém o adaptador, se o mailing vai por carga ou por consulta ao vivo, se o retorno tem chave de idempotência, depois de quantas falhas o webhook é desativado e se a gravação chega à ficha. Se mais de duas das nove respostas forem “a gente vê na implantação”, não é integração: é um projeto de desenvolvimento sem dono.

ekovox.ai

A aposta do ekovox é eliminar a integração em vez de melhorá-la: o discador roda dentro do mesmo cadastro que a operação já usa para cobrar, vender e atender, então não há mailing para copiar nem tabulação para traduzir.

A IA que negocia sozinha. E a que ajuda quem negocia.

Com os copilotos do EKOVOX — Cob-Copilot, Sales-Copilot e SAC-Copilot —, a IA escuta a ligação junto com o operador e tabula automaticamente; com a Sarah, a própria IA negocia pelo WhatsApp ou pelo telefone e manda o boleto. Por baixo, WhatsApp, LinkedIn, mensageria e um CRM inteiro — cobrança, SAC, vendas, receptivo e ativo na mesma base.

Falar com a gente