Интеграция Lync с АТС

В компании имеется традиционная АТС, от которой к маршрутизатору Cisco 3845 приходит поток E1, он и используется для передачи аудио-видео трафика. Так как продукт MS Lync 2013 относится к IP-телефонии, то было решено задействовать ресурсы АТС (телефонные линии и 4х-значные внутренние номера, стационарные телефоны) и интегрировать аппаратный и программный комплексы.

Чтобы не было путаницы между внутренними номерами АТС и Lync, нужно добавить дополнительный код (цифру) для Lync-номеров. Решено было дополнительный код сделать из 3х цифр (666), таким образом для дозвона с телефонного аппарата на “компьютер” необходимо набирать 7 цифр, а также включить режим Enterprise Voice, по умолчанию используется режим PC-to-PC only (см. рис. 3). В этом случае пользователь Lync сможет не только совершать исходящие звонки на стационарный телефон, но и принимать с него входящие.

Теперь нужно телефонный номер с дополнительным кодом закрепить за пользователем. Делается это в разделе Users, двойным щелчком левой кнопки мыши открываем свойства пользователя, в поле Line URI вводим номер телефона tel:6663477, а в поле Telephony выбираем Enterprise Voice при этом на сервере появится 2 дополнительные поля – Dial Plan Policy и Voice Policy - для применения особых политик (не глобальных), а в клиенте Lync - новый режим набора номера и возможность создания переадресации.

Если администратору нужно включить такой же “звонящий” режим, как и другим работникам, то делается это с применением следующих командлетов PowerShell:

Set-CsUser –Identity <sip> или “имя” -EnterpriseVoiceEnabled $True,

то есть

Set-CsUser -Identity dudkin@es -EnterpriseVoiceEnabled $True,
для указания номера телефона нужно выполнить:
Set-CsUser -Identity <sip> или “имя” –LineURI <tel:номер телефона>, 

то есть
Set-CsUser -Identity dudkin@es –LineURI tel:6663477

На сервере Lync за входящие и исходящие звонки отвечает раздел Voice Routing (маршрутизация звонков), в который входят 5 компонентов Dial Plan, Voice Policy, Route, PSTN Usage, Trunk Configuration, расположенные в соответствующих вкладках. Путь проходит вызов от абонента-источника до абонента-получателя по следующей схеме:

Набор номера->Правила преобразования номера->Голосовая политика->PSTN Usage->Маршрут->Trunk Configuration->АТС

 Опишем эти комппоненты.

Dial Plan (план набора) содержит в себе правила набора или нормализации номера (normalization rules), которые необходимы для преобразования длинного номера в более короткий и\или удобный. Правила набора номера чётко описывают схему следования цифр, набираемых пользователем для дозвона своему собеседнику. Они представляют собой регулярные выражения, большую часть которых можно создавать с помощью мастера, но существуют расширенные значения выражений, которые нужно вписывать вручную [https://rmamyshev.wordpress.com/2014/02/19/outbound-routing-lync-2013/ ].

Dial Plan можно создать Site Dial Plan (для сайта), Pool Dial Plan (для пула) и User Dial Plan (для пользователя) или использовать глобальный. Мы создадим свой отдельный план набора для пользователя по причине разделения сотрудников по отделам, группам и задачам. Применим 3 правила нормализации номера – для внутренних входящих (From) и исходящих звонков (To), и звонков в город (Into City) (см. рис. 5).

Рисунок 5. Создание правил набора номера.

Приведу несколько примеров регулярных выражений, которые можно создать с помощью мастера:

^(\d{4})$ - номер из любых 4х цифр;

^(666\d{4})$ - 7ми-значный номер, начинающийся на 666, а затем любые 4 цифры;

^666(\d{4})$ - при наборе 7ми-значного номера 666 отбрасывается.

Примеры регулярных выражений, вводимые вручную, так как в этом случае мастер недоступен:

^([6-8])(\d{4,})$ - под правило попадают номера, первая цифра которых может быть от 6 до 8, а затем 4 и более любых цифр;

^(?![6,8])(\d{4})$ - правилом будет пропускаться номер длиною в 4 цифры, кроме номеров, которые начинаются на 6 или 8.

Теперь созданный Dial Plan нужно присвоить соответствующим сотрудникам, делается это в свойствах пользователя в поле Dial Plan Policy.

После выполнения процедуры нормализации набранного номера при совершении звонка с Lync-клиента на стационарный телефон происходит проверка, может ли вызов идти дальше по маршруту. В этой проверке участвуют остальные три связанных между собой компонента: Voice Policy, Route, PSTN Usage.

Voice Policy (голосовая политика) состоит из следующих 2 компонентов – Route и PSTN Usage, имеет политику по умолчанию (Global). Если создавать свою политику, то её необходимо указать в свойствах пользователя в поле Voice Policy, иначе будет применяться глобальная политика и результат не будет ожидаемым.  

Route (маршрут) включает в себя регулярное выражение, ссылку на голосовой шлюз, через который проходит вызов и PSTN Usage.

PSTN Usage (тип вызовов) – содержат в себе маршруты. Типы вызовов можно использовать в разных политиках.

Trunk Configuration (настройка транка) – трансляция номеров на выходе. Здесь имеются Calling number translation rule (правила трансляции вызывающего номера) и Called number translation rule (правила трансляции вызываемого номера), которые применяются не к набираемому номеру, а к источнику (номеру абонента), так как городская АТС смотрит, от кого пришёл вызов и на основании этого уже решает, пускать дальше или нет.  

В нашем случае для дозвона клиенту на городской телефон нужно, чтобы номер звонящего начинался с 987 (условия городской АТС), что означает необходимость обрезать существующий (666) и добавить иной дополнительный код (987). То есть создаём правило трансляции вызывающего номера, которое состоит из следующего регулярного выражения: ^666(\d{4})$ -> (987\d{4})$1.  

В каждой вкладке имеется поле для проверки корректности созданных настроек, а также отдельная вкладка Test Voice Routing (см. рис. 5) для их совместного тестирования.

 

Продолжение следует...