Elastix Brasil

  • Increase font size
  • Default font size
  • Decrease font size
Guia Rápido Instalação Placas DigiVoice no Elastix PDF Imprimir E-mail
Qua, 12 de Setembro de 2012 13:12

Wagner Barth, o coordenador do Centro de Treinamentos da DigiVoice, ultimamente fez vários testes com o Elastix e as placas deles e me enviou alguns tutoriais de instalação dos produtos da Digivoice com o Elastix.

Isto vai ajudar a todos aqueles que querem utilizar as placas da Digivoice com o Elastix, evitando que pessoas configurem de maneira errada e tenham mal funcionamento. Eles já tem diversos clientes utilizando essas placas satisfatoriamente junto ao Elastix.

Abaixo está o procedimento da instalação das placas Digivoice.


Recomendações

São necessários alguns cuidados antes para que uma instalação seja bem sucedida, como:

1. Aterramento adequado para todos equipamentos envolvidos;
2. Ambiente com climatização adequada;
3. Sinalização utilizada pela operadora -E1, FXO e/ou FXS;
4. Sinalização utilizada pelo PABX legado, caso exista;
5. Cuidado com conexões analógicas, nunca conectar uma linha de telefonia pública em uma porta FXS;

Preparando o Servidor PABX-IP Elastix

Este guia foi desenvolvido a partir das seguintes aplicações, quaisquer alterações deverão ser testadas previamente pelo usuário.
-PABX-IP Elastix versão 2.3 – 64 bits;
-LibPri versão 1.4.12

Devemos inicialmente parar o serviço de PABX-IP (Asterisk) com o comando:
# amportal stop

Deverá ser obtida a seguinte resposta:
STOPPING ASTERISK
Asterisk Stopped

Colocar o módulo tor2 na blacklist, este módulo não deve estar em uso quando utilizando placas DigiVoice.

# echo “blacklist tor2” >> /etc/modprobe.d/blacklist.conf
# echo “blacklist tor2” >> /etc/modprobe.d/dahdi.blacklist.conf

Estes comandos não retornam nenhum tipo de resposta, portanto tenha muito cuidado ao digitá-los.

Caso o blacklist não de resultado podemos remover o módulo utilizando o comando:
# rm –f /lib/modules/`uname –r`/extra/tor2.ko

Obs: Utilizar crase e não aspas simples no comando `uname`.

Instalando a(s) placa(s) DigiVoice

Desligue o servidor e insira a(s) placa(s) DigiVoice, ao reiniciar o servidor podemos verificar se a placa foi detectada corretamente com o comando:
# lspci | grep PLX

Devemos obter um retorno similar a:

04:05.0 Multimedia controller: PLX Technology, Inc. PCI9030 32-bit 33MHz PCI <-> IOBus Bridge (rev 0a)

OBS: Caso o servidor não seja inicializado corretamente apresentando a mensagem de Kernel Panic, retire a(s) placa(s) e repita novamente o blacklist do módulo tor2 e/ou a remoção do módulo.

Removendo o módulo tor2

Para remover o módulo tor2 devemos primeiro localizar o caminho onde foi instalado, para isso use o comando:
# find / -name tor2.ko

Por exemplo o caminho encontrado foi:
# /lib/modules/2.6.18-238.12.1.el5/extra/tor2.ko

Remova o módulo:
# rm –f /lib/modules/2.6.18-238.12.1.el5/extra/tor2.ko

Reinicie o servidor.

Dependências para compilação dos drivers DigiVoice

Instale o pacote ncurses:
# yum –y install ncurses-devel

Instale o pacote LibPri, este pacote é responsável pela sinalização ISDN-PRI. Neste exemplo estamos utilizando a ultima versão 1.4.X disponível no momento da criaçào deste guia, a versão libpri-1.4.12.

# cd /usr/src/
# wget http://downloads.asterisk.org/pub/telephony/libpri/libpri-1.4-current.tar.gz
# tar -zxvf libpri-1.4-current.tar.gz
# ln -s /usr/src/libpri-1.4.12/ /usr/src/libpri
# cd /usr/src/libpri
# make clean
# make
# make install

Instalando os drivers DigiVoice

Devemos parar a aplicação Asterisk para podermos instalar os drivers.
# amportal stop

Compilando e instalando o driver Voicerlib.

# cd /usr/src/
# wget http://downloads.digivoice.com.br/pub/voicerlib/linux/stable/voicerlib-4.2.4.0.tar.gz
# tar -zxvf voicerlib-4.2.4.0.tar.gz
# cd /usr/src/voicerlib-4.2.4.0
# make clean
# make
# make install
# make config

Para testar se o driver foi corretamente instalado utilize a aplicação vlib_diag digitando o comando:
# vlib_diag

Se tudo correu perfeitamente será carregada a aplicação de testes vlib_diag. Para fechar utilize a tecla q.



Compilando e instalando o DgvChannel.

O dgvchannel é o driver de canais utilizado pela aplicação Asterisk para utilizar o hardware da DigiVoice.

# cd /usr/src/
# wget http://downloads.digivoice.com.br/pub/dgvchannel/stable/dgvchannel-1.0.8.tar.gz
# tar -zxvf dgvchannel-1.0.8.tar.gz
# cd /usr/src/dgvchannel-1.0.8
# make clean
# mkdir /usr/src/asterisk
# ln -s /usr/include /usr/src/asterisk/include
# make clean
# make
# make install
# make config
# make install_config

Configurando os módulos dgvfifo e vlibd para iniciarem automáticamente. Execute o comando:
# ntsysv

Localize e marque os módulos conforme o exemplo:
[*] dgvfifo
[*] vlibd

Para servidores Elastix 64 bits é necessário copiar os módulos do asterisk, que por padrão são instalados no diretório /usr/lib/ para o diretório /usr/lib64/.

# cp /usr/lib/asterisk/modules/* /usr/lib64/asterisk/modules

Reinicie o servidor Elastix e teste se o driver DgvChannel foi instalado corretamente executando o comando dgv show version no console do Asterisk:

CLI> dgv show version

Devemos receber uma resposta similar a esta:

Channel Driver Version: 1.0.8
 VoicerLib Version.....: 4.2.4.0 (4240)
 Firmware Versions.....:
   |_ DigiVoice Card 1: 362h

Para utilizarmos os canais adicionados devemos criar troncos customizados, para isso utilize a interface web do Elastix e cadastre conforme o exemplo abaxo. Este exemplo é válido para uma placa de tronco analógica ou de E1 que esteja configurada no grupo 1 de canais (digivoice.conf).

Caminho do Elastix: PBX->PBX Configuration->Trunks->Add Custom Trunk

 

 

Comentários   

 
0 #1 Rafael Gomes 25-07-2014 15:57
Boa tarde,

Segui os procedimentos para instalação tentando instalar em um Elastix 2.4, com asterisk versão 11.10, porém o corre o erro abaixo:

./create_config.sh "/usr/src/aster isk/include" "/usr/src/libpri"
4252
Checking Asterisk version at /usr/src/asteri sk/include/aste risk... 1.4.35
* found stringfield in ast_channel
* no snmp in ast_channel
* no select.h file found
* no get fax state in ast_channel
* found 'indicate' with data
* found second extended ast_channel_all oc
* found clear flag HAS_TIMING_INFO in ast_channel
* found reverse charging detection in libpri
* found extended ast_channel_all oc
* found send_digit_end with duration
* without generic jitter-buffer patch
config.h complete.
gcc -std=gnu99 -pipe -fPIC -Wall -Wmissing-proto types -Wmissing-decla rations -I/usr/src/aste risk/include -D_REENTRANT -D_GNU_SOURCE -D__LINUX__ -DK_ECHO -c -o chan_dgv.o chan_dgv.c
chan_dgv.c:199: error: initializer element is not constant
chan_dgv.c:547: error: unknown field ‘send_digit’ specified in initializer
chan_dgv.c:547: warning: initialization from incompatible pointer type
chan_dgv.c: In function ‘fixup_pri_channel’:
chan_dgv.c:7612: warning: passing argument 1 of ‘snprintf’ discards qualifiers from pointer target type
chan_dgv.c: In function ‘dgv_new’:
chan_dgv.c:18653: warning: passing argument 1 of ‘snprintf’ discards qualifiers from pointer target type
chan_dgv.c:18767: error: ‘struct ast_channel’ has no member named ‘type’
chan_dgv.c: At top level:
chan_dgv.c:24225: warning: no previous prototype for ‘usecount’
chan_dgv.c:24233: warning: no previous prototype for ‘description’
chan_dgv.c:24241: warning: no previous prototype for ‘key’
make: ** [chan_dgv.o] Erro 1

Sabem o que pode ser?
Citar
 

Adicionar comentário


Código de segurança
Atualizar