Você está na página 1de 12

Manual de Configurao do Asterisk Como Gateway de Voz Utilizando Placa de Voz Fxo Verso: 2.

Thiago Maluf Resende Maro de 2007

Este Manual descreve um passo a passo de como configurar o Asterisk como gateway de Voz atravs de uma placa de voz fxo no projeto do fone@RNP

Sumrio 1. Instalao da Placa TDM400P ........................................................................................................... 3 2. Carga do Driver da Placa Digium ....................................................................................................... 4 3. Configurao do Canal Zap................................................................................................................ 5 4. Configurao do Canal OH323........................................................................................................... 6 5. Configurao do Plano de Numerao............................................................................................... 7 6. Passos Finais ....................................................................................................................................10

Manual de Configurao do Asterisk como gateway de voz FXO

1. Instalao da Placa TDM400P Com a mquina devidamente desligada da energia eltrica, abra o servidor Dell na qual estar sendo executado o software Asterisk como gateway de voz, efetuando assim a interligao do VoIP com a telefonia tradicional. Instale cuidadosamente a placa de voz FXO Digium TDM400P no slot pci. Ateno: No conecte o plug de fora da fonte na placa FXO. Ligue a mquina, e aps a carga do sistema operacional utilize o utilitrio lspci para verificar se a placa FXO instalada est sendo reconhecida. root@maq2:~# lspci 0000:00:00.0 Host bridge: VIA Technologies, Inc. VT8363/8365 [KT133/KM133] (rev 03) 0000:00:01.0 PCI bridge: VIA Technologies, Inc. VT8363/8365 [KT133/KM133 AGP] 0000:00:07.0 ISA bridge: VIA Technologies, Inc. VT82C686 [Apollo Super South] (rev 40) 0000:00:07.1 IDE interface: VIA Technologies, Inc. VT82C586A/B/VT82C686/A/B/VT823x/A/C PIPC Bus Master IDE (rev 06) 0000:00:07.2 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (rev 1a) 0000:00:07.3 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (rev 1a) 0000:00:07.4 Host bridge: VIA Technologies, Inc. VT82C686 [Apollo Super ACPI] (rev 40) 0000:00:07.5 Multimedia audio controller: VIA Technologies, Inc. VT82C686 AC97 Audio Controller (rev 50) 0000:00:0c.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8139/8139C/8139C+ (rev 10) 0000:00:0d.0 Network controller: Tiger Jet Network Inc. Tiger3XX Modem/ISDN interface 0000:01:00.0 VGA compatible controller: Silicon Integrated Systems [SiS] 300/305 PCI/AGP VGA Display Adapter (rev 90)0000:00:0d.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (rev 10) 0000:01:00.0 VGA compatible controller: Silicon Integrated Systems [SiS] 300/305 PCI/AGP VGA Display Adapter (rev 90)

Verifique se a placa FXO impressa no comando lspci conforme exibido acima.


Network controller: Tiger Jet Network Inc. Tiger3XX Modem/ISDN interface

Manual de Configurao do Asterisk como gateway de voz FXO

2. Carga do Driver da Placa Digium O prximo passo carregar os drivers da placa da Telefonia Digium, os drivers devem ser carregados usando o comando modprobe.

root@maq2# modprobe wctdm root@maq2# modprobe zaptel Verifique se os mdulos foram carregados atravs do comando lsmod.

root@maq2# lsmod | grep zaptel zaptel crc_ccitt 223620 5888 2 wctdm 1 zaptel,hisax

Edite o arquivo /etc/zaptel.conf para que reflita a placa Digium TDM400P com 4 mdulos FXO.

fxsks=1-4 loadzone = us defaultzone=us

Carregue a configurao especificada atravs do utilitrio ztcfg. root@maq1# ztcfg -vvvd Zaptel Configuration ====================== Channel map: Channel 01: FXS Kewlstart (Default) (Slaves: 01) Channel 02: FXS Kewlstart (Default) (Slaves: 02) Channel 03: FXS Kewlstart (Default) (Slaves: 03) Channel 04: FXS Kewlstart (Default) (Slaves: 04)

O utilitrio zttool pode ser utilizado para verificar se a placa foi identificada e configurada corretamente. Se as informaes da sua placa TDM400P aparecem na janela do aplicativo ZTTOOL, ela est configurada e funcionando corretamente.

Manual de Configurao do Asterisk como gateway de voz FXO

3. Configurao do Canal Zap Edite o arquivo /etc/asterisk/zapata.conf para refletir as interfaces instaladas no servidor e a sinalizao utilizada por essas interfaces. Como h a necessidade de identificar se a chamada que chega do PABX para uma porta FXO de um ramal interno ou de um telefone pblico, a instituio deve ter dois ramais chave. O primeiro ser utilizado para quem originar a chamada da rede pblica, e o segundo, para quem originar chamadas de ramais internos. importante que o segundo nmero seja restrito e no possa receber chamadas da rede pblica. Estes nmeros chave devem ento ser associados a ramais fsicos que sero conectados s portas FXO. Das portas FXO disponveis, normalmente 4 portas, uma parte ser reservada para receber chamadas externas, que s podero alcanar telefones IP ou ramais de outras instituies, e outra parte reservada para receber chamadas internas, que poder tambm discar para rede pblica a partir de outra instituio. Normalmente est reservada uma porta para ligaes externas e trs para as internas. Na configurao do arquivo zapata.conf, os canais associados ao primeiro nmero chave sero encaminhadas para um contexto, enquanto que os outros sero encaminhados para um contexto diferente. Desta forma, podero ser dados tratamentos diferentes s chamadas no plano de discagem. No exemplo abaixo, o contexto from-pabx ser usado para tratar chamadas originadas de ramais internos, e o contexto from-pstn para tratar das originadas da rede pblica. A menos que os ramais no PABX associados s FXO tenham restries diferentes, todos os canais devem ser associados a um nico grupo. O grupo criado ser usado para o encaminhamento de chamadas do Asterisk para o PABX. [trunkgroups] [channels] context=from-pstn signalling=fxs_ks echocancel=yes echocancelwhenbridged=yes rxgain=0.0 txgain=0.0 busydetect=yes busycount=6 group => 1 channel => 1 context=from-pabx signalling=fxs_ks echocancel=yes echocancelwhenbridged=yes rxgain=0.0 txgain=0.0 busydetect=yes busycount=6 group => 1 channel => 2-4

Manual de Configurao do Asterisk como gateway de voz FXO

4. Configurao do Canal OH323 Para que o Asterisk possa se registrar no GK da instituio necessrio inicialmente configurar o GnuGK na MAQ1. Inserir uma linha representando o Asterisk na seo RasSrv::RRQAuth do arquivo gnugk.ini, conforme apresentado abaixo. Vale lembrar que j devem existir outras linhas nesta seo, as quais devem ser mantidas. [RasSrv::RRQAuth] gw-pabxnome=sigip:xxx.xxx.xxx.xxx nome da instituio / IP

Verifique se a regra regex em [GKStatus::Auth] inclui o IP do servidor MAQ2 (mquina onde estar sendo executada o asterisk gateway de voz). Aps este passo, necessrio reiniciar o software gnugk. root@maq1# killall gnugk root@maq1# gnugk -c /etc/gnugk.ini & Aps configurado o GNUGK da MAQ1, deve ser feita a configurao do Asterisk na MAQ2, onde est instalada a placa FXO. Configurar canal oh323 atravs do arquivo /etc/asterisk/oh323.conf . Nesta configurao deve ser indicado o endereo IP do gatekeeper, no caso o IP da MAQ1, o ID do registro e os prefixos que sero registrados. Deve se ter cuidado para que o ID indicado no arquivo seja exatamente igual ao ID indicado na configurao do gatekeeper.

[general] listenAddress=xxx.xxx.xxx.xxx listenPort=1720 tcpStart=10000 tcpEnd=20000 udpStart=10000 udpEnd=20000 fastStart=yes h245Tunnelling=yes jitterMax=100 h245inSetup=yes jitterMin=20 jitterMax=100 ipTos=none outboundMax=100 inboundMax=100 simultaneousMax=100 wrapLibTraceLevel=0 libTraceLevel=0 libTraceFile=stdout gatekeeper= xxx.xxx.xxx.xxx gatekeeperTTL=600 userInputMode=STRING amaFlags=default use o IP da MAQ1 use o IP da MAQ2

Manual de Configurao do Asterisk como gateway de voz FXO

accountCode=H323 language=en musiconhold=default context=from-voip [register] alias=gw-pabxnome gwprefix=NNNN gwprefix=0XX [codecs] codec=G711U frames=20 codec=G711A frames=20 nome da instituio Prefixo do PABX Cdigo da cidade da instituio

5. Configurao do Plano de Numerao Agora que as configuraes associadas aos canais ZAP e OH323 j foram realizadas, deve ser definido o plano de numerao que ser utilizado no Asterisk. Este plano especificado no arquivo /etc/asterisk/extensions.conf. Ao configurar o seu arquivo, use o cdigo de DDD correspondente cidade da sua instituio.

[general] static=yes writeprotect=no autofallthrough=yes clearglobalvars=no priorityjumping=yes [globals] [from-voip] include => to-pabx include => to-pstn [from-pabx] include => inicial include => semum0 include => semum55 include => internacional [from-pstn] include => inicial include => comum0 include => comum55

Manual de Configurao do Asterisk como gateway de voz FXO

[inicial] exten => s,1,Answer() exten => s,n,Set(TIMEOUT(digit)=5) exten => s,n,Set(TIMEOUT(response)=45) exten => s,n,Background(ivr/bemvindo) exten => s,n,WaitExten(10) exten => t,1,Hangup() exten => i,1,Hangup() exten => h,1,Hangup() include => pbx-block include => colocalizados include => ip include => local-block [pbx-block] exten => _YYYYXXXX,1,Hangup() exten => _0DDYYYYXXXX,1,Hangup() ; YYYY => prefixo associado ao PABX ; DD => cdigo de rea da cidade

exten => _0055DDYYYYXXXX,1,Hangup() ; YYYYXXXX => YYYY[INTERVALO DE RAMAIS] ; Caso a instituio tenha vrios prefixos ; associados aos ramais, devem ser criads ; extenses especificas para estes prefixos [colocalizados] exten => _PPPPXXXX,1,Dial(OH323/${EXTEN},60,rtT) exten => _PPPPXXXX,n,Hangup() exten => _0DDPPPPXXXX,1,Dial(OH323/${EXTEN},60,rtT) exten => _0DDPPPPXXXX,n,Hangup() exten => _0055DDPPPPXXXX,1,Dial(OH323/${EXTEN},60,rtT) exten => _0055DDPPPPXXXX,n,Hangup() ; PPPPXXXX => PPPP[INTERVALO DE RAMAIS] / PPPP => Prefixo do PABX ; repetir configurao para cada instituio colocalizada [ip] exten => _1XXXXXXX,1,Dial(OH323/${EXTEN},60,rtT) exten => _1XXXXXXX,n,Hangup() exten => _0XX1XXXXXXX,1,Dial(OH323/${EXTEN},60,rtT) exten => _0XX1XXXXXXX,n,Hangup() exten => _0055XX1XXXXXXX,1,Dial(OH323/${EXTEN},60,rtT) exten => _0055XX1XXXXXXX,n,Hangup() [local-block] exten => _0DDNXXXXXXX,1,Hangup() exten => _0055DDNXXXXXXX,1,Hangup() [semum0] exten => _0XXNXXXXXXX,1,Dial(OH323/${EXTEN},60,rtT) exten => _0XXNXXXXXXX,n,Hangup()

Manual de Configurao do Asterisk como gateway de voz FXO

[comum0] exten => _0XXNXXXXXXX,1,SetVar(prefixo=${EXTEN:0:3}) exten => _0XXNXXXXXXX,n,Dial(OH323/${prefixo}1${EXTEN:3},60,rtT) exten => _0XXNXXXXXXX,n,Hangup() [internacional] exten => _00XXXXXXXXX.,1,Dial(OH323/${EXTEN},60,rtT) exten => _00XXXXXXXXX.,n,Hangup() [semum55] exten => _0055XXNXXXXXXX,1,Dial(OH323/${EXTEN},60,rtT) exten => _0055XXNXXXXXXX,n,Hangup() [comum55] exten => _0055XXNXXXXXXX,1,SetVar(prefixo=${EXTEN:0:6}) exten => _0055XXNXXXXXXX,n,Dial(OH323/${prefixo}1${EXTEN:6},60,rtT) exten => _0055XXNXXXXXXX,n,Hangup() [to-pabx] exten => _YYYYXXXX,1,Dial(ZAP/g1/${EXTEN:4},60,rtT) exten => _YYYYXXXX,n,Hangup() ; YYYYXXXX => YYYY[INTERVALO DE RAMAIS] ; YYYY => Prefixo do Ramal da instituio ; fazer isto para cada prefixo do ramal do PABX [to-pstn] exten => _0DDNXXXXXXX,1,Dial(ZAP/g1/0${EXTEN:3},60,rtT) exten => _0DDNXXXXXXX,n,Hangup() ; DD => Cdigo da cidade ; 0 => Dgito usado para pegar uma linha externa ; :3 => Exclui os 3 primeiros digitos, no caso do PABX tiver ; aceitando somente os 8 digitos do numero

Contextos definidos: From-voip trata as chamadas recebidas do canal oh323. O nome do contexto deve ser o mesmo que o definido no arquivo oh323.conf; From-pabx trata as chamadas provenientes do PABX originadas de ramais internos. O nome do contexto deve ser o mesmo que o definido no arquivo zapata.conf para os canais que recebero chamadas internas; From-pstn trata as chamadas provenientes do PABX originadas da rede pblica. O nome do contexto deve ser o mesmo que o definido no arquivo zapata.conf para os canais que recebero chamadas externas; Inicial apresenta mensagem de voz para o usurio e coleta os dgitos do telefone chamado; Pbx-block evita que o usurio disque de volta para os ramais da instituio. No faz sentido um usurio ligar para um ramal conectado ao Asterisk e discar para um ramal do PABX. Isto deve ser evitado, pois ocuparia duas linhas desnecessariamente; Colocalizados cria regras que permitem o encaminhamento das chamadas para instituies localizadas na mesma cidade que compartilham o mesmo cdigo de rea. Este contexto s deve ser definido se a instituio estiver configurada para encaminhar chamadas para a rede pblica. Caso contrrio desnecessrio. Objetiva o encaminhamento das

Manual de Configurao do Asterisk como gateway de voz FXO

chamadas para estas instituies atravs da rede IP, e no atravs da rede de telefonia pblica; IP encaminha chamadas para telefones IP, nmeros iniciados com 1, para o gatekeeper via canal oh323; Local-block no permite que chamadas originadas do PABX sejam encaminhadas para a rede pblica da cidade local, evitando a ocupao de duas linhas do PABX; To-pabx Encaminha chamadas originadas do VoIP para ramais da instituio. Ao passar a chamada para o PABX so enviados os somente os dgitos relativos ao ramal, 4 no exemplo; To-pstn - Encaminha chamadas originadas do VoIP para telefones da rede pblica. Ao passar a chamada para o PABX enviado o digito utilizado para obter uma linha externa, no exemplo o digito 0, e depois o nmero do telefone chamado retirando o cdigo de rea; Comum0 e Comum55 chamadas originadas da rede pblica, tendo como destino um telefone tradicional alcanado atravs de outra instituio, so encaminhadas para o gatekeeper atravs do canal oh323. Insere o digito 1 entre o cdigo de rea e o nmero do telefone, para que chamadas originadas da rede pblica no possam ser encaminhadas para a rede pblica; Semum0 e Semum55 chamadas originadas de ramais internos, tendo como destino um telefone tradicional alcanado atravs de outra instituio, so encaminhadas para o gatekeeper atravs do canal oh323. As chamadas podem ser encaminhadas para a rede pblica; Intercional Chamadas originas no pabx com destinos internacional.

Copie o arquivo de udio que ser tocado quando da chegada de uma chamada porta FXO de seu gateway Asterisk. Este arquivo pode ser obtido da RNP no site http://voip4ll.rnp.br usando o usurio fornecido pela RNP.

root@maq2# root@maq2# root@maq2#

mkdir

/var/lib/asterisk/sounds/ivr

cd /var/lib/asterisk/sounds/ivr cp bemvindo.gsm /var/var/lib/asterisk/sounds/ivr

6. Passos Finais Configure nas mquinas 1 e 2 para no habilitar canais no utilizados. Para isto, edite o arquivo /etc/asterisk/modules.conf conforme o quadro abaixo.

[modules] autoload=yes noload => pbx_gtkconsole.so noload => pbx_kdeconsole.so noload => app_intercom.so noload => chan_modem.so noload => chan_modem_aopen.so noload => chan_modem_bestdata.so noload => chan_phone.so

Manual de Configurao do Asterisk como gateway de voz FXO

10

noload => chan_modem_i4l.so noload => chan_unicall.so noload => chan_alsa.so noload => chan_skinny.so noload => chan_mgcp.so noload => chan_iax2.so noload => chan_oss.so noload => chan_agent.so noload => app_queue.so noload => app_enumlookup.so noload => app_voicemail.so noload => app_ices.so noload => pbx_dundi.so noload => cdr_csv.so noload => cdr_custom.so noload => cdr_manager.so noload => cdr_pgsql.so noload => pbx_ael.so [global]

Na mquina 2 apenas, adicione a linha abaixo no arquivo /etc/asterisk/modules.conf:

noload => chan_sip.so

Inicialize o Asterisk nas duas mquinas com tela de comando, e utilize o comando zap show channels para visualizar os canais configurados e o contexto associado a cada canal.

root@maq2# asterisk -vvvc ... maq2*ClI> zap show channels Chan pseudo 1 2 3 Extension Context from-pabx from-pabx from-pabx from-pabx Language MusicOnHold

Garantir que todas as interfaces FXO entregues sejam instaladas e todos os canais estejam operando.

Manual de Configurao do Asterisk como gateway de voz FXO

11

Exemplo para o primeiro canal da placa FXO depois de executar asterisk -vvvvr

maq2 *CLI> zap show channel 1 Channel: 1 File Descriptor: 9 Span: 1 Extension: Dialing: no Context: from-pstn Caller ID: Calling TON: 0 Caller ID name: Destroy: 0 InAlarm: 0 Signalling Type: FXS Kewlstart Radio: 0> Owner: <None> Real: <None> Callwait: <None> Threeway: <None> Confno: -1 Propagated Conference: -1 Real in conference: 0 DSP: no Relax DTMF: no Dialing/CallwaitCAS: 0/0 Default law: ulaw Fax Handled: no Pulse phone: no

<= 1 o nmero do canal

Echo Cancellation: 128 taps, currently OFF Actual Confinfo: Num/0, Mode/0x0000 Actual Confmute: No Hookstate (FXS only): Offhook

Deve aparecer a informao Hookstate (FXS only): Offhook, que foi mostrado em negrito no exemplo acima. Repetir este comando para todos os canais, ou seja, em zap show channel 1 no exemplo acima, alterar o nmero 1 pelo nmero do canal que ser verificado.

Manual de Configurao do Asterisk como gateway de voz FXO

12

Você também pode gostar