Настройка АТС Asterisk для использования услуги «МультиФон»

Некоторое время назад Мегафон начал предоставлять уникальную в рамках российских операторов сотовой связи услугу — входящие/исходящие вызовы по протоколу SIP. На базовом уровне это означает появление у рядового клиента двух новых возможностей:

  • Переадресация вызовов со своего федерального или прямого номера в многоканальном (!) режиме на любое SIP-совместимое устройство (программный телефон, IP-телефон);
  • Исходящие междугородние и мобильные звонки с SIP устройства по тарифам IP-телефонии;

Поскольку сервер телефонии Asterisk работает по протоколу SIP и является полноценной АТС с самым современным функционалом, у корпоративных пользователей появляются более «продвинутые» варианты использования услуги, такие как: запись переговоров, голосовая почта, голосовое меню (IVR), черный список, и даже очереди call-центра.

В статье предлагается упрощенная, пошаговая инструкция по настройке Asterisk для использования «МультиФон».

1. Подключение услуги у оператора

Наиболее доступный вариант подключения услуги — USSD запрос *137#. В ответ придет SMS с паролем для SIP-аккаунта. Для дальнейшей настройки АТС ничего больше не требуется.

2. Настройка Asterisk на примере FreePBX

Создание транка:

Опции для PEER:

defaultuser=79XXXXXXXXX
fromuser=79XXXXXXXXX
host=multifon.ru
fromdomain=multifon.ru
type=peer
insecure=invite
dtmfmode=inband
disallow=all
allow=alaw
nat=yes
secret=<пароль>

Строка регистрации:

79XXXXXXXXX:<пароль>@multifon.ru:5060/79XXXXXXXXX

Проверка успешности регистрации АТС на сервере Мегафона выполняется командой sip show registry из консоли (CLI) Asterisk:

line24*CLI> sip show registry
Host Username Refresh State Reg.Time
multifon.ru:5060 79312553709 3585 Registered Tue, 03 May 2011 17:56:40

Если регистрация не прошла, рекомендуем установить параметр

srvlookup=yes

в файле /etc/asterisk/sip_general_custom.conf – по крайней мере в ветке 1.6.0 он является необходимым.

Создание входящего маршрута:

Необходимо указать «Номер DID» в формате: 79XXXXXXXXX, включить «Сигнализацию вызова» (например, для корректной передачи музыки на удержании) и установить нужное направление.

Настройку АТС можно считать завершенной.

3. Переключение режима приема входящих звонков (роутинга)

Для управления режимом приема звонков в реальном времени, Мегафон предоставляет простой программный интерфейс на основе HTTP(S) запросов, которые можно выполнять прямо из адресной строки браузера. В качестве параметров передается номер абонента, пароль и идентификатор вида роутинга.

Предусмотрено 3 вида роутинга:

0 — прием только на мобильный
1 — только SIP (на сервер Asterisk)
2 — параллельный вызов

Пример переключения приема только на сервер Asterisk:

https://sm.megafon.ru/sm/client/routing/set?login=79XXXXXXXXX@multifon.ru&password=***&routing=1

Для просмотра текущей настройки используется дополнительный запрос в формате:

https://sm.megafon.ru/sm/client/routing/?login=79XXXXXXXXX@multifon.ru&password=***

4. Использование режима «параллельный вызов» в Asterisk

В режиме параллельный вызов (routing=2) оборудование оператора пытается маршрутизировать звонок одновременно в GSM и SIP сеть. Поскольку инициализация вызова в SIP происходит как правило быстрее, появляются дополнительные возможности по управлению роутингом прямо из dial-плана Asterisk:

  • Например, при отдаче Answer(), звонок на мобильный уже не распределяется.
  • Hangup() в dial-плане отправит звонок только на мобильный.
  • Последовательный Answer() и Hangup() сигнализируют о том, что звонок принят, дальнейшей маршрутизации не требуется (полезно для организации черного списка).