Настройка шлюза GoIP-4 и подключение его к Asterisk посредством FreePBX

    9 минут

Для осуществления звонков с компьютера и, при наличии GSM-Шлюза, нам нужно подружить это устройство с установленным ранее сервером ip-телефонии Asterisk. И делать мы это будем с помощью установленной нами ранее панели управления FreePBX.

В настоящий момент для подключения устройств к серверу Asterisk используется технология (драйвер) PjSIP, пришедшая на смену устаревшей SIP, которую также всё ещё можно использовать.

В данной статье рассмотрим подключение GSM-Шлюза GoIP-4 как с помощью устаревшего драйвера SIP, так и с новым — PjSIP. Также будем исходить из того, что наш шлюз настроен и ему присвоен соответствующий IP. Если это ещё не сделано, то можно использовать инструкцию в нашей копилке.

Настройка каналов на стороне шлюза

И так, запустим web-интерфейс GoIP-4, набрав в адресной строке его IP, например, http://192.168.1.152/.

Web-интерфейс GoIP-4
Web-интерфейс GoIP-4

Перейдём на Configurations → Basic VoIP

Basic VoIP
Basic VoIP

В Config Mode из списка выбираем Config by Line
Authentication ID — имя линии. Может содержать цифры и латинские буквы. Например, go-5001 или 5001. В нашем случае ограничимся цифровым идентификатором.
Password — пароль от линии.
Routing Prefix — префикс маршрутизации.
SIP Registrar Server — IP и порт нашего сервера Asterisk. Порт ставим из расчёта технологии подключения. Если во FreePBX его не меняли, то по умолчанию pjsip — 5060, а sip — 5160.
Re-register Period (s) — период перерегистрации ставим 60
Phone Number — номер телефона. Установим его идентичным имени линии.
Display Name — отображаемое имя. Необязательно, можно оставить пустым. В нашем случае это номер SIM-карты в данном слоте устройства.

Теперь жмём кнопку *Auto Config Other lines и оставшиеся линии принимают значения полей Authentication ID, Password, Routing Prefix и Phone Number методом счётчика, увеличивая его на следующей линии на 1. Сохраняем наши настройки, нажав Save Changes.

Переходим на Advance VoIP

Advance VoIP
Advance VoIP

Разбирать подробно его не станем, просто приведём все значения к указанным на скриншоте.

В пункте Call Out, как и в первом случае, настраиваем первую линию и жмём *Auto Config Other lines для автонастройки остальных

Call Out
Call Out

В Call In в пункте Forwarding to VoIP Number, для удобства визуальной идентификации в мониторе sngrep, можно внести понятные вам обозначения соответствующих SIM-карт. Оно может быть как цифровым (например, номер данного телефона), так и буквенным. В последнем случае придётся использовать лишь латинские буквы, иначе будет отображаться не то, что вы хотели.

Call In
Call In

Остальные настройки оставим по умолчанию. Наш шлюз настроен, можно переходить к настройке транков и маршрутизации в нашем FreePBX.

Настройки транков на стороне сервера

Настройка транков GSM-шлюза

Запускаем его с адресной строки в браузере и переходим в Подключения Транки. Жмём Добавить mISDN транк, из списка выбираем нужный нам формат Добавить SIP (chan_sip) транк или Добавить PjSIP (chan_pjsip) транк.

Во вкладке Общие в поле Название транка вписываем его имя, которое мы указали в поле Authentication ID настроек GSM-Шлюза, Исходящий CallerID можно оставить пустым или вписать номер телефона.

Транк - Общие
Транк — Общие

В поле Название транка пишем значение канала, которое мы установили на шлюзе в поле Authentication ID. В поле Опции команды Dial для транка Asterisk отмечаем кнопку Переписать и вставляем

TL(2700000:120000:60000)

Это значение было взято из одной статьи в интернете, но опыт показал, что менять дефолтное нет никакого смысла, с ним всё работает отлично. Так что можете оставить это поле как есть.

Вкладка Правила для манипуляции набранными номерами отвечает за исходящие вызовы. В строке «приставка» ставим номер линии, соответствующий Routing Prefix из настроек шлюза. В строку «совпадение шаблона» — шаблон набираемого номера.

Если вы предполагаете, что исходящие вызовы будут совершаться со всех SIM-карт, то в поле приставка впишите номер канала настраемого транка на шлюзе. В том случае, если исходящие будут осуществляться не со всех каналов, то эту вкладку нужно заполнить обязательно только для этих каналов.

Транк - Правила для манипуляции набранными номерами
Транк — Правила для манипуляции набранными номерами

Во вкладке pjsip Общие настройки → Исходящий в поле Имя пользователя и Auth username пишем имя линии, Секретваш пароль который ставили в настройках шлюза в поле password, а в поле Регистрация выбираем Принять:

Открываем вкладку Расширенный. В поле От Домена пишем IP адрес нашего GSM-Шлюза, в поле От ПользователяAuthentication ID соответствующего канала шлюза, из списка Match Inbound Authentication выбираем Auth Username.

Во вкладке sip Общие настройки → Исходящий в поле Название транка пишем имя линии, а в опции для PEER:

Транки - sip Общие настройки - Исходящий
Транки — sip Общие настройки — Исходящий
username=5001
secret=ВАШ_ПАРОЛЬ_КОТОРЫЙ_СТАВИЛИ_В_НАСТРОЙКАХ_ШЛЮЗА_В_ПОЛЕ_PASSWORD
type=peer
qualify=yes
permit=192.168.1.0/255.255.255.0
nat=no
insecure=port,invite
host=dynamic
disallow=all
deny=0.0.0.0/0.0.0.0
context=from-trunk
allow=alaw&ulaw&gsm

Во Входящий очищаем все поля, чтобы все они были пустыми.

Транки - sip Общие настройки - Входящий
Транки — sip Общие настройки — Входящий

Во Входящий очищаем все поля, чтобы все они были пустыми.

И так создаём транки для всех каналов шлюза (SIM-карт).

Настройка транка Ростелекома

В сети много противоречивой информации о настройке транка для подключения номера Виртуальной АТС Ростелекома. Исходя из собственного опыта, конкретно для меня оказались рабочими нижеследующие настройки.

Также, как и с транками для GSM-Шлюза GoIP-4, в Подключения Транки. Жмём Добавить mISDN транк, из списка выбираем нужный нам формат Добавить SIP (chan_sip) транк/Добавить PjSIP (chan_pjsip) транк.

Во вкладке pjsip Общие настройки → Исходящий в поле Имя пользователя и Auth username пишем логин ВАТС Ростелеком, Секрет — ваш пароль ВАТС Ростелеком, в поле SIP сервер — домен ВАТС Ростелеком, а в поле Порт SIP сервера — 5060:

В поле Название транка во вкладке Общие пишем, например, rt. Его же указываем и в sip Общие настройки → Исходящий в одноимённом поле.

В sip Общие настройки → Исходящий в поле опции для PEER вносим следующие настройки:

username=Логин_ВАТС_Ростелекома
type=friend
secret=Пароль_ВАТС_Ростелекома
regsecond=600
qualify=3000
nat=force_rport,comedia
insecure=invite,port
host=Сервер_ВАТС_Ростелекома
fromuser=Логин_ВАТС_Ростелекома
fromdomain=Сервер_ВАТС_Ростелекома
dtmfmode=rfc2833
directmedia=yes
defaultuser=Логин_ВАТС_Ростелекома
canreinvite=no
allow=alaw&ulaw
context=from-trunk-sip-rt

Измените соответствующие настройка под свои.

Транки - sip Общие настройки - Исходящий для Ростелекома
Транки — sip Общие настройки — Исходящий для Ростелекома

В sip Общие настройки → Входящий очищаем все поля, а в поле Строка регистрации вписываем, изменив на свои данные

Логин:Пароль@Сервер_Ростелекома/Номер_телефона
Транки - sip Общие настройки - Входящий для Ростелекома
Транки — sip Общие настройки — Входящий для Ростелекома

Теперь, если перейдём в web-интерфейс шлюза, то увидим, что наши каналы подключены к серверу

Каналы подключены
Каналы подключены

А значит наш шлюз настроен и подключен верно, можно переходить к дальнейшим настройкам сервера используя FreePBX.

Настройка внутреннего номера

Для приёма звонков и совершения вызовов, нам нужен пользователь, который будет взаимодействовать между сервером и нами. Этим пользователем будет служить внутренний номер. С его помощью мы сможем подключить софтфон и через него делать звонки. В качестве софтфона я использую PhonerLite.

PhonerLite
PhonerLite

Приступим к настройке. Заходим в Приложения → Внутренние номера и выбираем Добавить внутренний номер → Добавить новый SIP (Legacy) [chan_sip] внутренний номер.

Внутренний номер
  • В поле Внутренний номер пользователя вписываем любой цифровой номер, который хотим использовать.
  • В поле Отображаемое имя вводим понятное наименование пользователя, например, Иван или Диспетчер и т.п.
  • Поле Секрет содержит сгенерированный сервером пароль, который можно оставить или сменить на свой.

И для работоспособности нам этого достаточно.

Настройка входящей маршрутизации

Для приёма звонков необходимо настроить входящую маршрутизацию. Для этого выбираем в меню Подключения Входящая маршрутизация и жмём Добавить входящий маршрут

Входящая маршрутизация
Входящая маршрутизация
  • В поле Описание пишем понятное нам название маршрута.
  • В поле Установить направление выбираем Внутренние номера и в нижнем поле автоматически появится только что созданный нами пользователь внутреннего номера.

Остальные поля оставляем по умолчанию.

Настройка исходящей маршрутизации

Для совершения звонков необходимо настроить исходящую маршрутизацию. Для этого выбираем в меню Подключения Исходящая маршрутизация и жмём Добавить исходящий маршрут

Исходящая маршрутизация
Исходящая маршрутизация
  • В поле Название маршрута пишем понятное нам название маршрута.
  • В поле Последовательность транков для совпавших маршрутов выбираем транки, через которые мы будем совершать исходящие вызовы.

Вкладка Правила набора аналогична уже рассмотренной нами вкладке Правила для манипуляции набранными номерами из настроек транка

Правила набора
Правила набора

Следовательно заполняем её также, как и выше.

На этом настройки шлюза и сервера завершены, можно установить и настроить софтфон на свой вкус и начинать звонить через компьютер.

Это минимальная настройка. Если установить дополнительные модули (меню Админ → Управление модулями), то можно настроить очереди звонков, телефонное меню, условия по времени и многое другое.

Оставьте комментарий