Introdução à Telefonia por IP utilizando Asterisk/Configurações básicas
Para configurar o Asterisk usamos os seguintes comandos:
SIP.conf
[general] ; chave onde ficam as configurações gerais de SIP
allowguest=no ; Não permitir que ramais remotos façam chamadas sem uma senha
bindport=5060 ; é a porta utilizada para que os ramais SIP possam se conectar no servidor asterisk(protocolo UDP)
bindaddr=0.0.0.0 : endereço IP para conectar-se no servidor asterisk (nesse caso qualquer ip configurado no servidor asterisk);
tcpenable=yes ; desde a versão 1.6 é possível configurar o servidor para que permita conexões TCP;
tcpbindaddr=0.0.0.0:5059 ; IP e Porta para as conexões SIP com o protocolo TCP callevents=yes ;
Quando existem eventos eles podem ser notificados no Asterisk Manager (util para programas externos tipo FOP)
context=ramais; esse é o contexto padrão caso os ramais não tenham esse parametro especificado
domain=sip.meudominio.com.br. ; é o dominio local para o servidor Asterisk
domain=192.168.0.100 ; Se queremos conectar no Asterisk usando um segundo dominio (exemplo uma rede VPN)
subscribecontext = subscribe; contexto onde configura os ramais para ativar a função subscribe do protocolo SIP
allowsubscribe=yes ; este permite que os ramais possam controlar o estado dos demais
notifyringing=yes ; notifica se a extensão está ringando as demais extensões
notifyhold=yes ; notifica se a extensão está em espera
disallow=all ; desabilita todos os codec (audio e video)
allow=ulaw ; habilita o codec ulaw como padrão para todas as extensões
allow=alaw ; igual ao anterior, mas para o codec alaw
useragent=X-Lite ; a central asterisk se apresentará com este nome. A vezes alguns proveedores não permiten conectar-se a eles se reconhecem que atrás da conexão está um servidor Asterisk. E deste modo nos apresentamos como se fosse um softphone X-Lite
realm=sip.meudominio.com ; se definirmos essa opção poderemos criar as senhas criptografadas com o protocolo MD5
t38pt_udptl=yes ; permite o uso do protocolo T38 (fax sobre IP) apenas para conexões diretas
videosupport=yes ; Para permitir video chamadas
srvlookup=yes ; permite fazer buscas de registros DNS SRV para chamadas SIP baseadas nos nomes de dominio
Registrando os provedores de chamadas
Se você utilizar linhas analógicas ou E1 não serão necessárias essas configurações. Nesse exemplo estaremos utilizando o provedor VONO. register => loginvono:senha@vono.net.br/loginvono
Nos registramos com o provedor com o usuario loginvono. senha e o dominio do provedor. Se o provedor utiliza-se de uma porta diferente da 5060 teremos que especificarna linha de registro
register => loginvono:senha@vono.net.br:5061/loginvono
Configurando as extensões
[6000] ; número do ramal
accountcode=6000 ; e o código que aparecerá nos registros de chamadas para esta extensão
language=pt-BR ; se temos instalado mais de um idioma de locução, aquí podemos definir qual o idioma usará a extensão
type=friend ; tipo de extensão. Pode ser friend, user ou peer. Friend pode fazer e receber chamadas, user apenas receber e peer apenas pode fazer (como é o caso dos provedores VoIP que usamos apenas para fazer chamadas)
secret=senha;senha da extensão para registro no Asterisk
qualify=yes ; Para saber se o tempo de resposta de uma extensão pode ser alcançada ou não
mailbox=6000@default ; é a caixa de mensagens de voz da extensão (segundo as configurações do arquivo voicemail.conf)
host=dynamic ; se extensão remota se conecta ora com um IP ora com outro
dtmfmode=rfc2833 ; é o protocolo para enviar os tons de DTMF
context=ramais; é o contexto utilizado pela extensão
canreinvite=no ; se queremos que uma conexão se conecte diretamente com outra extensão. Caso queria que o Asterisk faça a ponte então deixe com o valor no
nat=yes ; se a extensão se conecta ao servidor Asterisk por de trás de um firewall tem que usar a vlor yes
callerid=Mestre<6000> ; é o nome e o número que identifica a extensão
disallow=all ; desabilita todos os codecs
allow=gsm ; habilita o codec de audio gsm (é o primeiro a se utilizar durante uma chamada)
allow=ulaw ; habilita o codec audio ulaw
allow=alaw ; habilita o codec audio alaw
allow=g729 ; habilita o codec audio g729
allow=h263 ; habilita o codec vídeo h263
Agora um exemplo de configuração do provedor Voip
[vono] ; nome do provedor
type=friend ; para fazer e receber chamadas
username=loginvono
secret=senha
domain=vono.net.br
fromuser=loginvono
fromdomain=vono.net.br
host=vono.net.br
insecure=invite,port
qualify=no
port=5060
nat=no
disallow=all
allow=gsm
allow=g729
allow=ilbc ; altere os codecs para adequar as suas necessidades.
allow=alaw
allow=ulaw
dtmfmode=rfc2833
context=vono
reinvite=no
canreinvite=no
Cada vez que trocarmos a configuração do nosso sip.conf temos que recarregá-la. Abrimos a console do Asterisk
asterisk -rvvvvvvvvvv
e escrevemos
CLI> sip reload
Reloading SIP
Estes comandos estão disponíveis para o SIP
CLI> help sip
sip notify Send a notify packet to a SIP peer
sip prune realtime [peer|all] Prune cached Realtime users/peers
sip qualify peer Send an OPTIONS packet to a peer
sip reload Reload SIP configuration
sip set debug {on|off|ip|peer} Enable/Disable SIP debugging
sip set history {on|off} Enable/Disable SIP history
sip show {channels|subscriptio List active SIP channels or subscriptions
sip show channelstats List statistics for active SIP channels
sip show channel Show detailed SIP channel info
sip show domains List our local SIP domains
sip show history Show SIP dialog history
sip show inuse List all inuse/limits
sip show objects List all SIP object allocations
sip show peers List defined SIP peers
sip show peer Show details on specific SIP peer
sip show registry List SIP registration status
sip show sched Present a report on the status of the sched queue
sip show settings Show SIP global settings
sip show tcp List TCP Connections
sip unregister Unregister (force expiration) a SIP peer from the registry
--Joyce Oliveira 22h05min de 14 de abril de 2013 (UTC)Joyce Oliveira