Importação de tarifação telefônia via API


O Conexa não é um software de tarifação telefônica, mas caso você tenha um tarifador ou uma central que tenha tarifação, poderemos importar os registros gerados por sua central na plataforma do Conexa.

A partir das informações recebidas, o Conexa se encarrega de identificar o cliente que efetuou a ligação e gerar as vendas das ligações. Para que o Conexa consiga identificar corretamente os clientes que efetuaram a chamada, é necessário que os ramais sejam devidamente configurados na plataforma do Conexa. Caso contrário, a ligação será importada sem nenhum cliente vinculado. Para saber mais informações sobre o Módulo Interpretador de Tarifação Telefônica clique aqui.

O Conexa possui integração com os principais tarifadores. Porém se o seu tarifador ainda não está integrado e você possui ou deseja desenvolver sua própria solução para importar as ligações do seu tarifador para o Conexa, nós disponibilizamos uma API que receberá essas informações e irá gerar automaticamente as vendas no sistema.

Importando ligações através da API do Conexa

Para utilizar a API, é obrigatório a contratação do MÓDULO INTERPRETADOR DE TARIFAÇÃO TELEFÔNICA. Além disso, para que seja possível realizar requisições para a API, você deverá gerar um token de autenticação no Conexa para o Módulo Interpretador de Tarifação Telefônica. Para saber como gerar um token clique aqui.

Os tópicos a seguir irão detalhar como é realizada uma requisição para API e qual a estrutura da resposta.

Requisição

Para o envio da requisição, é necessário que as informação da tarifação estejam codificadas em um JSON seguindo o formato descrito abaixo. É necessário também o envio de um token de autenticação para o Módulo Interpretador de Tarifação de Telefônica, emitido na plataforma do Conexa. A seguir, temos um exemplo de implementação da requisição utilizando CURL ou clique aqui para visualizar um exemplos de requisições no Postman. Também recomendamos a utilização do Postman para estudo e teste da API.

curl
-H "Content-Type: application/json"
-H "Token:token"
-X POST
-d 'data'
seusubdominio.conexa.app/index.php?r=tarifacaoAutomatica/tarifacaoTelefonia

Onde,

  • seusubdominio: Seu subdomínio de acesso ao Conexa. Por exemplo, se você acessa a URL open.conexa.app, seu subdomínio será apenas open
  • token: Token de autenticação gerado na plataforma do Conexa para o Módulo Interpretador de Tarifação de Telefônica
  • data: JSON no seguinte formato:
Chave Validação Descrição Obrigatório
src /[0-9]+/ Ramal que efetuou a ligação (1) Sim
pin /[0-9]*/ PIN do cliente que realizou a ligação (2) Não
dst /[0-9]+/ Número de destino da ligação Sim
duration (h:i:s) Duração da ligação. Ex: 00:05:24 Sim
calldate (Y-m-d h:i:s) Data e hora da ligação. Ex: 2019-10-25 14:30:25 Sim
price /[0-9]+\.[0-9]{2}/ Valor da chamada utilizando "." como separador de centavos. Ex: 0.50, 1000.00, 12.70 Sim

(1) Para saber como configurar o ramal do seu cliente do Conexa clique aqui

(2) Caso você deseje utilizar PIN para identificação da ligação, envie um e-mail para suporte@conexa.app solicitando a liberação desse recurso.

Exemplo:

[{

   "src": "5090",
   "pin": "1515",
   "dst": "75998889875",
   "duration": "00:01:25",
   "calldate": "2019-10-22 08:00:31",
   "price": "0.30"
 },
 {
   "src": "5091",
   "pin": "1515",
   "dst": "75998889875",
   "duration": "00:01:25",
   "calldate": "2019-10-22 08:00:31",
   "price": "0.30"
 }]

Resposta

Ao realizar uma requisição válida para a API, o Conexa irá responder com um JSON com informações acerca do processamento das ligações enviadas

Chave Valor Descrição
success boolean Informa se a requisição foi processada
receivedRecords int Quantidade de registros recebidos na requisição
importedRecords int Quantidade de registros importados no Conexa
duplicateRecords int Quantidade de registros já inseridos anteriormente no Conexa
errors list Lista de erros encontrados nos registros enviados no atributo data da requisição. Cada elemento dessa lista possui 2 chaves:
  • record: registro enviado na requisição
  • errors: lista de atributos do registro que possuem erro no formato "nome do atributo": "mensagem do erro"

Exemplo:

{

 "success": true,
 "receivedRecords": 3,
 "importedRecords": 2,
 "duplicateRecords": 0,
 "errors": [
   {
     "record": {
       "src": "t15",
       "dst": "75998889875",
       "calldate": "2019-10-22 08:00:31",
       "price": "0.30",
       "pin": null
     },
     "errors": {
       "src": "Campo mal formatado. Regex:/^[0-9]+$/",
       "duration": "Campo obrigatório não informado"
     }
   }
 ]

}