Escolar Documentos
Profissional Documentos
Cultura Documentos
Asterisk
VoIP
em casa
istemas VoIP possibilitam estabelecer ligaes de udio bastante rpidas pela Internet, alm
de outras vantagens. Por exemplo, a
qualidade da voz costuma ser melhor
que a de linhas convencionais (apesar
de boatos que armam o contrrio) e
ligaes internacionais no tm custo
adicional. S esses motivos j seriam
sucientes para justicar pelo menos
uma olhada nessa tecnologia.
Obviamente, para usar a Internet
como uma plataforma telefnica, no
basta simplesmente puxar o gancho e
comear a falar. preciso primeiro se
registrar em um provedor de servios
VoIP. Uma lista de provedores pode ser
encontrada em [1]. Ao assinar um plano
VoIP, possvel usar o login fornecido
para usar a conexo com a Internet
para se logar no respectivo servidor
SIP (Session Initiation Protocol). SIP
hoje um dos principais protocolos VoIP,
junto com o H.323. Aps completar essa
etapa, voc tambm vai precisar de um
aparelho de telefone VoIP ou de um softphone (telefone via software) instalado
em um computador com placa de som
e microfone (ou um headset).
Atualmente, um dos sistemas VoIP mais
conhecidos e usados por prossionais da
24
maro 2006
Mo na massa
A diculdade para se congurar esse sistema varia. Quanto mais complicada for
a aplicao, obviamente mais difcil ser
edio 18
www.linuxmagazine.com.br
Asterisk
Capa
Instalao
Seo geral
Identique-se
sip.conf
maro 2006
www.linuxmagazine.com.br
edio 18
25
Capa
Asterisk
Acrescentando telefones
Criando um dialplan
ligaes externas, quanto locais; e direciona a ligao para a rede local ou para
a Internet. A sintaxe :
exten => numero_chamado,prioridade,ao
Default
A primeira coisa que temos a fazer
criar uma seo [default]. Ela ser
usada para manipular ligaes no denidas. Teoricamente, voc pode dividir
o extensions.conf em quantas sees
quiser, mas limitaremos isso para manter o arquivo simples.
A primeira parte da seo [default]
genrica e obrigatria. Ela contm o chamado echo test, necessrio para se checar
a conexo entre o Asterisk e o telefone:
[default]
exten => 600,1,Playback(demo-echotest)
exten => 600,2,Echo
exten => 600,3,Playback(demo-echodone)
exten => 600,4,Goto(s,6)
26
maro 2006
edio 18
www.linuxmagazine.com.br
Asterisk
Capa
Esse comando menos complicado que o 0 foi usado para se obter linha.
do que parece. _0. signica que isso A expresso @ProvedorVoIP especica
ser feito com todas as ligaes que co- o provedor VoIP para onde a chamada
meam com 0. 1 indica a prioridade ser direcionada.
(1 nesse caso, j que h pouco o que
Voc pode repetir isso para quanse fazer com uma ligao para fora, a tos provedores desejar. Mas use nno ser direcion-la para fora).
meros diferentes para se obter linha
Dial(SIP/${EXTEN:1}@ProvedorVoIP) externa, de acordo com cada proespecica que o comando de discagem vedor. E insira o nome do provedor,
interno do Asterisk deve ser usado. SIP de acordo com o nome especicado
informa que o protocolo SIP deve ser para ele em sip.conf.
utilizado para fazer a chamada. A barra
(/) separa o protocolo do nmero a ser
discado. Nesse caso, ele est na varivel Se voc iniciar o Asterisk agora, vai
${EXTEN}. O :1 remove o primeiro dgito
poder fazer ligaes, mas no receber.
do conjunto de nmeros a ser discado, j Esse o obstculo nal. Nas linhas do
Telefonemas de fora
nonumber
[general]
port = 5060
bindaddr = 0.0.0.0
disallow=all
allow=ulaw
allow=alaw
maxexpirey=3600
defaultexpirey=120
context=default
language=pt (br)
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
type=peer
secret=SENHA
username=5552XXX
host=provedorexemplo.com.br
fromuser=5552XXX
fromdomain=provedorexemplo.com.br
insecure=very
[2000]
type=friend
secret=Senha
mailbox=100
canreinvite=yes
context=default
insecure=very
host=dynamic
maro 2006
www.linuxmagazine.com.br
edio 18
27
Capa
Iniciando o Asterisk
Como estamos nos baseando na distribuio Debian, ainda h uma etapa aqui.
O pacote .deb do Asterisk no permite
que voc rode o programa logo aps a
instalao. Para mudar esse comportamento, preciso abrir o arquivo /etc/
default/asterisk e mudar o valor no
de RUNASTERISK= para yes. A sim ser
possvel iniciar o Asterisk com o comando /etc/init.d/asterisk start.
Asterisk
Listagem 2: extensions.conf
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
nonumber
[general]
static=yes
writeprotect=no
[default]
exten => 600,1,Playback(demo-echotest)
exten => 600,2,Echo
exten => 600,3,Playback(demo-echodone)
exten => 600,4,Goto(s,6)
exten => 2999,1,Ringing
exten => 2999,2,VoicemailMain,s2000
exten => _0.,1,Dial(SIP/${EXTEN:1}<\@>provedorexemplo)
exten
exten
exten
exten
=>
=>
=>
=>
5552XXX,1,Dial(SIP/2000,15,tTr)
5552XXX,2,VoiceMail,u2000
5552XXX,102,VoiceMail,b2000
5552XXX,103,Hangup
Convenincia
O Asterisk tem uma secretria eletrnica
virtual 100% funcional, que precisa ser
habilitada para cada telefone/usurio. O
programa adicional addmailbox ajuda muito nessa tarefa. Apenas guarde o nome de
usurio para quem voc quer adicionar a
secretria (em nosso exemplo, 2000).
Em nosso sip.conf, associamos a caixa de mensagens (mailbox) 100 para o
usurio 2000. Como root, digite addmailbox no terminal. Se o programa perguntar sobre o contexto (context), digite
default. Quando for solicitado o nmero
da mailbox, digite 100. Esse script se
encarrega do resto, congurando todos
os arquivos necessrios.
Caixa postal
28
maro 2006
edio 18
www.linuxmagazine.com.br
Informaes
[1] Lista de provedores:
www.teleco.com.br/voip.asp
[2] Asterisk: www.asterisk.org
[3] SoX: sox.sourceforge.net
[4] Comunidade Asterisk Brasil:
www.asteriskbrasil.org