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,"
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