Uma das reclamações mais comuns em escritórios é a incapacidade de saber se a ligação que está tocando no ramal veio de dentro da empresa (um colega da mesa ao lado) ou de fora (um cliente ou fornecedor).
Se você ainda utiliza o clássico canal chan_sip no seu Asterisk, resolver isso é muito simples: basta injetar um cabeçalho SIP chamado Alert-Info no seu dialplan antes de discar, instruindo o seu telefone IP ou ATA a tocar uma melodia específica para cada situação.
Veja como implementar isso em poucos minutos.
1. Ajustando o Dialplan (extensions.conf)
Abra o seu arquivo de plano de discagem e utilize a função SIPAddHeader para enviar o padrão de toque desejado dependendo de onde a chamada está vindo (chan_sip lida nativamente com essa injeção no pacote INVITE):
Plaintext
[contexto-externo]
; Chamadas vindas de troncos/operadoras externas
exten => _X.,1,NoOp(Chamada Externa Detectada)
; Injeta o cabeçalho SIP informando o padrão de toque externo
same => n,SIPAddHeader("Alert-Info: Bellcore-dr2")
same => n,Dial(SIP/ramal100,60)
same => n,Hangup()
[contexto-ramais]
; Chamadas entre ramais internos
exten => _1XX,1,NoOp(Chamada Interna Detectada)
; Injeta o cabeçalho SIP informando o padrão de toque interno
same => n,SIPAddHeader("Alert-Info: Bellcore-dr1")
same => n,Dial(SIP/${EXTEN},60)
same => n,Hangup()
2. Mapeando no Aparelho IP ou ATA
O Asterisk envia a informação através do chan_sip, mas o terminal físico precisa saber o que fazer com ela. Acesse a interface web do seu telefone IP ou ATA (marcas como Grandstream, Yealink e Fanvil suportam isso perfeitamente):
- Vá nas configurações de Distinctive Ringtone ou Alert-Info.
- Crie a regra de mapeamento onde:
Bellcore-dr2aciona um Toque Diferenciado (ex: toque duplo, ideal para chamadas externas).Bellcore-dr1aciona o Toque Padrão/Simples (ideal para chamadas internas entre ramais).
- Salve, aplique as configurações no aparelho e faça o teste.
Com esse ajuste rápido, seus usuários ganham contexto imediato da origem da chamada antes mesmo de tirar o fone do gancho.
