Проблема с одновременной работой двух модемов E173
Добавлено: 08 апр 2013, 10:35
Здравствуйте.
Есть Ubuntu 12.04.2 LTS (Linux 3.2.0-33-generic-pae #52-Ubuntu) и Asterisk 1.8.10.1~dfsg-1ubuntu1, взятый из репы.
chan_dongle: Huawei 3G Dongle Channel Driver, Version 1.1, Revision 14
Включаю первый модем
dongle.conf
=========================
=========================
В extension.conf для него такое
=========================
в default секции
Для обработки входящих
=========================
В таком виде все работает успешно и на вход, и на выход
Далее подключаю точно такой же E173 модем, но с симкой Киевстара, повторяя все настройки как для МТС, а именно:
dongle.conf
=========================
=========================
В extension.conf для него такое
=========================
в default секции
Для обработки входящих
=========================
И тут начинаются проблемы.
При звонке на любую из симок или при звонке с любой из симок, происходит звонок, беру трубку, первых 1 иногда 2 секунды слышим друг друга, а потом тишина. Причем звонок все еще идет.
При максимальной вербозности, в логе нет ничего. Процесс asterisk начинает кушать 60% CPU. Как только я вынимаю из ЮСБ-порта тот модем, на который не было совершено звонка, все начинает работать.
При этом загрузка ЦП падает до штатного режима и в логе вижу
Spawn extension (dongle-incoming-mts, +380НОМЕР_СИМКИ_МТС, 2) exited non-zero on 'Dongle/donglemts-0100000001
Звонок в этом случае как раз был совершен на МТС, а вынимал модем с Киевстаром.
Для интереса даже не клал трубку при появлении проблемы, т.е. была обоюдная тишина.
Как только вынимал модем, звонок продолжался успешно и оба друг друга слышат успешно.
Что уже проделал?
1. Менял симки, не помогло
2. Выставлял AT^U2DIAG=256 и AT^U2DIAG=0 на обоих модемах, не помогло
3. В dongle.conf прописывал порты в явном виде, не полагаясь на обнаружение по IMEI, не помогло
Друзья, подскажите, пожалуйста, куда копать.
Спасибо
Есть Ubuntu 12.04.2 LTS (Linux 3.2.0-33-generic-pae #52-Ubuntu) и Asterisk 1.8.10.1~dfsg-1ubuntu1, взятый из репы.
chan_dongle: Huawei 3G Dongle Channel Driver, Version 1.1, Revision 14
Включаю первый модем
dongle.conf
=========================
Код: Выделить всё
[general]
interval=15
[defaults]
resetdongle=yes
u2diag=0
language=ru
[donglemts]
;audio=/dev/ttyUSB4
;data=/dev/ttyUSB5
imei=355.......
context=dongle-incoming-mts
group=0
rxgain=0
txgain=0
resetdongle=yes
autodeletesms=yes
u2diag=0
usecallingpres=yes
callingpres=allowed_passed_screen
В extension.conf для него такое
=========================
в default секции
Код: Выделить всё
exten => _+38050XXXXXXX,1,Dial(dongle/donglemts/${EXTEN},120,KT)
exten => _+38066XXXXXXX,1,Dial(dongle/donglemts/${EXTEN},120,KT)
exten => _+38095XXXXXXX,1,Dial(dongle/donglemts/${EXTEN},120,KT)
exten => _+38099XXXXXXX,1,Dial(dongle/donglemts/${EXTEN},120,KT)
exten => _050XXXXXXX,1,Dial(dongle/donglemts/${EXTEN},120,KT)
exten => _066XXXXXXX,1,Dial(dongle/donglemts/${EXTEN},120,KT)
exten => _095XXXXXXX,1,Dial(dongle/donglemts/${EXTEN},120,KT)
exten => _099XXXXXXX,1,Dial(dongle/donglemts/${EXTEN},120,KT)
Код: Выделить всё
[dongle-incoming-mts-sms]
exten => sms,1,Noop(Incoming SMS from ${CALLERID(num)} ${BASE64_DECODE(${SMS_BASE64})})
exten => sms,n,System(echo '${STRFTIME(${EPOCH},,%Y-%m-%d %H:%M:%S)} — ${DONGLENAME} — ${CALLERID(num)}: ${BASE64_DECODE(${SMS_BASE64})}' >> /var/log/asterisk/mts/sms.txt)
exten => sms,n,Hangup()
[dongle-incoming-mts-ussd]
exten => ussd,1,Noop(Incoming USSD: ${BASE64_DECODE(${USSD_BASE64})})
exten => ussd,n,System(echo '${STRFTIME(${EPOCH},,%Y-%m-%d %H:%M:%S)} — ${DONGLENAME}: ${BASE64_DECODE(${USSD_BASE64})}' >> /var/log/asterisk/mts/ussd.txt)
exten => ussd,n,Hangup()
[dongle-incoming-mts]
include => dongle-incoming-mts-sms
include => dongle-incoming-mts-ussd
exten => +380НОМЕР_СИМКИ_МТС,1,Set(CALLERID(all)=${CALLERID(num):3})
exten => +380НОМЕР_СИМКИ_МТС,n,Dial(SIP/1001,60,KTt)
exten => +380НОМЕР_СИМКИ_МТС,n,Dial(SIP/1002,60,KTt)
exten => +380НОМЕР_СИМКИ_МТС,n,Dial(SIP/1003,60,KTt)
exten => +380НОМЕР_СИМКИ_МТС,n,Hangup()
В таком виде все работает успешно и на вход, и на выход
Далее подключаю точно такой же E173 модем, но с симкой Киевстара, повторяя все настройки как для МТС, а именно:
dongle.conf
=========================
Код: Выделить всё
[dongleks]
;audio=/dev/ttyUSB1
;data=/dev/ttyUSB2
imei=863XXXXXXXXX
context=dongle-incoming-ks
group=0
rxgain=0
txgain=0
resetdongle=yes
autodeletesms=yes
u2diag=0
usecallingpres=yes
В extension.conf для него такое
=========================
в default секции
Код: Выделить всё
exten => _+38067XXXXXXX,1,Dial(dongle/dongleks/${EXTEN},120,KT)
exten => _+38097XXXXXXX,1,Dial(dongle/dongleks/${EXTEN},120,KT)
exten => _+38098XXXXXXX,1,Dial(dongle/dongleks/${EXTEN},120,KT)
exten => _+38068XXXXXXX,1,Dial(dongle/dongleks/${EXTEN},120,KT)
exten => _067XXXXXXX,1,Dial(dongle/dongleks/${EXTEN},120,KT)
exten => _097XXXXXXX,1,Dial(dongle/dongleks/${EXTEN},120,KT)
exten => _098XXXXXXX,1,Dial(dongle/dongleks/${EXTEN},120,KT)
exten => _068XXXXXXX,1,Dial(dongle/dongleks/${EXTEN},120,KT)
Код: Выделить всё
[dongle-incoming-ks-sms]
exten => sms,1,Noop(Incoming SMS from ${CALLERID(num)} ${BASE64_DECODE(${SMS_BASE64})})
exten => sms,n,System(echo '${STRFTIME(${EPOCH},,%Y-%m-%d %H:%M:%S)} — ${DONGLENAME} — ${CALLERID(num)}: ${BASE64_DECODE(${SMS_BASE64})}' >> /var/log/asterisk/ks/sms.txt)
exten => sms,n,Hangup()
[dongle-incoming-ks-ussd]
exten => ussd,1,Noop(Incoming USSD: ${BASE64_DECODE(${USSD_BASE64})})
exten => ussd,n,System(echo '${STRFTIME(${EPOCH},,%Y-%m-%d %H:%M:%S)} — ${DONGLENAME}: ${BASE64_DECODE(${USSD_BASE64})}' >> /var/log/asterisk/ks/ussd.txt)
exten => ussd,n,Hangup()
[dongle-incoming-ks]
include => dongle-incoming-ks-sms
include => dongle-incoming-ks-ussd
exten => +38068НОМЕР_СИМКИ_КС,1,Set(CALLERID(all)=${CALLERID(num):3})
exten => +38068НОМЕР_СИМКИ_КС,n,Dial(SIP/1001,60,KTt)
exten => +38068НОМЕР_СИМКИ_КС,n,Dial(SIP/1002,60,KTt)
exten => +38068НОМЕР_СИМКИ_КС,n,Dial(SIP/1003,60,KTt)
exten => +38068НОМЕР_СИМКИ_КС,n,Hangup()
И тут начинаются проблемы.
При звонке на любую из симок или при звонке с любой из симок, происходит звонок, беру трубку, первых 1 иногда 2 секунды слышим друг друга, а потом тишина. Причем звонок все еще идет.
При максимальной вербозности, в логе нет ничего. Процесс asterisk начинает кушать 60% CPU. Как только я вынимаю из ЮСБ-порта тот модем, на который не было совершено звонка, все начинает работать.
При этом загрузка ЦП падает до штатного режима и в логе вижу
Spawn extension (dongle-incoming-mts, +380НОМЕР_СИМКИ_МТС, 2) exited non-zero on 'Dongle/donglemts-0100000001
Звонок в этом случае как раз был совершен на МТС, а вынимал модем с Киевстаром.
Для интереса даже не клал трубку при появлении проблемы, т.е. была обоюдная тишина.
Как только вынимал модем, звонок продолжался успешно и оба друг друга слышат успешно.
Что уже проделал?
1. Менял симки, не помогло
2. Выставлял AT^U2DIAG=256 и AT^U2DIAG=0 на обоих модемах, не помогло
3. В dongle.conf прописывал порты в явном виде, не полагаясь на обнаружение по IMEI, не помогло
Друзья, подскажите, пожалуйста, куда копать.
Спасибо