Importação de tarifação telefônica via API
Conexa avatar
Escrito por Conexa
Atualizado há mais de uma semana

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 [email protected] 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" } } ]

}

Isto respondeu à sua pergunta?