Integrando Asterisk ao PABX através de placa de fax modem

O objetivo desse tutorial é integrar seu asterisk com o PABX tradicional de sua empresa. Como é um laboratório, utilizaremos uma plaquinha de fax-modem para fazer essa integração.

[ Hits: 169.850 ]

Por: Roberto Fonseca em 21/11/2006


Configurando o hardware



Existem diversas formas da gente estar interligando uma matriz a uma filial, podemos usar troncos iax, placa fxs ligadas a troncos, placas ligadas a E1 da central, equipamentos ATA, enfim... porém optei por utilizar uma placa FXO ligada a um ramal analógico. Esse tipo de ligação é interessante, pois responde àquela pergunta "Será que minha central telefônica é compatível?".

Usando uma placa fxo, independe qual a tua central telefônica e tu fica sem precisar do cara da central telefônica para a criação de rotas. Como uma placa fxo custa uma pequena fortuna e o objetivo desse tutorial é apenas laboratório, vamos usar uma genérica (FAX MODEM). Os chipsets suportados pelo asterisk são os:
  • Intel 537PG and 537PU
  • Ambient MD3200
  • Motorola 62802

Esses fax-modems são reconhecidos como X100P clone.

Bom, chega de papo e mão na massa: coloque a fax modem no servidor e inicie-o. O driver do asterisk que controla o hardware é o zaptel. Para configuramos o asterisk para que reconheça a placa de fax modem, devemos editar o arquivo zaptel.conf.

# vi /etc/zaptel.conf

Aqui uma curiosidade, o único arquivo .conf do asterisk que não fica dentro de /etc/asterisk é o zaptel.conf.

Lá no zaptel.conf, vá até o final do arquivo e coloque as seguintes linhas:

fxsks=1
# Aqui especificamos o número de portas fxo, no caso 1. Notem que ao invés de usarmos fxoks=1 para placa fxo, usamos o contrário fxsks=1. Se tivéssemos uma placa fxs esse parâmetro ficaria fxoks=1

loadzone=us
defaultzone=us
# Aqui definimos a zona como US. Na verdade o asterisk não tem os padrões de telefonia BR para colocarmos loadzone=br, porém funciona perfeitamente especificando loadzone=us

Configurado o zaptel, vamos especificar o funcionamento da placa no arquivo zapata.conf.

Lembram no artigo Configurando a operadora Vono no Asterisk? A gente configurou os ramais a serem usados via softphone no arquivo sip.conf. Cada ramal era um ramal sip. Agora cada interface fxo dentro do asterisk deve ser configurada no arquivo zapata.conf. É dentro do zapata.conf que definimos o contexto de ligações, o nível de ruído, o volume das ligações. Seguem as linhas a serem adicionadas no final do zapata.conf

# vi /etc/asterisk/zapata.conf

signalling=fxs_ks
# tipo de interface, lembrando se estamos usando uma fxo, aqui vai fxs_ks
language=en
rxgain=0.0
txgain=0.0
# podemos aumentar ou diminuir o parâmetro do rx e do tx para resolver problema de eco. Esse parâmetro vai de -8.0 até 8.0
echocancelwhenbridged=yes
echocancel=yes
context=581
# aqui especificamos o contexto que vai entrar as regras de discagem, eu preferi por nomear o contexto pelo mesmo número do ramal analógico o qual esta ligado a fax-modem
channel => 1
# número do canal. Se tivesses por exemplo uma tdm400 com 4 fxo, para cada interface fxo eu deveria repetir as linhas acima, mudando apenas o channel. Por exemplo a fxo 1 ficaria channel =>1, a fxo 2 ficaria channel => 2.

Bom, já configuramos a nossa fxo genérica, agora vamos fazer ela subir. Seguem os comandos:

# modprobe zaptel
(carrega o driver zaptel)

# modprobe wcfxo
(carrega o driver da fxo)

# ztcfg -vv
(configura a placa, deve te jogar a seguinte mensagem na tela: Channel 01: FXS Kewlstart (Default) (Slaves: 01))

Feito isso vamos rodar o asterisk - se ele já não estiver rodando:

# asterisk -vvvvgc

Pronto, a placa já esta pronta pra uso, ou melhor quase pronta. Agora vamos configurá-la para tratar suas ligações entrantes e saintes.

Página anterior     Próxima página

Páginas do artigo
   1. Introdução
   2. Configurando o hardware
   3. Configurando o plano de discagem
Outros artigos deste autor

Configurando a operadora Vono no Asterisk

Leitura recomendada

Convertendo DVD para AVI com 2 idiomas de áudio

Gravando CDs em modo texto

DeVeDe - Produzindo discos de vídeo

Monitorando processos no Linux com o Htop

Instalando o novo Anjuta 2.2.0 no Ubuntu Feisty

  
Comentários
[1] Comentário enviado por EdDeAlmeida em 21/11/2006 - 22:59h

Muito interessante mesmo o seu artigo. Parabéns e obrigado!

[2] Comentário enviado por balani em 22/11/2006 - 08:39h

Bom artigo, parabens!!!

[3] Comentário enviado por robertofonseca em 23/11/2006 - 07:56h

Valeu!!!!

[4] Comentário enviado por xnardelli em 24/11/2006 - 19:08h

parabéns

[5] Comentário enviado por rootkit em 26/11/2006 - 06:03h

Parabéns, já vou montar um pequeno laboratório pra ligar as filiais da empresa que trabalho (uma em Angola e outra no Brasil).

[6] Comentário enviado por robertofonseca em 27/11/2006 - 08:54h

Legal cara...só tem um detalhe: qual o padrão de telefonia em Angola, para especificarmos no arquivo zaptel.conf?
Dentro de /usr/src/asterisk/zaptel-1.2 tem um arquivo zonedata.c. Dentro desse arquivo tem os padrões de telefonia suportados pelo asterisk. Dah uma lida nele e tenta comparar com o padrão usado ai na Angola.....

[7] Comentário enviado por jroliv em 29/11/2006 - 22:42h

Ei Roberto.. excelente artigo... vai me ajudar muito! Era justamente o que eu estava precisando..
um abraço!

[8] Comentário enviado por gersonraymond em 04/12/2006 - 08:29h

Parabéns, ótimo seu artigo nota 1000 para você.

[9] Comentário enviado por digicontrol em 11/12/2006 - 14:15h

como fazer para usar pelo ramal SIP a linha ligado ao fax... tipo disco 011 + numero e ele faz a ligação para a localidade na cidade usando a linha do fax modem...????

[10] Comentário enviado por robertofonseca em 11/12/2006 - 15:01h

DIGICONTROL,
Tenta assim:
No contexto do ramal sip, tu coloca assim:
EXTEN => _011XXXXXXXX,1,DIAL(ZAP/1${EXTEN},20)
ou seja, qndo teu ramal sip discar qualquer numero que inicie por 011, ele vai discar (DIAL) usando a interface da placa de rede (ZAP/1) para o numero discado no ramal sip (EXTEN) durante 20 segundos.

[11] Comentário enviado por cyrofilho em 11/12/2006 - 21:18h

Amigo, liguei a porta fxo do modem em um ramal da minha central telefonica analogica. Gostaria de poder discar de qualquer um dos ramais da central analogica, para o ramal em que o modem está conectado, e depois poder discar através de um provedor voip (tellfree por exemplo) configurado no asterisk. Como posso fazer isso, você conhece alguma documentação para este caso? Obrigado.

[12] Comentário enviado por drosenfeld em 21/12/2006 - 14:05h

Olá Roberto, veja só uma dúvida!
nesse ambiente de teste é possível o solicitante da chama(da matriz por exemplo) definir qual ramal será "tocado" (na filial) ao invés de ir direto para telefonista através da discagem do telefone alogico comum?
com ficaria?

Aguardo retorno
[]s
d2

[13] Comentário enviado por robertofonseca em 21/12/2006 - 14:27h

D2,

Dah sim,
O que tu tens que fazer é assim: na matriz, tu continua com a linha exten => s,1,Dial(SIP/[email protected],90,rT). Ou seja estaras discando para o numero vono da tua filial. Ao tocar esse numero vono da tua filial, o asterisk da filial vai começar a executar a seguinte regra:
exten => loginvonoDAFILIAL,1,Dial(Zap/1/516,20).
Nesse caso acima, qndo o numero vono da filial tocar, ele vai direcionar para o ramal analógico 516 da central telefonica. Esse 516 poderia ser qualquer ramal da tua central. O 20 refere-se ao tempo em segundos que vai tocar lá. Espero ter sido claro...
abs

roberto fonseca

[14] Comentário enviado por robertofonseca em 21/12/2006 - 14:28h

Cyrofilho

Tem sim, é o próximo tutorial que eu to acabando de escrever...aguarde para maiores esclarecimentos...

[15] Comentário enviado por gnu em 09/03/2007 - 09:04h

Olá a todos. Venho enfrentando o seguinte problema: configurei um modem motorola como placa fxo para fazer ligações locais, e quando configuro a variavel de tempo, ela simplesmente não é respeitada. Por exemplo:
exten => _.,1,Dial(zap/1/${EXTEN},20,Tt)
Na logica, deveria chamar o numero discado (qualquer que ele seja) por 20 segundos. O problema é que chama até cair.. invariavelmente, e eu já testei tudo que é tipo de configuração. Se alguem souber alguma coisa que possa me informar.. fico agradecido.. valew.

[16] Comentário enviado por efloriani em 16/03/2007 - 09:30h

Ola Amigo,

Seu artigo está ótimo.
Só fiquei em dúvida com uma coisa:

- Por que utilizar provedor de serviço vono na matriz e na filial, se posso fazer um contro AIX entre os dois asterisk?

Aguardo seu retorno,

Édwin Floriani

[17] Comentário enviado por buzaneli em 12/04/2007 - 17:03h

Olá eu estou montando um servidor asterisk, tenho a placa FXO, para fazer ligação externa, eu tenho algum gasto com a linha telefonica?

ou com essa placa a ligação da minha empresa sai na faxa?

[18] Comentário enviado por robertofonseca em 03/05/2007 - 08:40h

Buzaneli,

A placa FXO pode ter dar duas possibilidades. Saida via telefonia normal, ou saida telefonica via voip. Em ambas tu vais ter custo....a nao ser no caso da telefonia via voip tu escolhas ligar para outra empresa que tenha voip...
Na verdade são muitas as possibilidades...

SDS

Roberto Fonseca

[19] Comentário enviado por JoaoFelix em 19/01/2009 - 15:11h

Olá roberto!
Cara fiz igualzinho esta no seu tutorial. Só tem uma coisa que não esta dando certo, e o zaptel reconhecer a placa ambiente 3200, qunado rodo o comando ztcfg -vvvv ele da a seguinte mensagem:

Zaptel Version: 1.4.12.1
Echo Canceller: OSLEC
Configuration
======================

SPAN 1: CCS/HDB3 Build-out: 0 db (CSU)/0-133 feet (DSX-1)
Channel map:
Channel 01: FXS Kewlstart (Default) (Slaves: 01)
1 channels to configure.
ZT_SPANCONFIG failed on span 1: Invalid argument (22)

essa configuração do span que não estou conseguindo fazer certo no asterisk.guru diz para confegurar da seguinte forma no /etc/zaptel.conf

fxsks=1
loadzone = us
defaultzone = us
span=1,1,0,ccs,hdb3,crc4,yellow
Tem alguma dica que vc possa me dar, para conseguir integral o Asterisk com o meu PABX logico. Agradeço desde já.

[20] Comentário enviado por lothario em 18/02/2009 - 10:51h

Amigos, vcs sabem se alguma loja de informática ainda vende estes modems compatíveis com Asterisk?

[21] Comentário enviado por leandrohq em 30/11/2009 - 20:42h

eu estou tentando conectar uma interface com callback para que o pabx seja conectado a distancia e seja feito ligações atarvés dele escolhendo uma linha mais barata doque meu celular, encontrei um aparelho q faz isso, só q custa mais de R$7000,00 chamado de cell bridge, eu consegi fazendo manualmente, quando ligo a uma interface e esta chamando conecto manualmente a um ramal, então ouço o sinal do pabx podendo digitar o ramal q eu quero ou mesmo o tronco mais barato para efetuar uma nova chamada, se alguem tem alguma solução favor contatar haramaq[email protected]

obrigado

leandro

[22] Comentário enviado por removido em 14/03/2010 - 17:02h

Ola Amigo

Foi pro meu favoritos!

Abs

[23] Comentário enviado por cainf em 31/03/2011 - 18:07h

Amigo uma pergunta de quem não entende do assunto é possivel eu realizar ligações atraves da Internet ADSL para um numero fixo normal ??

Obrigado e desculpe a ignorância :)

[24] Comentário enviado por cleberjz em 09/04/2017 - 23:30h

Boa noite é possivel colocar 4 placas e usar como linhas externas mesmo (troncos)? obrigado


Contribuir com comentário