APIs de Callback para receber avisos de ligações recebidas e de mudança no status de ligações realizadas
Callback de status de chamada
Esta API foi desenvolvida para:
1) Alertar o sistema do cliente sobre o STATUS de chamadas realizadas (atendeu, ocupado, desligou), sem que o sistema do cliente precise consultar de maneira proativa os servidores da Directcall.
2) Alertar o sistema do cliente sobre o STATUS de chamadas recebidas.
NOTA: Para receber estas informações em seu sistema, será necessário registrar uma URL de notificação.
Registrando um URL de notificação
|
|
---|---|
DESCRIÇÃO | Com este método, podemos registrar uma URL para receber avisos de ligações recebidas e avisos de mudança no status de ligações realizadas |
ESTRUTURA DA URL | |
VERSÃO | 1 |
MÉTODO | POST |
PARÂMETROS | access_token obrigatório Chave de acesso ao método, para saber como obter clique aqui url obrigatório (String) URL que recebera o status das chamadas pin opcional (String) Cadastra a URL para um pin especifico
format opcional Opção de retorno da API podendo ser JSON ou XML (se não informado JSON será o padrão) |
RETORNO | api Origem API que esta sendo usada modulo Módulo que está sendo chamado status Mensagem de status codigo Código de retorno - Clique aqui para listar os códigos e suas descrições code Identificador único da URL registrada
Exemplo de resposta em JSON{
"api":"sms",
"modulo":"add-callback-status-chamada",
"status":"ok",
"codigo":"001",
"msg":"URL de Callback cadastrada com sucesso.",
"code":"7cfa08f1bdc011d524d8ec8bbceb7d06df237a14"
} |
Removendo URL registrada para callback
|
|
---|---|
DESCRIÇÃO | Com este método podemos remover uma URL registrada para recebimento de callback |
ESTRUTURA DA URL | |
VERSÃO | 1 |
MÉTODO | POST |
PARÂMETROS | access_token obrigatório Chave de acesso ao método, para saber como obter clique aqui code obrigatório (String) Identificador único da URL registrada a ser removida format opcional Opção de retorno da API podendo ser JSON ou XML, se não informado JSON será o padrão |
RETORNO | api Origem API que esta sendo usada modulo Módulo que está sendo chamado status Mensagem de status codigo Código de retorno - Clique aqui para listar os códigos e suas descrições
Exemplo de resposta em JSON{
"api":"sms",
"modulo":"remove-callback",
"status":"ok",
"codigo":"001",
"msg":"URL de Callback removida com sucesso."
} |
Listando URLs registradas para callback
|
|
---|---|
DESCRIÇÃO | Com este método podemos listar todas as URL's registradas para recebimento de callback |
ESTRUTURA DA URL | |
VERSÃO | 1 |
MÉTODO | POST |
PARÂMETROS | access_token obrigatório Chave de acesso ao método, para saber como obter clique aqui |
RETORNO | api Origem API que esta sendo usada modulo Módulo que está sendo chamado status Mensagem de status codigo Código de retorno - Clique aqui para listar os códigos e suas descrições total Total de URLs cadastradas
Exemplo de resposta em JSON
{
"api": "sms",
"modulo": "list-callback",
"status": "ok",
"codigo": "001",
"msg": [ ],
"total": 1,
"rows": [
{
"code": "3c46e55e6669ec53d075bec8701745d38752a747",
"url": "https://recebimentodecallback.com.br/status"
}
]
} |
Como vou receber e quais dados vou receber pelo sistema de callback?
- Nosso sistema vai realizar um POST HTTP para a sua URL e os dados da mensagem serão encaminhados no formato JSON
Dados recebidos vindo do Callback
|
|
---|---|
DESCRIÇÃO | Dados vindo do callback |
FORMATO | x-www-form-urlencoded |
VERSÃO | 1 |
MÉTODO | POST |
PARÂMETROS | data - (O Formato do dado de retorno será sempre JSON) |
|
Exemplo de resposta JSON{
"origem": "554130160300",
"destino": "554130160300",
"uuid-origem": "0d87cc44-3142-11e5-ab4e-8326f25suj27519",
"origem-status": "ANSWERED", // CREATED | ANSWERED | DESTROYED
"destino-status": "ANSWERED",
"status-times":
{
"origem":{
"chamada": "2015-01-01 00:00:00", // Data de chamada
"atendida": "2015-01-01 00:00:00", // Data de atendida
"finalizada": "2015-01-01 00:00:00", // Data de desligamento
},
"destino":{
"chamada": "2015-01-01 00:00:00",
"atendida": "2015-01-01 00:00:00",
"finalizada": "2015-01-01 00:00:00",
}
}
}
|
Exemplo em PHP: | <?php
$dados_recebidos_directcall = json_decode($_POST['data'], true);
echo '<pre>';
print_r($dados_recebidos_directcall);
echo '</pre>';
?> |
Validade dos tokens: Os tokens de acesso têm uma validade limitada, por isso convém que o sistema criado tenha em conta estes timings para que possa desenvolver rotinas de requisação de novos tokens.