Подключение модема Huawei E1550 к FreePBX (elastix ).
Протестированно на модеме Huawei E1550 с разлоченным звонками и версией прошивки 11.608.14.15.311 СКАЧАТЬ ТУТ
А теперь перейдем к установке и настройке модема. Для нормальной работы модема отключим на нем CardReader и виртуальный CD-ROM. Сделать это можно так:
root@computer:$ sudo -i
root@computer:$ apt-get install minicom
root@computer:$ minicom -s
Выбираем настройку последовательного порта:
Нажимаем А и редактируем порт — /dev/ttyUSB0 после этого жмем два раза Enter и нажимаем Выход.
После подключения к модему введем команду — AT^U2DIAG=0 (Это команда перевода модема в режим только модем)
Выходим нажав Ctrl-A а потом Q
CardReader и виртуальный CD-ROM отключены можно продолжать.
Дальше — если нет svn то доставим
Ну а дальше непосредственно к установке chan_datacard. По чему то не захотел ставиться на elastix 2.4
Второй вариант это chan_dongle
Устанавливаем последнюю стабильную версию Dongle-1.1.r14:
Качаем, распаковываем и переходим в папку с исходниками модуля chan_dongle выполнив команды:
Если на официальном сайте отсутствует архив с дистрибутивом модуля Dongle, скачиваем его с этого сайта:
Запускаем конфигурирование, сборку и установку модуля chan_dongle командами:
Устанавливаем самую последнюю разрабатываемую версию Dongle из svn:
Задание прав и пользователя устройства (Huawei E1550)
Предположим, по умолчанию так:
А Asterisk запущен из под одноименного пользователя
в консоли увидим:
chan_dongle.c: unable to open /dev/ttyUSB1: Permission denied
создадим правило udev
Вставим в созданный файл.
Отредактируем файл конфигурации модуля модема:
root@computer:$ nano /etc/asterisk/datacard.conf
Удаляем всё после последней черты в конфиг файле и вставляем:
Создадим конфигурационный файл для входящих подключений:
Для входящих вызовов, sms и ussd запросов настроим extensions.conf:
Подробности
А теперь перейдем к установке и настройке модема. Для нормальной работы модема отключим на нем CardReader и виртуальный CD-ROM. Сделать это можно так:
root@computer:$ sudo -i
root@computer:$ apt-get install minicom
root@computer:$ minicom -s
Выбираем настройку последовательного порта:
Нажимаем А и редактируем порт — /dev/ttyUSB0 после этого жмем два раза Enter и нажимаем Выход.
После подключения к модему введем команду — AT^U2DIAG=0 (Это команда перевода модема в режим только модем)
Выходим нажав Ctrl-A а потом Q
CardReader и виртуальный CD-ROM отключены можно продолжать.
Дальше — если нет svn то доставим
# yum install mod_dav_svn mod_ssl
Ну а дальше непосредственно к установке chan_datacard. По чему то не захотел ставиться на elastix 2.4
# svn co http://www.makhutov.org/svn/chan_datacard/trunk/ chan_datacard
# cd ~/chan_datacard/
# ./configure
# make install
# cp ~/chan_datacard/etc/datacard.conf /etc/asterisk
Второй вариант это chan_dongle
Устанавливаем последнюю стабильную версию Dongle-1.1.r14:
Качаем, распаковываем и переходим в папку с исходниками модуля chan_dongle выполнив команды:
wget http://asterisk-chan-dongle.googlecode.com/files/chan_dongle-1.1.r14.tgz
tar xvfz chan_dongle-1.1.r14.tgz
cd chan_dongle-1.1.r14
Если на официальном сайте отсутствует архив с дистрибутивом модуля Dongle, скачиваем его с этого сайта:
wget http://softnastroy.com/downloads/asterisk/chan_dongle-1.1.r14.tgz
tar xvfz chan_dongle-1.1.r14.tgz
cd chan_dongle-1.1.r14
Запускаем конфигурирование, сборку и установку модуля chan_dongle командами:
./configure
make
cp chan_dongle.so /usr/lib/asterisk/modules/
cp etc/dongle.conf /etc/asterisk/
Устанавливаем самую последнюю разрабатываемую версию Dongle из svn:
aptitude install autoconf
cd /usr/src/asterisk-src/
svn checkout http://asterisk-chan-dongle.googlecode.com/svn/trunk/
cd trunk/
aclocal
autoconf
automake -a
./configure
make
cp chan_dongle.so /usr/lib/asterisk/modules/
cp etc/dongle.conf /etc/asterisk/
chown -R asterisk:asterisk /usr/lib/asterisk/modules/chan_dongle.so
/etc/init.d/asterisk restart
Задание прав и пользователя устройства (Huawei E1550)
Предположим, по умолчанию так:
# ls -al /dev | grep ttyS
crw-rw---- 1 root dialout 4, 64 Сен 23 15:14 ttyUSB0
crw-rw---- 1 root dialout 4, 65 Сен 23 15:14 ttyUSB1
crw-rw---- 1 root dialout 4, 66 Сен 23 15:14 ttyUSB2
А Asterisk запущен из под одноименного пользователя
в консоли увидим:
chan_dongle.c: unable to open /dev/ttyUSB1: Permission denied
создадим правило udev
nano /etc/udev/rules.d/e1550.rules
Вставим в созданный файл.
KERNEL=="ttyUSB[012]", OWNER="asterisk", GROUP="asterisk", MODE="0660"
# /sbin/start_udev
# ls =al /dev | grep ttyUSB
crw-rw-- 1 asterisk asterisk 4, 64 Сен 23 15:25 ttyUSB0
crw-rw-- 1 asterisk asterisk 4, 65 Сен 23 15:25 ttyUSB1
crw-rw-- 1 asterisk asterisk 4, 66 Сен 23 15:25 ttyUSB2
Отредактируем файл конфигурации модуля модема:
root@computer:$ nano /etc/asterisk/datacard.conf
Удаляем всё после последней черты в конфиг файле и вставляем:
[ВАШ НОМЕР СИМ КАРТЫ]
context=from-gsm ; context для входящих звонков
audio=/dev/ttyUSB1 ; tty порт для аудио подключения
data=/dev/ttyUSB2 ; tty порт для управляющих AT комманд модема
group=1 ; Группа вызова
rxgain=10 ; Изменение громкости динамика
txgain=-5 ; Изменение громкости микрофона
resetdatacard=yes ; Перезагрузка модема при перезапуске модуля
autodeletesms=yes ; Удаление смс с симкарты при перезапуске
usecallingpres=yes ; use the caller ID presentation or not
callingpres=allowed_passed_screen ; set caller ID presentation
Создадим конфигурационный файл для входящих подключений:
Для входящих вызовов, sms и ussd запросов настроим extensions.conf:
[datacard-incoming]
exten => sms,1,Verbose(Incoming SMS from ${CALLERID(num)} ${SMS})
exten => sms,n,System(echo '${STRFTIME(${EPOCH},,%Y-%m-%d %H:%M:%S)} - ${DATACARD} - ${CALLERID(num)}: ${SMS}' >> /var/log/asterisk/sms.txt)
exten => sms,n,Hangup()
exten => ussd,1,Verbose(Incoming USSD: ${USSD})
exten => ussd,n,System(echo '${STRFTIME(${EPOCH},,%Y-%m-%d %H:%M:%S)} - ${DATACARD}: ${USSD}' >> /var/log/asterisk/ussd.txt)
exten => ussd,n,Hangup()
exten => s,1,Dial(SIP/100,,)
exten => s,n,Hangup()