Настройка chan_dongle
В статье описана настройка chan_dongle — модуля для работы с 3g модемами. Установить пакет chan_dongle Если все прошло корректно, Далее необходимо установить usb-modeswitch Для установки требуемых пакетов usb_modeswitch usb_modeswitch-data ввести команду(должен быть установлен репозиторий epel-release): Если USB модем подключен, он должен отображаться: lsusb Если не установлен lsusb: 12d1 означает производитель (huawei) 1436 означает устройство (в […]
В статье описана настройка chan_dongle — модуля для работы с 3g модемами.
Установить пакет chan_dongle
git clone https://github.com/wdoekes/asterisk-chan-dongle.git
cd asterisk-chan-dongle/
./bootstrap
./configure --with-astversion=13.28.1 #если установлена другая версия астериск-отредактировать
make
make install
cp ./etc/dongle.conf /etc/asterisk/
Если все прошло корректно,

Далее необходимо установить usb-modeswitch
Для установки требуемых пакетов usb_modeswitch usb_modeswitch-data ввести команду(должен быть установлен репозиторий epel-release):
yum install usb_modeswitch*

Если USB модем подключен, он должен отображаться:
ls -la /dev | grep ttyUSB

lsusb
Если не установлен lsusb:
yum install usbutils

12d1 означает производитель (huawei)
1436 означает устройство (в д.сл. — E173)
Модем должен быть в состоянии «только модем».
Для смена режима работы 3g модема E173 необходимо выполнить следующую команду:
usb_modeswitch -v 0x12d1 -p 0x1436 -H -s -M "55534243123456780000000000000011060000000000000000000000000000"
Общий вид:
usb_modeswitch -v DefaultVendor -p DefaultProduct -V TargetVendor -P TargetProduct -M "сообщение"
DefaultVendor и DefaultProduct — параметры, определенные с помощью АТ команд в режиме «составное устройство»;
TargetVendor и TargetProduct — параметры, определенные с помощью АТ команд в режиме «только модем»;
Сообщение — передающийся в модем параметр для измененния режима работы.
Необходимую строку инициализации usb_modeswitch можно найти здесь.
Для различных модемов используемые АТ команды будут различаться, что необходимо уточнить в документации.

При возникновении ошибок, например «No devices in default mode found” необходимо проверить подключение к модему

Если при установке по умолчанию не создаются локфайлы в /var/lock/ и в консоли asterisk есть ошибки

То необходимо создать скрипт, который меняет владельца /var/lock/ и добавить его в автозагрузку
nano /etc/asterisk/lockfs.sh
#!/bin/bash
chown asterisk:asterisk /var/lock/
chmod 755 /etc/asterisk/lockfs.sh
Создадим сервис
nano /etc/systemd/system/donglepermis.service
[Unit]
Description=Chan_dongle permission service
After=network.target
[Service]
Type=simple
ExecStart=/etc/asterisk/lockfs.sh
TimeoutStartSec=0
[Install]
WantedBy=default.target

Добавление в автозагрузку
systemctl daemon-reload
systemctl enable donglepermis.service
Добавление пользователя asterisk в dialout,audio
usermod -a -G dialout,audio asterisk

Для проверки отображения 3G модема в консоли Астериск необходимо набрать
dongle show devices

Дальше открываем для редактирования конфигурационный файл /etc/asterisk/dongle.conf
nano /etc/asterisk/dongle.conf
В котором необходимо прописать параметры:
в [general]
interval — кол-во секунд между попытками подключения к устройствам
в [defaults]
context (контекст, куда попадают входящие вызовы)
rxgain — увеличение громкости входящих; допускаются отрицательные значения
txgain — увеличение громкости исходящих; допускаются отрицательные значения
usecallingpres — использование АОН (yes/no.)
callwaiting — разрешение/отключение ожидающих вызовов, значения yes/no.
dtmf – контроль обнаружения входящего DTMF. Значения — off(выключено), inband(обнаружение тонов DTMF), по умолчанию — relax(как и inband, но с возможностью relaxdtmf).
А также указать IMEI и IMSI. Если указан только IMEI – линия будет привязана только к модему. Только IMSI – только к sim карте.

Добавляем модуль в автозагрузку. Для этого в /etc/asterisk/modules.conf необходимо ввести соответствующую запись.
echo "load => chan_dongle.so" >> /etc/asterisk/modules.conf
После установки/настройки chan_dongle, также, необходимо добавить правила в маршрутизацию вызовов.
(при использовании freePBX — /etc/asterisk/extensions_custom.conf)
nano /etc/asterisk/extensions.conf
[outgoing]
;диалплан для исходящих вызовов(напр. вызов на номера +7XXXXXXXX через устройство dongle0)
exten => _+7XXXXXXXX.,1,Dial(Dongle/dongle0/${EXTEN})
exten => h,1,Hangup()
[incoming]
;диалплан для поступивших входящих вызовов(напр. - все звонки на доб. 111)
exten => s,n,Dial(SIP/111)
exten => h,1,Hangup()
;диалплан для входящих sms, напр. указываем файл для записи входящих sms
exten => sms,1,System(echo '${STRFTIME(${EPOCH},,%Y-%m-%d %H:%M:%S)} — ${DONGLENAME} от ${CALLERID(num)} Текст: ${BASE64_DECODE(${SMS_BASE64})}' >> /var/log/asterisk/sms.txt)
exten => sms,n,Hangup()
;диалплан для входящих ussd, напр., указываем файл для записи входящих ussd
exten => ussd,1,System(echo '${STRFTIME(${EPOCH},,%Y-%m-%d %H:%M:%S)} — ${DONGLENAME} Запрос: ${BASE64_DECODE(${USSD_BASE64})}' >> /var/log/asterisk/ussd.txt)
exten => ussd,n,Hangup()
Для применения сделанных изменений необходимо зайти в консоль астериск и набрать(не прерывает текущие звонки):
sip reload
dialplan reload
dongle reload now

Остались вопросы?
Я - Кондрашин Игорь, менеджер компании Voxlink. Хотите уточнить детали или готовы оставить заявку? Укажите номер телефона, я перезвоню в течение 3-х секунд.
категории
- DECT
- Linux
- Вспомогательный софт при работе с Asterisk
- Интеграция с CRM и другими системами
- Интеграция с другими АТС
- Использование Elastix
- Использование FreePBX
- Книга
- Мониторинг и траблшутинг
- Настройка Asterisk
- Настройка IP-телефонов
- Настройка VoIP-оборудования
- Новости и Статьи
- Подключение операторов связи
- Разработка под Asterisk
- Установка Asterisk
VoIP оборудование
ближайшие курсы
10 доводов в пользу Asterisk
Распространяется бесплатно.
Asterisk – программное обеспечение с открытым исходным кодом, распространяется по лицензии GPL. Следовательно, установив один раз Asterisk вам не придется дополнительно платить за новых абонентов, подключение новых транков, расширение функционала и прочие лицензии. Это приближает стоимость владения станцией к нулю.
Безопасен в использовании.
Любое программное обеспечение может стать объектом интереса злоумышленников, в том числе телефонная станция. Однако, сам Asterisk, а также операционная система, на которой он работает, дают множество инструментов защиты от любых атак. При грамотной настройке безопасности у злоумышленников нет никаких шансов попасть на станцию.
Надежен в эксплуатации.
Время работы серверов некоторых наших клиентов исчисляется годами. Это значит, что Asterisk работает несколько лет, ему не требуются никакие перезагрузки или принудительные отключения. А еще это говорит о том, что в районе отличная ситуация с электроэнергией, но это уже не заслуга Asterisk.
Гибкий в настройке.
Зачастую возможности Asterisk ограничивает только фантазия пользователя. Ни один конструктор шаблонов не сравнится с Asterisk по гибкости настройки. Это позволяет решать с помощью Asterisk любые бизнес задачи, даже те, в которых выбор в его пользу не кажется изначально очевидным.
Имеет огромный функционал.
Во многом именно Asterisk показал какой должна быть современная телефонная станция. За многие годы развития функциональность Asterisk расширилась, а все основные возможности по-прежнему доступны бесплатно сразу после установки.
Интегрируется с любыми системами.
То, что Asterisk не умеет сам, он позволяет реализовать за счет интеграции. Это могут быть интеграции с коммерческими телефонными станциями, CRM, ERP системами, биллингом, сервисами колл-трекинга, колл-бэка и модулями статистики и аналитики.
Позволяет телефонизировать офис за считанные часы.
В нашей практике были проекты, реализованные за один рабочий день. Это значит, что утром к нам обращался клиент, а уже через несколько часов он пользовался новой IP-АТС. Безусловно, такая скорость редкость, ведь АТС – инструмент зарабатывания денег для многих компаний и спешка во внедрении не уместна. Но в случае острой необходимости Asterisk готов к быстрому старту.
Отличная масштабируемость.
Очень утомительно постоянно возвращаться к одному и тому же вопросу. Такое часто бывает в случае некачественного исполнения работ или выбора заведомо неподходящего бизнес-решения. С Asterisk точно не будет такой проблемы! Телефонная станция, построенная на Asterisk может быть масштабируема до немыслимых размеров. Главное – правильно подобрать оборудование.
Повышает управляемость бизнеса.
Asterisk дает не просто набор полезных функций, он повышает управляемость организации, качества и комфортности управления, а также увеличивает прозрачность бизнеса для руководства. Достичь этого можно, например, за счет автоматизации отчетов, подключения бота в Telegram, санкционированного доступа к станции из любой точки мира.
Снижает расходы на связь.
Связь между внутренними абонентами IP-АТС бесплатна всегда, независимо от их географического расположения. Также к Asterisk можно подключить любых операторов телефонии, в том числе GSM сим-карты и настроить маршрутизацию вызовов по наиболее выгодному тарифу. Всё это позволяет экономить с первых минут пользования станцией.
Можно ли подключить два usb модема таким образом? Хотелось бы принимать звонки с двух gsm линий. Буду признателен за ответ!
Да, можно.
Максимально сколько USB модемов можно подключить к одному компьютеру?
Теоритически — много.