пятница, 20 мая 2016 г.

Вызов точка-точка (FXO-FXS) между D-Link 7111S и Cisco SPA122

В небольшой организации потребовалось пробросить порт от аналоговой АТС в другой офис, где не было возможности использовать прямую телефонную пару от АТС. Переходить на IP для маленького офиса оказалось накладным, поэтому решили пробросить внутренний номер с АТС по SIP, используя пару шлюзов FXO и FXS.
Найти за недорого удалось лишь совершенно разные адаптеры D-Link 7111S (FXO) и Cisco SPA122 (FXS). Вот этот зоопарк мне и доверили подружить.


Принцип здесь стандартный - используем HotLine (автонабор нужного номера при снятии трубки или поступлении вызова на FXO) и Direct IP Dialing на обоих шлюзах, но вот подход к настройке весьма разный. Далее будет описана процедура настройки ключевых параметров обоих устройств без упоминания таких элементарных вещей, как настройки сети и т.п.
Предположим, что у D-Link будет IP-адрес 192.168.2.180, а у Cisco 192.168.2.181. На каждом из устройств должен быть специальный номер для взаимодействия. На D-Link это будет 702, на Cisco 701.

Начнём с D-Link 7111S.
1. Идём в меню Setup - VoIP Setup. Здесь нас интересует порт №2, тот который FXO (его мы будем подключать в порт аналоговой АТС). Оставим ему номер 702. На этот номер будет звонить FXS-шлюз, когда пользователь на его стороне снимет трубку. Поля User и User ID / Account заполняем как на скриншоте ниже. Остальные поля оставляем пустыми.


2. Идём в меню Advanced - VoIP - Hot Line. Здесь нас опять же интересует порт №2. Ставим галку напротив Hot Line и указываем номер FXS-шлюза (Cisco): 701. Т.е. при поступлении звонка на порт FXO будет автоматически вызван номер 701.


3. Для того, чтобы D-Link знал, по какому адресу находится номер 701, потребуется зайти в его встроенную телефонную книгу и указать там сопоставление этого номера с IP-адресом Cisco. Для этого идём в меню Advanced - VoIP - Phone book и добавляем туда одну запись (см. скриншот ниже)


На этом основная настройка D-Link 7111S закончена. Если возникнут проблемы с детектированием сигнала отбоя, то можно вручную откорректировать каденции в меню Advanced - VoIP - CPT/Cadence в разделе BTC. Однако шлюз способен сам распознавать сигналы и подстраиваться под них, поэтому в случае конкретно моей телефонной линии править ничего не пришлось.

Переходим к настройке Cisco SPA122.
На первый взгляд тут всё гораздо сложнее. Параметров намного больше, их группировка минимальна. Но фактически нам потребуются лишь немногие из них.
Идём в меню Voice - Line 1 и устанавливаем следующие параметры.
В разделе Proxy and Registration:
Proxy: пустой
Outbound proxy: пустой
Use outbound proxy: no
Register: no
Use OB Proxy in dialog: no
Make call wihout Reg: yes
Ans Call without reg: yes
В разделе Subscriber Information указываем номер на который будет звонить D-Link при поступлении вызова на его FXO-порт:
Display name: 701 
User ID: 701


Осталось реализовать Hot line. В Cisco SPA122 это реализуется не совсем явным образом - при помощи специальной директивы диалплана.
Настраивается он так-же в меню Voice - Line 1 в разделе Dial Plan. Для осуществления автоматического звонка на номер FXO-шлюза при снятии трубки добавляем в диалплан следующую директиву: P0<:702@192.168.2.180:5060>. Выглядеть диалплан будет так:


На этом настройка закончена. Теперь при снятии трубки на стороне Cisco SPA122 мы кратковременно услышим гудок самого SPA, а затем произойдёт соединение с D-Link и мы услышим уже сигнал ответа станции от аналоговой АТС.
При звонке на порт аналоговой АТС, вызывной индуктор распознаётся FXO-портом D-Link'а и звонок отправляется на Cisco SPA, где удалённый сотрудник сможет ответить на него сняв трубку на своём телефонном аппарате.

1 комментарий:

  1. Добрый день.
    Хочу реализовать подобную бюджетную связку со своей АТС через обычный внутренний порт (так как CO в станции нет).
    Подскажите можно ли сделать чтобы при звонке с SIP hotline будет коммутировать на FXO, которая будет подключена к обычному аналоговому порту АТС, и чтобы автоматически еще набирался номер абонента уже по нашей АТС?

    ОтветитьУдалить