Como Configurar um SIP Externo no Asterisk e Roteá-lo com a Tecla 0

O Asterisk é uma solução poderosa para telefonia VoIP, permitindo a integração com provedores SIP externos para realizar chamadas. Neste guia, vamos configurar um provedor SIP externo e fazer com que, ao discar 0, a chamada saia por ele.


Configuração do sip.conf

O primeiro passo é configurar a conexão com o provedor SIP.

Abra o arquivo de configuração:

vi /etc/asterisk/sip.conf

Adicione as seguintes linhas:

[general]
externaddr=SEU_IP_PUBLICO
localnet=192.168.1.0/255.255.255.0
nat=force_rport,comedia
disallow=all
allow=ulaw

[externo]  ; Nome da conexão SIP externa
type=peer
host=IP_DO_PROVEDOR
username=SEU_USUARIO
secret=SUA_SENHA
fromuser=SEU_USUARIO
insecure=port,invite
nat=force_rport,comedia
context=from-external
disallow=all
allow=ulaw

Salve e saia do editor.


Configuração do extensions.conf

Agora, precisamos definir como as chamadas serão roteadas quando o usuário discar 0.

Abra o arquivo:

vi /etc/asterisk/extensions.conf

Adicione as seguintes regras no contexto das extensões internas:

[from-internal]
exten => _0X,1,Dial(SIP/DESTINO_DO_SIP@externo)
exten => _0X,n,Hangup()

Se quiser que, ao discar 0, o usuário tenha um tom de discagem para inserir um número manualmente:

[from-internal]
exten => _0X,1,Read(NUMERO,,10)  ; Aguarda o usuário digitar o número
exten => _0X,n,Dial(SIP/${NUMERO}@externo)
exten => _0X,n,Hangup()

Salve e feche o arquivo.


Reiniciando o Asterisk

Após configurar, aplique as mudanças:

asterisk -rx "sip reload"
asterisk -rx "dialplan reload"

Testando a Configuração

Para verificar se o provedor SIP está registrado, execute:

asterisk -rvvv
sip show peers

Se tudo estiver correto, você verá algo assim:

externo     XXX.XXX.XXX.XXX   N/A  OK (XX ms)

Agora, basta discar 0 de um ramal interno para testar a chamada.

Se houver problemas, ative o debug para analisar os pacotes SIP:

sip set debug on

Conclusão

Com essa configuração, seu Asterisk estará conectado a um provedor SIP externo e pronto para encaminhar chamadas ao pressionar 0. Essa funcionalidade é útil para facilitar o acesso a uma linha externa, agilizando a comunicação dentro da empresa.

Se você curtiu esse tutorial, compartilhe com outros sysadmins e faça um ótimo servidor asterisk! 🚀

Rolar para cima