Привет! В этой статье мы рассмотрим Partitions и Calling Search Space (CSS) в Cisco Unified Communications Manager (CUCM) , которые являются частью механизма Class of Control и применяются при разграничении доступов.
Partitions можно рассматривать как набор маршрутов, паттернов, номеров DN, каждый из которых может принадлежать к определенным разделам. CSS же представляет собой упорядоченный список Partitions. Чтобы совершить вызов Partition вызываемой стороны должен принадлежать CSS вызывающей стороны.
При попытке выполнить вызов CUCM просматривает CSS вызывающей стороны и проверяет, принадлежит ли вызываемая сторона Partition’у в CSS. Если это так, вызов направляется в Translation Pattern. Если нет, то вызов отклоняется или Translation Pattern игнорируется. Подробнее про маршрутизацию и Translation Pattern’ы можно прочить в наших статьях.
Можно назначить разные CSS IP-телефонам, номерам DN, переадресации всех вызовов (Call Forwarding All – CFA), переадресации без ответа (Call Forwarding No Answer - CFNA), переадресации вызовов в случае занятости (Call Forwarding Busy - CFB), шлюзов и паттернам Translation Pattern.
Разделы и CSS облегчают маршрутизацию вызовов, поскольку они делят план маршрутизации на логические подмножества на основе организации, местоположения и/или типа вызова.
Чтобы лучше понять, как все это работает, рассмотрим пример.
Пример использования Partitions и CSS
Этот пример иллюстрирует, как можно разграничить маршрутизацию звонка между пользователями в пределах организации.
Допустим, у нас имеется три группы пользователей:
- Стажеры (могут звонить только на внутренние номера)
- Работники (могут звонить на внутренние номера и совершать междугородние звонки)
- Руководство (могут звонить на внутренние номера, совершать междугородние и международные звонки)
Для каждого направления необходимо иметь Partition:
- Внутренние номера –Partition_1
- Междугородние звонки – Partition_2
- Международные звонки – Partition_3
Эти разделы отражают все возможные направления звонков. Все телефоны (номера DN) мы поместим в раздел Partition_1 (внутренние номера).
На шлюзе сконфигурировано два паттерна Route Patterns:
- Все звонки кроме международных (поместим в раздел Partition_2)
- Международные звонки (поместим в раздел Partition_3)
На основании этих ограничений создаем три CSS:
- CSS1 содержит разделы: Partition_1
- CSS2 содержит разделы: Partition_1, Partition_2
- CSS3 содержит разделы: Partition_1, Partition_2, Partition_3
Настраиваем телефоны:
- На телефонах стажеров указываем CSS1
- На телефонах работников указываем CSS2
- На телефонах руководства указываем CSS3
Теперь совершим тестовые звонки с заданными настройками.
Тест 1: Звонок с телефона стажера
Набран внутренний номер:
- Вызываемый абонент: Partition_1
- Разделы CSS вызывающего абонента: Partition_1
- Результат: Вызов выполнится (раздел Partition_1 включен в CSS)
Набран междугородний номер:
- Вызываемый абонент: Partition_2
- Разделы CSS вызывающего абонента: Partition_1
- Результат: Вызов не выполнится (раздел Partition_2 не включен в CSS)
Набран международный номер:
- Вызываемый абонент: Partition_3
- Разделы CSS вызывающего абонента: Partition_1
- Результат: Вызов не выполнится (раздел Partition_3 не включен в CSS)
Тест 2: Звонок с телефона работника
Набран внутренний номер:
- Вызываемый абонент: Partition_1
- Разделы CSS вызывающего абонента: Partition_1, Partition_2
- Результат: Вызов выполнится (раздел Partition_1 включен в CSS)
Набран междугородний номер:
- Вызываемый абонент: Partition_2
- Разделы CSS вызывающего абонента: Partition_1, Partition_2
- Результат: Вызов выполнится (раздел Partition_2 включен в CSS)
Набран международный номер:
- Вызываемый абонент: Partition_3
- Разделы CSS вызывающего абонента: Partition_1, Partition_2
- Результат: Вызов не выполнится (раздел Partition_3 не включен в CSS)
Тест 3: Звонок с телефона руководства
Набран внутренний номер:
- Вызываемый абонент: Partition_1
- Разделы CSS вызывающего абонента: Partition_1, Partition_2, Partition_3
- Результат: Вызов выполнится (раздел Partition_1 включен в CSS)
Набран междугородний номер:
- Вызываемый абонент: Partition_2
- Разделы CSS вызывающего абонента: Partition_1, Partition_2, Partition_3
- Результат: Вызов выполнится (раздел Partition_2 включен в CSS)
Набран международный номер:
- Вызываемый абонент: Partition_3
- Разделы CSS вызывающего абонента: Partition_1, Partition_2, Partition_3
- Результат: Вызов выполнится (раздел Partition_3 включен в CSS)
Таким образом, получается, что вызовы совершать можно, только если раздел Partition вызываемого абонента находится в CSS вызывающего.
Настройка
Начнем с настройки Partitions. В Cisco Call Manager Administration переходим во вкладку Call Routing → Class of Control → Partition и нажимаем Add New. Здесь в поле Name указываем название для раздела и нажимаем Save.
Теперь перейдем к созданию CSS. Для этого выберем вкладку Call Routing → Class of Control → Calling Search Space. Тут указываем имя в поле Name, из поля Available Partitions перенесем в поле Selected Partitions разделы, которые должен содержать CSS. Перенос осуществляется при помощи стрелочек. После чего нажимаем кнопку Save для сохранения.
После того как мы создали CSS и Partitions на наших серверах, применим их к устройствам. Рассмотрим это на примере настройки телефона. Для этого выбираем телефон, который мы хотим настроить во вкладке Device → Phone. В его настройках выбираем желаемую линию и нажимаем на нее, например Line [1] . В открывшемся окне в строке Route Partition в выпадающем списке выбираем раздел для этой линии. После этого нажимаем Save и возвращаемся назад.
Теперь нам осталось применить к телефону CSS. Здесь, в настройках телефона в поле Device Information находим строчку Calling Search Space и в выпадающем меню выбираем созданный ранее CSS. Затем сохраняем и применяем настройки.
Аналогично мы можем настраивать Partitions и CSS на других устройствах, паттернах и номерах.