Instalação chan_dongle asterisk 11

INSTALANDO O COMANDO lspci e lsusb NO CENTOS (REDHAT)
yum install pciutils usbutils

Com o comando abaixo verificaremos se o servidor e sistema operacional reconheceu o dispositivo:

Duas necessidades:
1 – Desabilitar autorom, cdrom, sdstorage do Minimodem com os programas que encontram-se ao final do post
2 – Desabilitar o suporte a usb storage no Sistema Operacional (Exemplo CentOS):
modprobe -r usb_storage
touch /etc/modprobe.d/no-usb
mv /lib/modules/$(uname -r)/kernel/drivers/usb/storage/usb-storage.ko /root
reboot

[root@]# lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 002 Device 013: ID 0403:6001 Future Technology Devices International, Ltd FT232 USB-Serial (UART) IC
Bus 002 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 002 Device 004: ID 12d1:1001 Huawei Technologies Co., Ltd. E169/E620/E800 HSDPA Modem

Instalação do utilitário de modens:
Verificar (uname -m) se seu sistema operacional é 32bits (i686 – x86_64) ou 64bits (amd64).


[root@localhost ~]# yum search libusb

#Para 32bits:
[root@localhost ~]#  yum install libusb.i686
[root@localhost ~]#  yum install libusb-devel.i686 

#Para 64bits:
[root@localhost ~]#  yum install libusb1-devel.x86_64  libusb.x86_64 libusb1.x86_64
[root@localhost ~]#  yum install libusb-devel.x86_64 


CHAN_DONGLE - ONLY asterisk11.zip
ln -s /local_arquivos_compilados/"asterisk-11-.25.2" /usr/srv/asterisk

yum install unzip
yum install automake

Instalação chan_dongle asterisk 11

Baixar o source: https://github.com/jstasiak/asterisk-chan-dongle/archive/asterisk11.zip

Descompactar ZIP

gzip -d file.gz
unzip asterisk11.zip

Descompactar e proceder abaixo:

2.1) Descompactar os sources:
tar xzvf package.tgz
2.2) Entrar no diretorio criado
2.3) Configurar o tipo de instalação
–> simples:
./configure
–> personalizada: explicite set install directory for module
./configure DESTDIR=”/usr/lib/asterisk/modules”
Pode ativar o debug –> ./configure –enable-debug
(no centOs 64bits tive que personalizar este caminho para /usr/lib64/asterisk/modules/)
2.4) Build
make
2.5) Instalação
make install

Copiar o arquivo de exemplo /asterisk/asterisk-chan-dongle-asterisk11/etc/dongle.conf /etc/asterisk/

Entre no asterisk e carregue o modulo manualmente. Provavelmente dará um erro de MSI pois o imei e dados que constam no arquivo dongle.conf estão com os dados incorretos. Será necessário realizar a inclusão manualmente dos dados corretos.


CLI>module load chan_dongle.so
CLI>module unload chan_dongle.so
CLI>module reload chan_dongle.so

#  No meu caso o arquivo dongle.conf ficou: 

[root@localhost ~]# cat /etc/asterisk/dongle.conf

[general]
 interval=15
[defaults]
 context=interface-celular      
 group=0                        
 rxgain=0                       
 txgain=0                       
 autodeletesms=yes              
 resetdongle=yes                
 u2diag=-1                      
 usecallingpres=yes 
 callingpres=allowed_passed_screen 
 disablesms=no              
 language=pt_BR               
 smsaspdu=yes                 
 mindtmfgap=45                
 mindtmfduration=80           
 mindtmfinterval=200          
 callwaiting=auto 
 initstate=start  
 exten=+1234567890
 dtmf=relax 

[dongle0]
 audio=/dev/ttyUSB1 
 data=/dev/ttyUSB2   
 group=1
 imei=359806032983112
 imsi=123456789013312

[dongle1]
 audio=/dev/ttyUSB4
 data=/dev/ttyUSB5
 group=1
 imei=354112037073122
 imsi=724317620391711

Programas para mini modem: —> https://www.dc-unlocker.com/downloads

—> Baixar essa imagem e renomear para .exe

———————————————————————-

Mais documentação: http://wiki.e1550.mobi/

Obs: Mudanças do original. Patch https://github.com/jstasiak/asterisk-chan-dongle/commit/3485ac50c337bb0f70d68f2fa4d62ea3beee568a

comandos AT:

AT^CVOICE=0 Enable Voice
AT^CVOICE=1 Disable Voice
AT^CVOICE=? Check status
=========
AT^U2DIAG=0 – switch the device in modem mode only
AT^U2DIAG=1 – device in modem mode + CD-ROM
AT^U2DIAG=255 – modem mode + CD-ROM + Card Reader
AT^U2DIAG=256 – modem mode + Card Reader

ATI
AT^U2DIAG?
AT+GMR
AT!IGVER?
AT^HVER
AT!UDINFO?
AT^CARDLOCK?
AT^CVOICE?
AT+CGMR

CLI Asterisk para adicionar a identificação do número ao dongle:

localhost*CLI> dongle cmd dongle0 AT+CPBS=\"ON\"
localhost*CLI> dongle cmd dongle0 AT+CPBW=1,\"+552184357785\",145

Para que sempre que reiniciar o servidor ou trocar de porta USB os chips permanecem no mesmo contexto/perfil eh necessario a introducao do IMEI e IMSI e remocao dos /dev/ttyUSB
Exemplo:


/etc/asterisk/dongle.conf

[chip-oi]
imei=354712124354566
imsi=724312230293733

Detalhe importante para recebimento de UUSD, tive que recompilar com make e make install após alteraçao do arquivo:


vim /usr/src/asterisk-chan-dongle-asterisk11/at_response.c


        // FIXME: strictly check USSD encoding and detect encoding
        if ((dcs == 0 || dcs == 1 || dcs == 15) && !pvt->cusd_use_ucs2_decoding)

Adicione o dcs == 1 como acima aproximadamente na linha: 1350

Asterisk Manager: comandos
Chan_dongle pode fornecer os seguintes comandos Manager:

DongleShowDevices
DongleSendUSSD
DongleSendSMS
DongleSendPDU
DongleSetCCWA
DongleReset
DongleRestart
DongleStop
DongleStart
DongleRemove
DongleReload
Asterisk Manager: eventos
Chan_dongle pode fornecer os seguintes eventos no Manager:

DongleDeviceEntry
DongleShowDevicesComplete
DongleUSSDStatus
DongleSMSStatus
DongleNewCUSD
DongleNewUSSD
DongleNewUSSDBase64
DongleCEND
DongleCallStateChange
DongleStatus
DongleNewCMGR
DongleNewSMS
DongleNewSMSBase64
DonglePortFail
Enviar comandos AT pela Console CLI
Você pode enviar comandos AT para qualquer modem usando

CLI: dongle cmd
Alguns comandos AT util:

Comando AT Descrição
AT+CCWA=0,0,1 Desabilita chamada em espera
AT+CFUN=1,1 Reinicializa modem
AT^CARDLOCK=”" Envia o código de desbloqueio
AT^SYSCFG=13,0,3FFFFFFF,0,3 Modem só em 2G, busca frequência automática, não roaming
AT^SYSCFG=2,0,3FFFFFFF,2,4 Todas as frequências
AT^SYSCFG=13,1,3FFFFFFF,2,4 Só 2G
AT^SYSCFG=14,2,3FFFFFFF,2,4 Só 3G
AT^SYSCFG=2,1,3FFFFFFF,2,4 2G preferido
AT^SYSCFG=2,2,3FFFFFFF,2,4 3G preferido
AT^U2DIAG=0 Habilita função só modem
ATI Visualiza informações relevantes do modem
ATZ Reset configurações do modem
AT+CIMI Visualiza IMSI
AT+CLCK="SC",0,"" Desabilita verifica PIN

https://code.google.com/p/asterisk-chan-dongle/issues/detail?id=98
https://code.google.com/p/asterisk-chan-dongle/issues/attachmentText?id=98&aid=980000000&name=chan_dongle-7bit-fix.patch&token=ABZ6GAe818KOfnLuWEWMddG9THdCE-PDOA%3A1450970504790

-----------------------------------------------------------------------------------------

Chan_Dongle:-
Chan_Dongle is asterisk's huawei 3g dongle channel driver use for GSM Trunk and GSM gateway and also use for SMS sending receiving, USSD sending receiving, DTMF sending receiving.

Asterisk 11 Chan_Dongle Installation:-

1) cd /usr/src
2) wget https://github.com/jstasiak/asterisk-chan-dongle/archive/asterisk11.zip
3) unzip asterisk11.zip
4) cd asterisk-chan-dongle-asterisk11
5) aclocal
6) autoconf
7) automake -a
8) ./configure
9) make & make install
10) cp etc/dongle.conf /etc/asterisk/
11) chmod -R 0777 /etc/asterisk

Load Chan_Dongle Module:-

1) open asterisk console (asterisk -rvvvvvvvv)
2) module load chan_dongle.so

Deixe um comentário