Asterisk на роутере, или бюджетный Voip Gsm шлюз
Многие из нас имеют в быту замечательные WIFI роутеры ASUS.
В данной статье речь пойдет о варианте применения этих роутеров, в частности моделей RT-N16, WL-500GP, WL-500W в качестве сервиса VOIP телефонии на базе продукта Asterisk, в том числе с построением шлюза GSM Asterisk VOIP.
В результате получаем:
— вполне работоспособную IP – телефонию на роутере, без лишних затрат и дополнительных точек отказа в виде дополнительного железа
— очень бюджетное решение по VOIP2GSM терминации для личных нужд (на базе 3G модемов HUAWEI)
Насколько это нужно — решать Вам!
Я лично использую эту схему (при минимальных затратах на «железо») для:
— недорогих звонков за границу с мобильного телефона (GSM->VOIP->GSM or Landline)
— экономии расходов на связь в роуминге (c помощью Callback на «местную» или туристическую симку)
— в качестве VOIP GSM шлюза в одной из стран, где цены на локальные звонки и интернет вполне адекватные, а вот VOIP трафик стоит немало.
1. Собственно указанный роутер ASUS RT-N16, WL-500GP, WL-500W (возможно список моделей может быть шире)
2. Для GSM VOIP шлюза – нужен 3G модем HUAWEI E1550 или E173 (опять же – список может быть шире, но тестировались именно эти модели). Шлюз GSM-VOIP в виде сервиса мегафона «Мультифон» — остается за рамками нашей темы.
Процессу настройки ASTERISK посвящено немало статей на Хабрахабре, приведу ссылки на некоторые из них:
habrahabr.ru/blogs/voip/104026
habrahabr.ru/blogs/voip/113707
Постараюсь не повторяться а осветить особенности установки Asterisk именно на роутере.
Итак, Часть 1-я, «Установка Asterisk»
1. Ставим на роутер прошивку на ядре 2.6* «от энтузиастов» на базе прошивки Oleg’а.
Адрес проекта с прошивками code.google.com/p/wl500g. Нужна прошивка rtn, подходящая к Вашей модели роутера.
Почему эта, а не dd-wrt, tomato и тд – работает быстро, проект динамично обновляется(спасибо «энтузиастам»).
2. Для пакета asterisk и прочих зависимостей памяти роутера нам будет явно недостаточно, поэтому понадобится внешний USB накопитель (1 gb- вполне устроит). Вместо флешки – мы можем воспользоваться опцией замечательных 3g модемов Huawei e1550 и E173 (кстати – все еще продается по акции мегафона за 750 рублей, в комплекте с симкой на 1 мес бесплатного мобильного интернета) – которые имеют слот для Micro SD Card, совмещая в себе функции флешки. Таким образом, этот чудесный модем воплощает в себе одновременно 3 свойства:
— 3G модем (интернет на роутер можем получать через него)
— Флешка (при вставленной micro sd) для установки доп. пакетов на роутере
— GSM шлюз с поддержкой голоса, SMS, USSD
3. Подключаем модем-флешку или просто флешку, логинимся в роутер по SSH, и производим первоначальную конфигурацию и установку необходимых пакетов.
Процесс неплохо описан здесь wl500g.info/showthread.php?t=3171, я приведу основные этапы:
a) Создаем необходимые конфигурационные файлы
mkdir -p /usr/local/sbin/
echo «#!/bin/sh» >> /usr/local/sbin/post-boot
cp /usr/local/sbin/post-boot /usr/local/sbin/post-firewall
cp /usr/local/sbin/post-boot /usr/local/sbin/post-mount
cp /usr/local/sbin/post-boot /usr/local/sbin/pre-shutdown
chmod +x /usr/local/sbin/p*
flashfs save
flashfs commit
flashfs enable
b) Форматим флешку и подключаем ее в качестве доступного хранилища
umount /tmp/mnt/disca_1
mke2fs -j /dev/discs/disca/part1
mkdir /tmp/mnt/disca_1/opt
mount -obind /tmp/harddisk/opt /opt
echo ‘mount -obind /tmp/harddisk/opt /opt ‘ >> /usr/local/sbin/post-mount
flashfs save
flashfs commit
flashfs enable
c) Подключаемся к репозиторию и устанавливаем нужные пакеты
mkdir -p /opt/tmp/ipkg
ipkg.sh update
ipkg.sh install ipkg-opt
echo «option verbose-wget»>>/opt/etc/ipkg.conf
ipkg update
ipkg upgrade
d) Ставим софт для удобства работы
ipkg install nano mc findutils grep wget
echo «export TERMINFO=/opt/share/terminfo» >> /usr/local/root/.profile
echo «export TERM=xterm» >> /usr/local/root/.profile
flashfs save
flashfs commit
flashfs enable
4. Ставим Asterisk 16
ipkg install asterisk16
5. Запускаем asterisk
и получаем……… «Segmentation Fault» (может быть Вам повезет больше? )
Небольшое лирическое отступление: все бы хорошо, но Asterisk «вылетает». Я потратил немало времени, пробовал компилировать Asterisk на роутере – вполне благополучно (с некоторыми хитростями), но тоже вылетает. Пробовал кросс компиляцию – аналогично.
В общем, чтобы заставить его работать – пришлось сделать небольшую процедуру «обрезания» библиотек-модулей, оказавшихся «крайними». У меня есть несколько вариантов работоспособных конфигураций сочетания модулей, но приведу самый простой пример заставить asterisk запуститься и без неприятного сообщения «Segmentation Fault».
Вот он:
mkdir /opt/lib/asterisk/modules_backup
mv /opt/lib/asterisk/modules/res* /opt/lib/asterisk/modules_backup/
Т.е. все res_* отключаем, надеюсь что Вам это будет некритично.
7. Запускаем опять asterisk, и «ВУАЛЯ»!
Asterisk Ready.
*CLI>
Процесс конфигурирования оставлю в покое, немало мано-факов по той тебе исписано, лишь сделаю ремарку, что для себя в /opt/etc/asterisk использую лишь эти конфигурационные файлы:
asterisk.conf cdr.conf extensions.conf indications.conf logger.conf modules.conf rtp.conf sip.conf
И для GSM модема еще dongle.conf (или datacard.conf)
Часть 2, Установка GSM Шлюза
С установкой Asterisk закончили, перейдем к установке GSM шлюза на базе 3G модемов HUAWEI, моделей E1550 и E173.
1. Нам нужен модем указанной модели с активированной функцией голоса (инструкции и софт по анлоку от оператора и активации голосовых функций доступны в открытом доступе в Интернете, если потребуется – могу описать процесс подробнее).
Как я упоминал, актуальное на данный момент для Москвы предложение – модем модели HUAWEI e173 в комплекте с сим картой и безлимитным интернетом на месяц – 750 руб. dv.device.megafon.ru/specifications/usbModem/e173).
2. Если модем используется в качестве флешки для роутера – то эта функция должна быть инициализирована (можно сделать через терминал):
AT^U2DIAG=0 (девайс переводится в режим «только модем»)
AT^U2DIAG=1 ( . «модем + CD-ROM»)
AT^U2DIAG=255 ( . «модем + CD-ROM + Card reader»)
AT^U2DIAG=256 ( . «модем + Card reader»)
Первый – простой… использовать для шлюза готовый скомпилированный модуль chan_datacard.so
Берем его отсюда iqlab.ru/downloads/chan_datacard.so и кладем в папку modules астериска.
cd /opt/lib/asterisk/modules
wget http: //iqlab.ru/downloads/chan_datacard.so
Дальше добавляем в /opt/etc/asterisk/ конфигурационный файл datacard.conf примерно следующего содержания
>>>>>>>>>>>>>>>>>>>>>>>>>>>
[datacard0]
audio=/dev/ttyUSB1 ; tty for audio connection
data=/dev/ttyUSB2 ; tty for AT commands
context=datacard-incoming ; context for incoming calls
group=1 ; calling group
rxgain=3 ; increase the incoming volume
txgain=3 ; increase the outgoint volume
resetdatacard=yes ; reset datacard during initialization
u2diag=256 ; set U2DIAG parameter (256 = modem+card_reader)
usecallingpres=yes ; use the caller ID presentation or not
callingpres=allowed_passed_screen ; set caller ID presentation
И далее, уже в файле extensions.conf создаем раздел [datacard-incoming] и добавляем туда свои правила диалплана. Для теста, например,
>>>>>>>>>>>>>>>>>>>>>>>>>>>>
[datacard-incoming]
exten => s,1,Playback(demo-echotest) ; Let them know what’s going on.
exten => s,2,Echo ; Do the echo test.
exten => s,1,Playback(demo-echodone)
Запускаем астериск, смотрим, нормально ли подключился модуль
#Asterisk Ready.
#*CLI> — [datacard0] Datacard initialized and ready
Дальше звоним на симку, вставленную в модем, слышим привествие, и свой голос в качестве «эхо».
Дальше – конфигурируем необходимые правила, переадресации и тд.
Вариант второй – посложнее, но и возможностей больше.
Состоит он в том, чтобы скомпилировать на роутере расшиенную версию GSM модуля для Huawei, под названием chan_dongle.so (http://code.google.com/p/asterisk-chan-dongle/downloads/list) – СПАСИБО Bg1.
Для этого ставим на роутер необходимые для компиляции пакеты:
ipkg install buildroot optware-devel make
Скачиваем модуль chan_dongle, распаковываем, компилируем (configure && make), копируем в /opt/lib/asterisk/modules и создаем конфигурационный файл /opt/etc/asterisk/dongle.conf (описание есть здесь code.google.com/p/asterisk-chan-dongle/source/browse/trunk/etc/dongle.conf?spec=svn4&r=4)
Далее настраиваем диалплан, и наслаждаемся работающим сервисом Asterisk с GSM шлюзом на роутере!
Вот, в общем то, все, если кратенько…
Если нужно что-то детализировать или описать подробнее – welcome!
Данная статья не подлежит комментированию, поскольку её автор ещё не является полноправным участником сообщества. Вы сможете связаться с автором только после того, как он получит приглашение от кого-либо из участников сообщества. До этого момента его username будет скрыт псевдонимом.
Установка IP АТС Asterisk 11 на интернет-центр Keenetic
Установка дополнительного opkg-пакета Asterisk 11 на интернет-центре Keenetic позволяет расширить его возможности функциями телефонной станции на основе протокола IP (IP PBX). Такая телефонная станция может обслуживать около 10-ти пользователей, обеспечивая маршрутизацию звонков через несколько внешних линий. Ее можно использовать для организации телефонной сети в небольшом офисе. Кроме того, с ее помощью пользователи устройств Keenetic III и Keenetic Plus DECT могут расширить функциональность своих устройств.
Чтобы максимально упростить установку и конфигурирование пакета Asterisk 11 воспользуйтесь предустановленным Asterisk11. В нем сконфигурированы следующие функции:
- Внешние линии для подключения к операторам IP-телефонии
Четыре линии для подключения к операторам Sipnet, YouMagic, Multifon и Zadarma. Выбор нужной линии для исходящего вызова осуществляется с помощью специальных префиксов. - Внутренние линии для подключения смартфонов, софтфонов, IP-телефонов, VoIP-шлюзов и т.п. к серверу Asterisk установленному на устройстве Keenetic. Пользователи подключенных устройств смогут звонить и принимать вызовы через внешние телефонные линии подключенные к Asterisk, а также звонить друг другу по внутренним номерам через Asterisk.
- Транспорт TCP
Требуется для подключения к некоторым операторам IP-телефонии. Обеспечивает надежную доставку сообщений SIP размером более 1300 байт с использованием фрагментации. - Защищенный транспортный протокол TLS
для обмена сообщениями SIP. Этот протокол использует аутентификацию SIP-сервера с сертификатами и шифрование сообщений SIP. Гарантирует подключение к подлинному SIP-серверу. Препятствует перехвату информации о внешних вызовах злоумышленниками. Защищает SIP-аккаунт от взлома. - Защищенный протокол передачи медиаданных SRTP
Защищает от прослушивания разговоров. Должен использоваться одновременно с TLS. - Функция перевода вызова (Call Transfer)
чтобы переводить вызовы на другой внутренний или внешний номер. Работает на любом устройстве подключенном к Asterisk11. - Голосовая почта (автоответчик)
Абоненты, которые позвонят вам, когда вы не можете ответить, смогут оставить для вас голосовое сообщение. Сервис использует голосовое меню на русском языке. - Голосовое меню для входящих вызовов
Позвонивший по внешней линии абонент слышит приглашение набрать внутренний номер абонента. Он набирает внутренний номер и Asterisk соединяет его с нужным пользователем. - Конференции для трех и более участников
Каждый пользователь подключившийся к конференции сможет разговаривать со всеми остальными пользователями в конференции. - Запись разговоров
Все разговоры записываются на USB-накопитель подключенный к интернет-центру Keenetic.
Что нужно для установки Asterisk 11
- Интернет-центр Keenetic c официальной микропрограммой NDMS v2.08 или выше и установленными модулями OPKG (кроме Keenetic VOX, LTE и DSL). Рекомендуем использовать старшие модели Keenetic с производительными процессорами, такие как Keenetic Giga и Keenetic Ultra.
- USB-накопитель с разделом ext2 размером не менее 200 Мб. При использовании FLASH-накопителей не рекомендуется использовать другие файловые системы, такие как NTFS, FAT, ext3, ext4, т.к. это может вызвать неработоспособность Asterisk или быстрый выход из строя FLASH-накопителя. Для создания раздела ext2 можно воспользоваться командами fdisk и mkfs операционной системы Linux. В системе Windows для этого можно воспользоваться бесплатным приложением MiniTool Partition Wizard Free: https://www.partitionwizard.com/free-partition-manager.html
Установка Asterisk 11
- Подключите USB-накопитель с разделом ext2 к устройству Keenetic.
- Активируйте общий доступ к файлам в разделе ext2 на USB-накопителе в сети Windows (веб-конфигуратор > Приложения > Сеть Windows).
- Используя Windows Explorer (Проводник) на компьютере с OS Windows подключитесь к устройству Keenetic и зайдите в раздел ext2 на USB-накопителе. Для этого наберите \\192.168.1.1 в адресной строке, затем откройте папку соответствующую метке раздела ext2.
- В разделе ext2 создайте папку с именем “install” и поместите в нее архив c предустановленным Asterisk 11
- На странице Приложения > OPKG веб-конфигуратора Keenetic включите поддержку OPKG, затем в выпадающем списке выберите раздел ext2 с архивом Asterisk 11 в папке install на USB-накопителе и нажмите “Применить”. Далее произойдет распаковка инсталляции Asterisk 11 из архива. Через 30-60 секунд в системном журнале устройства должны появиться следующие сообщения:
[I] Aug 22 12:16:48 ndm: Opkg::Manager: disk is set to: opkg:/.
[I] Aug 22 12:16:48 ndm: kernel: EXT2-fs (sda3): re-mounted. Opts: (null)
[I] Aug 22 12:16:48 ndm: Opkg::Manager: /tmp/mnt/opkg mounted to /tmp/mnt/opkg.
[I] Aug 22 12:16:48 ndm: Opkg::Manager: /tmp/mnt/opkg mounted to /opt/.
[I] Aug 22 12:16:48 npkg: inflating «keenetic-entware-ast11-2018-12-07.tar.gz».
[I] Aug 22 12:16:51 ndhcpc: GigabitEthernet0/Vlan2: received ACK for 193.0.174.233 from 193.0.174.24.
[I] Aug 22 12:16:57 ndm: Opkg::Manager: /tmp/mnt/opkg initialized.
[I] Aug 22 12:16:57 ndm: Opkg::Manager: init script reset to default: /opt/etc/initrc.
[I] Aug 22 12:16:57 ndm: Core::ConfigurationSaver: saving configuration.
[E] Aug 22 12:16:57 ndm: Opkg::Manager: invalid initrc «/opt/etc/initrc»: no such file or directory, trying /opt/etc/init.d/.
[I] Aug 22 12:16:57 root: Started asterisk from .
Переходим в настройки роутера через консоль, переходим в настройки opkg и делаем обновление установленных пакетов:
(config)> exec sh
BusyBox v1.24.2 () built-in shell (ash)
/ # opkg update
Downloading http://pkg.entware-keenetic.ru/binaries/keenle/Packages.gz.
Updated list of available packages in /opt/var/opkg-lists/keenle.
/ # opkg upgrade
Upgrading terminfo on root from 6.0-1b to 6.0-1c.
Downloading http://pkg.entware-keenetic.ru/binaries/keenle/terminfo_6.0-1c_keenle.ipk.
Upgrading ldconfig on root from 1.0.17-8 to 1.0.17-10.
Downloading http://pkg.entware-keenetic.ru/binaries/keenle/ldconfig_1.0.17-10_keenle.ipk.
Upgrading asterisk11-res-timing-pthread on root from 11.25.1-1 to 11.25.3-1.
Downloading http://pkg.entware-keenetic.ru/binaries/keenle/asterisk11-res-timing-pthread_11.25.3-1_keenle.ipk.
Upgrading libc on root from 1.0.17-8 to 1.0.17-10.
Downloading http://pkg.entware-keenetic.ru/binaries/keenle/libc_1.0.17-10_keenle.ipk.
Upgrading asterisk11-app-record on root from 11.22.0-2 to 11.25.3-1.
Downloading http://pkg.entware-keenetic.ru/binaries/keenle/asterisk11-app-record_11.25.3-1_keenle.ipk.
Upgrading asterisk11 on root from 11.22.0-2 to 11.25.3-1.
Downloading http://pkg.entware-keenetic.ru/binaries/keenle/asterisk11_11.25.3-1_keenle.ipk.
Перезагружаем роутер не выходя из консоли:
(config)> system reboot
Core::System::RebootManager: Rebooting the system.
После перезагрузки увидим следующие записи:
[I] Aug 22 13:09:58 ndm: Opkg::Manager: disk is set to: 0033b33b-4907-4ad1-8fab-1dee13d57b48:/.
[I] Aug 22 13:09:58 ndm: kernel: EXT2-fs (sda3): re-mounted. Opts: (null)
[I] Aug 22 13:09:58 ndm: Opkg::Manager: /tmp/mnt/opkg mounted to /tmp/mnt/opkg.
[I] Aug 22 13:09:58 ndm: Opkg::Manager: /tmp/mnt/opkg mounted to /opt/.
[I] Aug 22 13:09:58 ndm: Opkg::Manager: /tmp/mnt/opkg initialized.
[E] Aug 22 13:09:58 ndm: Opkg::Manager: invalid initrc «/opt/etc/initrc»: no such file or directory, trying /opt/etc/init.d/.
[I] Aug 22 13:09:58 root: Started asterisk from .
[I] Aug 22 13:09:58 dropbear[1021]: Running in background
Это означает, что Asterisk успешно стартовал.
- Asterisk стартует автоматически после каждой перезагрузки устройства;
- Asterisk установленный на USB-накопителе можно запустить на любом устройстве Keenetic с NDMS 2.08 или выше с установленными модулями OPKG;
- перед тем, как отключить USB-накопитель с инсталляцией Entware от устройства Keenetic или выключить Keenetic с подключенным накопителем, не забывайте размонтировать все разделы накопителя на странице «Системный монитор» веб-конфигуратора Keenetic. В противном случае инсталляция Entware на накопителе может стать неработоспособной.
Конфигурирование и использование Asterisk11
В данной инсталляции Asterisk11 сконфигурированы следующие функции:
- Десять внутренних номеров 1000..1009 для регистрации устройств без поддержки широкополосного кодека G.722. При настройке устройств используйте следующие данные:
SIP Register/Proxy/Domain: 192.168.1.1:6060
SIP Transport: UDP
SIP User ID/SIP Auth ID: внутренний номер 100x
Password: OPKGast11onk3
DTMF: RFC2833
Voice Codecs: G.711u
Десять внутренних номеров 2000..2009 для регистрации устройств с поддержкой широкополосного кодека G.722, который позволяет значительно улучшить качество передаваемого голоса во время телефонных разговоров. При настройке устройств используйте следующую информацию:
SIP Register/Proxy/Domain: 192.168.1.1:6060
SIP Transport: UDP
SIP User ID/SIP Auth ID: внутренний номер 200x
Password: OPKGast11onk3
DTMF: RFC2833
Voice Codecs: G.722, G.711u
Пароли для внутренних номеров можно переназначить в конфигурационном файле /etc/asterisk/sip.conf
Четыре преднастроенные внешние линии (транки) для подключения к операторам Sipnet, YouMagic, Multifon и Zadarma
Для подключения к нужному оператору требуется выполнить следующее:
1) в конфигурационном файле \etc\asterisk\sip.conf раскомментировать (удалить “;” в начале строк) соответствующие блоки параметров и вписать соответствующие данные вашего SIP-аккаунта — телефонный номер и пароль — вместо “XXXXXXXX” и “YYYYYYYY” соответственно;
2) в файле \etc\asterisk\extensions.conf найти и заменить “SIPNET-NUMBER”, “YUMAGIC-NUMBER”, “MULTIFON-NUMBER” и “ZADARMA-NUMBER” на телефонные номера ваших аккаунтов этих операторов. О том, как редактировать конфигурационные файлы Asterisk11 см далее.
Примечание:
для Sipnet можно использовать транспортный протокол TLS или UDP (но не оба одновременно), для Zadarma — UDP или TCP (но не оба одновременно), остальные транки используют UDP.
Чтобы направить исходящий вызов через нужную линию наберите префикс *1, *2, *3 или *4 (Sipnet, YouMagic, Multifon и Zadarma соответственно), затем номер абонента в формате 8XXXXXXXXXX. Через каждую из линий разрешены исходящие вызовы на номера МГТС, Beeline и MTS. Чтобы разрешить другие направления необходимо внести соответствующие изменения в конфигурационный файл extensions.conf. При исходящем вызове в трубке телефона звучит имя оператора IP-телефонии, через которого маршрутизируется данный вызов.
Если при входящем вызове внутренний номер не отвечает в течение минуты, вызывающая сторона слышит приглашение оставить сообщение для данного пользователя. При наличии новых сообщений Asterisk направляет специальную нотификацию на телефон пользователя и телефон сигнализирует об этом. Доступ к сообщениям по номеру 9000. Для авторизации требуется ввести внутренний номер 100x или 200x в качестве номера абонента и пароля. Пароли голосовой почты можно изменить в конфигурационном файле \etc\asterisk\voicemail.conf
При постановке вызова на удержание звучит музыка (Music On Hold или MOH, четыре композиции).
При вызове по этому номеру звучит музыка. Можно использовать для тестирования устройства и функций Asterisk 11.
Можно записать сообщение, а затем прослушать его чтобы проверить обмен голосовыми данными между Asterisk 11 и вашим устройством.
При входящем внешнем вызове вызывающему абоненту предлагают ввести внутренний номер пользователя. Если номер не набран, вызов направляется на внутренний номер 1000. При поступлении внешнего вызова на внутренний номер, на соответствующий телефон отправляется номер внешнего абонента и имя оператора, через которого поступил вызов. Эти данные могут отображаться на дисплее телефона.
При внутренних вызовах между номерами 200x используется кодек G.722. При внутренних вызовах между номерами 100x, а также между номерами 200x и 100x используется кодек G.711u. При внешних вызовах используется кодек G.711u.
Для присоединения к конференции нужно позвонить по номеру **1. Каждый пользователь присоединившийся к конференции может разговаривать со всеми остальными пользователями в конференции. Когда пользователь присоединяется к конференции или выходит из нее все остальные пользователи в конференции слышат соответствующие сигналы оповещения. Первый пользователь присоединившийся к конференции слышит специальное оповещение и музыку до тех пор, пока к конференции не подключатся другие пользователи.
Каждый пользователь после подключения к конференции может вызвать в конференцию другого пользователя. Для этого, находясь в конференции нужно набрать “**”, дождаться сигнала ответа станции (непрерывный гудок) и затем набрать номер пользователя 1000..1009 или 2000.. 2009. Когда вызванный пользователь отвечает на вызов, он попадает в конференцию вместе с вызывающим пользователем. Если вызываемый пользователь отклоняет вызов или не отвечает в течение определенного времени, вызов прерывается, и вызывающий пользователь возвращается в конференцию.
Запись разговоров при входящих и исходящих внешних и внутренних звонках. Аудиозаписи разговоров в формате PCM 8000Hz mono 128kbps сохраняются на USB-накопителе в каталог /opt/records. Имена файлов аудиозаписей имеют следующий формат:
где:
caller – номер вызывающего абонента;
callee – номер вызываемого абонента;
YYMMDD – год, месяц и число, когда состоялся звонок ;
HHMM – время (часы, минуты), когда состоялся звонок.
Для записи разговоров используется приложение MixMonitor(), которое вызывается из dialplan. Если запись разговоров требуется отключить для одного или нескольких направлений звонков, в конфигурационном файле /opt/etc/asterisk/extensions.conf закомментируйте строки (добавьте “;” в начале строки) в которых справа встречается следующее: “ ;
Интеграция Keenetic III с Asterisk11
Прилагаемая конфигурация для Keenetic III предназначена для подключения встроенного адаптера IP-телефонии этого устройства к предустановленному Asterisk11 развернутому на том же устройстве. Данная конфигурация обеспечивает следующие функции:
- подключение к Asterisk11 с внутренним номером 1000;
- подписка SUBSCRIBE для получения уведомлений голосовой почты. При поступлении новых голосовых сообщений телефон будет сигнализировать об этом (несколько коротких сигналов звучат при включении разговорного режима, а также возможна специальная индикация на дисплее телефона);
- при отсутствии набора в режиме разговора происходит автоматический вызов по номеру 9000 для работы с голосовой почтой.
Чтобы применить данную конфигурацию, загрузите ее на устройство Keenetic III (веб-конфигуратор > Система > Файлы > startup-config), затем перезагрузите устройство.
Интеграция Keenetic Plus DECT с Asterisk11
При развертывании Asterisk11 на устройстве Keenetic с подключенной базовой станцией Keenetic Plus DECT телефонные линии последней можно подключить к внутренним линиям Asterisk11. При этом настройка телефонных линий K+DECT должна соответствовать следующему скриншоту
Для конфигурирования дополнительных линий K+DECT достаточно заменить 1000 на 1002.. 1009 или 2000.. 2009, оставляя остальные настройки теми же, что на скриншоте.
Для всех линий использовать один и тот же пароль “OPKGast11onk3”. Пароли для внутренних линий можно сменить в конфигурационном файле /etc/asterisk/sip.conf.
Для линий 2000..2009 следует также добавить кодек G.722 и сконфигурировать приоритет кодеков следующим образом:
1. G.722
2. G.711u
Каждую DECT-трубку подключенную к K+DECT нужно привязать к индивидуальной линии, как в данном примере с двумя трубками:
DECT-трубки с поддержкой CAT-iq 1.0 HD Voice (практически любые трубки Gigaset) можно привязать к линиям 2000.. 2009. Это позволит использовать кодек G.722 и, тем самым, улучшить качество звука в меню голосовой почты, а также при внутренних вызовах, когда собеседник использует DECT-трубку или другое устройство с поддержкой кодека G.722 подключенное к одной из линий 2000.. 2009. Уточнить, поддерживает ли данная DECT-трубка HD Voice можно на странице настройки DECT-трубки веб-конфигуратора Keenetic Plus DECT:
Конфигурационные файлы Asterisk 11
Конфигурация Asterisk 11 содержится в следующих файлах:
- /etc/asterisk/sip.conf
- /etc/asterisk/extensions.conf
- /etc/asterisk/voicemail.conf
- /etc/asterisk/musiconhold.conf
- /etc/asterisk/modules.conf
Файлы с теми же именами и расширением .bak содержат подробное описание параметров Asterisk на английском языке.
Конфигурационные файлы Asterisk 11 можно открывать для просмотра и редактирования в Windows с помощью редактора Notepad++: https://notepad-plus-plus.org/download/v7.3.1.html
Чтобы открыть конфигурационный файл, в командной строке Windows набрите \\192.168.1.1, откройте папку, соответствующую разделу ext2 с установленным Asterisk 11, перейдите в \etc\asterisk, выберите нужный файл и откройте его с помощью Notepad++.
Применить новую конфигурацию без подключения Linux Shell можно путем выключения и включения OPKG в веб-конфигураторе Keenetic (см. Приложения > OPKG).
Для конфигурирования предустановленного Asterisk 11 из консоли Linux необходимо зайти на устройство по SSH по адресу 192.168.1.1. Для этого можно использовать бесплатный программный SSH-клиент PuTTY (см. http://www.putty.org/ ). Имя пользователя: «root», пароль: «zyxel». После успешного входа в систему, настоятельно рекомендуется сменить пароль командой “passwd”.
В системе установлен файловый менеджер Midnight Commander, который можно запустить набрав команду “ mc” . С его помощью можно выполнять файловые операции и редактировать конфигурационные файлы Asterisk.
Несколько полезных команд интерфейса командной строки Asterisk 11:
asterisk -rvvvvvv — подключение интерфейса командной строки
sip reload — перечитать sip.conf
dialplan reload — перечитать extensions.conf
sip show registry — список зарегистрированных SIP-пиров
core show translation — вывод таблицы транскодинга
core show applications — список зарегистрированных приложений Asterisk
sip show channels — информация об активных SIP-соединениях
sip show channel — выводит подробную информацию о SIP-соединении
exit — выход из интерфейса командной строки в Shell
Более подробную информацию по конфигурированию Asterisk можно найти среди множества статей опубликованных в Интернете.
Сохранение и восстановление инсталляции Asterisk 11
Инсталляцию Entware с Asterisk11 на USB-накопителе можно сохранить в файл, чтобы потом, в случае необходимости, быстро восстановить из файла. Для этого нужно зайти на устройство по SSH, затем в командной строке Linux Shell выполнить следующую команду:
tar cvzf /opt/backup-`date «+%Y-%m-%d_%H-%M»`.tar.gz -C /opt/ bin etc home lib lost+found root sbin share tmp usr var
В результате выполнения команды создается архив в корневом каталоге раздела ext2 на USB-накопителе. Этот архив нужно сохранить. Для восстановления Entware достаточно поместить этот архив в папку /install раздела ext2 на USB-накопителе подключенном к Keenetic и активировать OPKG для данного раздела в веб-конфигураторе Keenetic.
При необходимости в предустановленном Asterisk11 можно изменить конфигурацию, установить дополнительные модули и настроить новые функции. Список всех доступных модулей Asterisk 11 и других пакетов доступных для загрузки и установки на устройства серии Keenetic можно найти по этой ссылке: http://bin.entware.net/mipselsf-k3.4/Packages.html
Для установки новых модулей используется команда opkg. Например, для установки пакета asterisk11 наберите “opkg install asterisk11”. Для установки модулей используется та же команда, например “opkg install asterisk11-app-record ”.
Пользователи, считающие этот материал полезным: 33 из 34