Postagens

Mostrando postagens de Março, 2012

Monitorar um único ramal no Asterisk.

As vezes necessitamos monitorar um único ramal no Asterisk, no entanto, dependendo do tráfego do servidor, isso se torna impossível, já que fica difícil acompanhar a tela, rolando permanentemente. Para resolver esse problema, podemos usar o seguinte comando na shell do Linux:
rasterisk -vvv | grep "RAMAL" Ex.: rasterisk -vvv | grep "1700"
Neste caso iremos monitorar o ramal 1700.


Criar/ Configurar URA no SNEP

Em primeiro lugar, temos que levar em conta que não é possível criar URA diretamente na interface de gerenciamento do SNEP, ele não oferece esta funcionalidade.

A primeira coisa a fazermos é criar uma rota, onde a chamada será encaminhada para a URA. A ação a ser tomada pelo SNEP deverá ser "Desviar para Contexto", o nome do contexto fica a seu critério (desde que não seja "default"), usaremos "contexto_ura".
A URA em si, será criada num arquivo específico para customizações no SNEP (/etc/asterisk/custom/eof.conf). Vamos ao exemplo:
[contexto_ura] ;A extensão é a mesma que foi definida no campo "Destino" lá da interface do SNEP.
exten=>300,1,Background(bemvindo)  exten=>300,2,WaitExten(3)
;Opções do menu exten=>1,1,Goto(default,100,1)  ;Criar rota para a extensão 100 no SNEP. exten=>2,1,Goto(default,200,1) ;Criar rota para a extensão 200 no SNEP.

SNEP Livre - Permissão para acessar a interface web

O SNEP Livre vem por padrão, configurado para permitir o acesso somente através da rede 192.168.0.0, se a sua rede for diferente, ao tentar acessá-lo vai retornar a seguinte mensagem:

Forbidden You don't have permission to access /snep/ on this server.
Apache/2.2.9 (Debian) PHP/5.2.6-1+lenny8 with Suhosin-Patch Server at 10.68.5.98 Port 80Para resolver esse problema é só seguir os passos abaixo:
-No seu servidor, editar o arquivo /etc/apache2/sites-enabled/001-snep e na linha que iniciar com Allow from, logo após esse termo, colocar 0.0.0.0/0.0.0.0. Cuidado, pois desta forma você está liberando o acesso ao seu SNEP a partir de qualquer IP. Se quiser limitar mais pode utilizar da seguinte forma: Allow from 10.68.0.0/255.255.0.0, desta forma somente ip's 10.68.xxx.xxx podem acessar a interface web do seu SNEP.
-Após realizadas as alterações reiniciar o apache: /etc/init.d/apache2 restart

Criando uma URA no Asterisk 1.8

Exemplo de uma URA com sub-menus e sistema para controlar a quantidade de vezes que as mensagens irão tocar:

[general]

[globals]
TELEFONISTA=SIP/1584
TELEFONIA=SIP/1584
SUPORTE=SIP/1584

[default]
exten=>TELEFONISTA,1,Dial(${GLOBAL(TELEFONISTA)},30,tT)
same=>2,Hangup()

exten=>TELEFONIA,1,Dial(${GLOBAL(TELEFONIA)},30,tT)
same=>2,Hangup()

exten=>SUPORTE,1,Dial(${GLOBAL(SUPORTE),30,tT)
same=>2,Hangup()

include=>ura-manha,06:00-12:00,sun-sat,*,*            ;Inclusão dos contextos baseados em horário.
include=>ura-tarde,12:00-18:00,sun-sat,*,*
include=>ura-manha,18:00-06:00,sun-sat,*,*

[ura-manha]
exten=>1100,1,Playback(URA01)                                ;Bom Dia
exten=>1100,2,Goto(ura-welcome,bemvindo,1)

[ura-tarde]
exten=>1100,1,Playback(URA02)                                ;Boa Tarde
exten=>1100,2,Goto(ura-welcome,bemvindo,1)

[ura-noite]
exten=>1100,1,Playback(URA03)                                ;Boa Noite
exten=>1100,2,Goto(ura-welcome,bemvindo,1)

[ura-welcome]

Asterisk - bloqueio de chamadas a cobrar em rede ISDN

Uma das novidades do Asterisk 1.8 é a possibilidade de bloqueio de chamadas a cobrar diretamente no plano de discagem, através da função CHANNEL(reversecharge).
Os pré-requisitos para isso são:
Asterisk 1.8 (ou superior);
Libpri 1.4.12;
Dahdi 2.4 ou superior (não foram testadas versões anteriores).

O contexto de entrada para bloqueio das ligações a cobrar deve ser implementado da seguinte forma:
exten => _X.,1,Proceeding()
same => n,GotoIf($["${CHANNEL(reversecharge)}" = "-1"]?allow:block)
same => n(allow),Dial(SIP/${EXTEN},30,tT)
same => n(block),Hangup()

Caso não funcione, habilite o debug e verifique se aparece o seguinte:
IE 74: Reverse Charging Indication

Se não aparecer, é porque a operadora não está enviando a informação de que a chamada é a cobrar. Neste caso, não há o que fazer no Asterisk.

Asterisk - Criando um plano de discagem simples

Supondo que você tenha instalado o Asterisk conforme o tutorial  Instalar Asterisk - Básico,
vamos criar um plano de discagem simples, apenas com dois ramais SIP, onde um irá ligar
para o outro.

Todas as alterações do Asterisk são realizadas através dos arquivos de configuração do mesmo, os quais ficam no seguinte diretório: /etc/asterisk.
Lá encontramos os arquivos sip.conf e extensions.conf, alvos deste tutorial. Primeiramente vamos renomear os originais destes 2 arquivos:

mv /etc/asterisk/sip.conf /etc/asterisk/sip.conf_OLD
mv /etc/asterisk/extensions.conf /etc/asterisk/extensions.conf_OLD

E cria-los partindo do zero:
touch /etc/asterisk/sip.conf
touch /etc/asterisk/extensions.conf

Agora vamos incluir as seguintes linhas no arquivo sip.conf
[100]
type=friend
context=default
defaultuser=100
host=dynamic
secret=1234

[101]
type=friend
context=default
defaultuser=101
host=dynamic
secret=1234

Onde 100 e 101 são os nossos ramais.

Como softphone, recomendo o Zoiper, um software bem simples e que não deixa a dese…

Instalar Asterisk 1.6 - Básico

Este tutorial destina-se a mostrar o passo-a-passo para instalação do Asterisk no SO Debian 5 (Lenny).

Acesse o seu servidor Debian via SSH e execute os seguintes comandos:
cd /usr/src

wget http://downloads.asterisk.org/pub/telephony/asterisk/releases/asterisk-1.6.2.22.tar.gz

A partir deste momento já temos o pacote do Asterisk, no caso a versão 1.6.2.22. Se quiser
outra versão, é só dar uma olhada aqui: http://downloads.asterisk.org/pub/telephony/asterisk/old-releases/

Para realizarmos a instalação do Asterisk, o mesmo requer algumas dependências,
sejam elas: linux-headers-`uname -r` openssl libssl0.9.8 libssl-dev procps  bison  libtool  libedit2 libedit-dev  libeditline-dev  libeditline0  libnewt-dev  libncurses5  libncurses-dev  autoconf automake  subversion  cvs make  gcc g++  libxml2 libxml2-dev iptraf  sharutils  tcpdump nmap sox pciutils lshw openssh-server.

Para instala-las fazemos o seguinte, no shel do Linux:
apt-get install linux-headers-`uname -r` openssl libssl0.9.8 libssl-dev pro…