Click2Call
A API de Click2Call permite que você automatize chamadas. O sistema primeiro liga para o seu aparelho (Linha IP/Ramal) e, assim que você atende, ele disca para o número de destino externo.
URL Base
http://{IP_SERVIDOR}/api/click2call/<action>/<TOKEN>/<KEY>
| Método | Action | Descrição |
| GET | get |
Executa a chamada via parâmetros na URL (Query String). |
| POST | update |
Executa a chamada via corpo da requisição (JSON). |
Parâmetros da Requisição
| Parâmetro | Tipo | Descrição |
device_id |
int |
ID Interno da conta/linha que pagará pela chamada. |
src |
string |
Origem: O número do seu ramal ou linha IP que deve tocar primeiro. |
dst |
string |
Destino: O número externo (celular/fixo) para o qual deseja ligar. |
Detalhamento do Funcionamento Técnico (Fluxo da Chamada)
Diferente de uma ligação comum onde você disca do aparelho, aqui o servidor Voipper controla o processo através do protocolo AMI (Asterisk Manager Interface).
O processo ocorre em 3 etapas automáticas:
- Originação (Perna A): O servidor envia um comando para o Asterisk (
OriginateAction). O Asterisk liga para o ramal definido emsrc. O CallerID no visor do ramal aparecerá como:Click2Call: <destino> <origem>. - Atendimento da Origem: Quando o usuário do ramal atende o telefone, o Asterisk executa a aplicação
Dialpara o destino definido emdst. - Conexão (Perna B): O servidor completa a chamada para o número externo. Enquanto o destino não atende, o ramal ouve uma mensagem/tom de espera ("One moment please").
Variáveis de Controle enviadas ao Asterisk:
_IS_FROM_PORTAL: Identifica que a chamada não foi manual.setAccount: Define odevice_idpara garantir que a bilhetagem (tarifação) ocorra na conta correta.
Exemplos de Uso
Via GET (URL)
Útil para testes rápidos ou integrações simples em navegadores/CRMs.
Via POST (JSON)
Recomendado para integrações de backend seguras.
curl -X POST "http://seu.ip/api/click2call/update/TOKEN/KEY" \
-H "Content-Type: application/json" \
-d '{
"device_id": 123,
"src": "1001",
"dst": "011999999999"
}'
⚠️ Respostas e Erros Comuns
A API retorna um JSON indicando o sucesso ou a falha.
| Reason | Mensagem | Causa Provável |
OK |
(Nenhuma) | Sucesso. O servidor aceitou o comando e está discando. |
DEVICE_NOT_FOUND |
Linha não encontrada. | O device_id informado não existe ou não pertence ao seu usuário. |
INVALID_SRC |
Núm. origem inválido. | O parâmetro src está vazio ou contém caracteres não numéricos. |
MALFORMED_REQUEST |
Conteúdo inválido. | O JSON enviado no corpo do POST está com erro de sintaxe. |
AUTH_INVALID |
Invalid credentials. | Token ou Key da API estão incorretos ou expirados. |
Segurança e Auditoria
Toda chamada via Click2Call gera um log de auditoria no sistema contendo:
- As pontas da ligação (
srcedst). - O ID da Linha IP pagante.
- O UserAgent (IP e navegador) de quem disparou o comando de API, permitindo rastrear abusos.