Servidor VoIP com Slackware e Asterisk
Neste artigo veremos como criar um servidor voip e configurar os serviços básicos para distribuirmos ramais (extensions) e podermos conversar gratuitamente entre os usuários do nosso sistema.
Parte 3: Iniciando o Asterisk e cadastrando os ramais
Passo 5 - Iniciar o sistema Asterisk
Iniciar o sistema é simples, basta executar o comando:
# asterisk &
(o & serve para colocar o processo em background)
Adicione este comando no arquivo /etc/rc.d/rc.local para que ele inicie o asterisk junto com o sistema GNU/Linux.
Particularmente uso o editor de textos "vim", mas a fim de tornar o aprendizado o mais simples, vamos utilizar um editor menos complexo, no caso o "mcedit".
Para editar o arquivo:
# mcedit /etc/rc.d/rc.local
Vá até o final do arquivo inclua a seguinte linha:
asterisk &
Pressione a tecla F10 para sair e selecione a opção salvar.
Passo 6 - Criar um ramal
Para criar um ramal, primeiro é necessário decidir qual tipo de protocolo será utilizado, o IAX ou o SIP.
Um parâmetro que eu tomo particularmente como relevante na escolha do protocolo é quanto ao uso "dentro de um ambiente corporativo" e "fora de um ambiente corporativo (internet)".
Caso o uso dos ramais seja dentro da própria rede onde está o servidor voip Asterisk, sem ter de atravessar um firewall, utilizo o protocolo SIP, que possui mais funcionalidades e possui um softphone mais agradável (X-Lite) e que tem como contra a dificuldade de passar por firewall.
Caso o uso dos ramais seja fora da rede onde está o servidor, utilizo o protocolo IAX, que utiliza apenas uma porta (udp 4569), o que torna extremamente simples a passagem através do firewall, contra o IAX tem algumas dificuldades com funções mais avançadas que estão disponíveis apenas no SIP.
Para criar um ramal com o protocolo IAX, procederemos da seguinte forma.
O arquivo que editamos para incluir ramais IAX é o /etc/asterisk/iax.conf. Para editá-lo:
# mcedit /etc/asterisk/iax.conf
Dentro dele, vá até o final do arquivo e adicione as seguintes linhas:
[Número do Ramal]
callerid=Nome do Usuário
secret=Senha do Ramal
host=dynamic #(ver obs1)
type=friend #(ver obs2)
context=interno #(ver obs3)
callerid=Nome do Usuário
secret=Senha do Ramal
host=dynamic #(ver obs1)
type=friend #(ver obs2)
context=interno #(ver obs3)
OBS1: A opção "dynamic" serve para o ramal ser acessado por qualquer host (inclusive fora da rede), você pode definir o endereço IP para limitar apenas um determinado host a acessar este ramal.
OBS2: Existem três tipos de "type", são eles:
- Friend = Efetua e recebe ligações;
- Peer = Apenas faz ligações;
- User = Apenas recebe ligações.
Um exemplo de utilização seria assim:
[200]
callerid=Julio
secret=x200y300
host=dynamic
type=friend
context=interno
callerid=Julio
secret=x200y300
host=dynamic
type=friend
context=interno
Onde teríamos as seguintes especificações, o ramal 200 pertence ao usuário Julio, que está no contexto interno e se loga de qualquer host (opção dynamic) com a senha x200y300 e pode efetuar a receber ligações seguindo as restrições do seu contexto.
Feito isso você já terá um ramal criado que poderá utilizar qualquer softphone ou telefone ip que trabalhe com o protocolo IAX.
O softphone recomendado para a utilização com o protocolo IAX é o idefisk, que pode ser encontrado no site:
Para criar um ramal com o protocolo SIP, procederemos da seguinte forma.
O arquivo que editamos para incluir ramais SIP é o /etc/asterisk/sip.conf. Para editá-lo:
# mcedit /etc/asterisk/sip.conf
Os parâmetros para inclusão de ramais SIP são idênticas aos ramais IAX, mas é de grande serventia criar os ramais SIP com uma faixa de ramal diferente da faixa de ramais IAX, para que possamos configurar melhor o nosso plano de discagem, ou seja, você pode utilizar as mesmas informações mencionadas acima mudando apenas a faixa de ramais como no exemplo abaixo.
Faixa de ramais SIP:
- 200 - Recepção
- 201 - Estoque
- 202 - Administração
- 300 - Vendedor1
- 301 - Vendedor2
- 302 - Vendedor3
Parabens!!!