отмена
Отображаются результаты для 
Вместо этого искать 
Вы имели в виду: 

Multilevel Precedence and Preemption (MLPP)

Введение.

Функция MLPP позволяет определенным пользователям совершать более приоритетный звонок, который может прерывать уже установленный разговор. 

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

- вызов между внутренними абонентами;

- число тайм-слотов в Е-потоке, не способное обработать количество вызовов, генерируемое пользователями;

- ограничение полосы пропускания;

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

Конфигурация CUCM.

Первым шагом в настройке MLPP является конфигурация основных значений Enterprise Parameters:

  • MLPP Preemption Setting: включение возможности перенимания менее приоритетного звонка;
  •  MLPP Domain Identifier: в CUCM по умолчанию создан нулевой домен, я рекомендую без крайней необходимости его не менять;

 

Остальные функции являются дополнительными и их изменения не являются обязательными.

После применения настроек, все телефоны в системе совершат рестарт. Часть аппаратов, работающих по протоколу SIP, сможет совершать приоритетные вызовы с помощью появившихся Priority Soft Keys. Градацию приоритетов можно посмотреть здесь.

Для выбора приоритета необходимо поднять трубку (New Call) и нажать More->PrecLevel:

После чего остается набрать номер нужного абонента.

Второе, что необходимо сделать, - это создать домен на странице System->Namespace->Resource Priority Namespace Network Domain. Согласно документации, существует определенный перечень доменных имен, зарегистрированных в CUCM.

Важно отметить, что каждому имени соответствует определенный приоритет:

CUC, DRSN – приоритет 9

Q735 – 4,

DSN д.р. – приоритет 0

 

Шаг третий – настройка телефонов.

Есть два пути конфигурации телефонов для использования MLPP:

  1. Настройка каждого отдельного телефона через страницу устройства;
  2. Настройка Common Device Configuration и применение для каждого необходимого устройства;

Рассмотрим второй способ.

На странице Device->Phone Settings->Common Device Configuration необходимо создать новый профиль конфигурации, в котором будут указаны значения работы MLPP, после чего применяем этот профиль на странице телефона (возможно использование  Bulk Administration Tool).

 

 

Примечание:

Если на странице телефона выбран подобный профайл, но настройки MLPP отличаются от настроек по умолчанию, то настройки на странице будут иметь приоритет перед профайлом.

 

Четвертым и важным шагом является создание Translation Pattern, с помощью которой звонку будет присваиваться приоритет в случаях, когда используется SCCP-телефон, либо пользователь не желает использовать Soft Keys.

В данном примере мы создаем трансляцию вида 90.XXXX, в которой заданы MLPP Precedence, RPNND. 

 

 

А так же будет будет отцепляться префикс 90.

Примечание:

С помощью Partition и CSS можно ограничить доступ до данной Translation Pattern,а так же, к примеру, убрать необходимость набора префиксов.

Результат.

Рассмотрим результат настройки MLPP для двух значений параметра Busy Trigger на странице DN телефона "рядового сотрудника".

Согласно документации значение Busy trigger играет важную роль.

 

Значение Busy Trigger – 2

Сперва производим «обычный звонок» с одного телефона на другой, после чего делаем приоритетный звонок через трансляцию, либо с использованием Soft Key.

Если "рядовой" сотрудник использует телефон  SCCP:

Executive Override

Flash Override

В зависимости от выбранного с помощью Soft Key приоритета, либо MLPP Precedence Level в Translation Pattern на экране будет отображаться разное количество квадратов определенного цвета, сигнализируя о важности вызова.

Если телефон сотрудника 9971, то в треугольнике будет отображаться приоритет, зависящий все так же от Soft Key, или выбранного в трансляции Resource Priority Namespace Network Domain.

 

Значение Busy Trigger – 1

В данном случае при поступлении приоритетного звонка разговор оборвется и оба участника начнут слышать тоновый гудок. После завершения рутинного звонка (завершение может быть осуществлено либо вызываемым пользователем, либо самим CUCM  по истечении таймера Precedence Alternate Party Timeout, указываемого в Enterprise Parameters) на телефон сотрудника поступит приоритетный вызов.

Техническая сторона.

Рассмотрим SDI/SDL трейсы для нескольких вариантов выполнения приоритетных звонков.

  1. Звонок с помощью Soft Keys в сторону 9971.

В зависимости от выбора приоритета в исходящем от CUCM запросе INVITE будет изменяться значение поля Resource-Priority (в данном примере используется Resource Priority Namespace Network Domain - q735):

INVITE sip:00fdec13-b39d-4afd-a6ed-7b16f403e04c@142.102.64.47:49799;transport=tcp SIP/2.0
Via: SIP/2.0/TCP 142.100.64.12:5060;branch=z9hG4bK6f632a4fbc
From: <sip:2003@142.100.64.12>;tag=11650~b9838bc9-5583-408a-9aaa-e3b9d50e9175-39994849
To: <sip:2002@142.100.64.12>
Date: Sat, 14 Feb 2015 11:42:08 GMT
Call-ID: 802fed80-4df13490-59-c40648e@142.100.64.12
Supported: timer,resource-priority,replaces
Min-SE:  1800
User-Agent: Cisco-CUCM9.1
Allow: INVITE, OPTIONS, INFO, BYE, CANCEL, ACK, PRACK, UPDATE, REFER, SUBSCRIBE, NOTIFY
CSeq: 101 INVITE
Expires: 180
Allow-Events: presence
Call-Info: <urn:x-cisco-remotecc:callinfo>; security= NotAuthenticated; orientation= from; gci= 2-33; call-instance= 1
Send-Info: conference, x-cisco-conference
Alert-Info: <file://Precedence-Ring/>
Require: resource-priority

Resource-Priority: q735.4 - последняя цифра отвечает за передаваемый приоритет
Remote-Party-ID: <sip:2003@142.100.64.12;x-cisco-callback-number=2003>;party=calling;screen=yes;privacy=off
Contact: <sip:2003@142.100.64.12:5060;transport=tcp>
Max-Forwards: 69
Content-Length: 0

 

  1. Звонок через трансляцию 90.ХХХХ на номер 2004 (CIPC).

01346277.006 |03:34:46.991 |AppInfo  |Digit analysis: match(pi="2", fqcn="2003", cn="2003",plv="5", pss="", TodFilteredPss="", dd="902004",dac="0")
|PatternPrecedenceLevel=ExecutiveOverride
|ResourcePriorityNamespace=drsn
Далее в трейсах можно найти подобное сообщение:
01346295.000 |03:34:46.993 |SdlSig   |StationCallPreemptReq                  |active10                       |StationCdpc(2,100,59,12)         |StationD(2,100,58,12)            |2,100,13,28941.20^142.102.64.48^SEP54781A1D0E83 |[R:N-H:0,N:3,L:0,V:0,Z:0,D:0] PreemptionType=8

После чего следует разрыв соединения для ранее установленного разговора:

01346304.000 |03:34:46.994 |SdlSig   |AuDisconnectRequest                    |wait                           |ConnectionManager(2,100,207,1)   |MatrixControl(2,100,135,17)      |2,100,13,28941.20^142.102.64.48^SEP54781A1D0E83 |[R:N-H:0,N:0,L:0,V:0,Z:0,D:0] CI1=39994826 CI2=39994827

  1. Звонок через трансляцию 90.ХХХХ (Resource Priority Namespace Network Domain-drsn) на 2002 (9971):

01347169.006 |03:35:25.713 |AppInfo  |Digit analysis: match(pi="2", fqcn="2003", cn="2003",plv="5", pss="", TodFilteredPss="", dd="902002",dac="0")
|PatternPrecedenceLevel=ExecutiveOverride
|ResourcePriorityNamespace=drsn

Исходящий в сторону 9971 INVITE:

INVITE sip:00fdec13-b39d-4afd-a6ed-7b16f403e04c@142.102.64.47:49580;transport=tcp SIP/2.0
Via: SIP/2.0/TCP 142.100.64.12:5060;branch=z9hG4bK536439797c
From: <sip:2003@142.100.64.12>;tag=11558~b9838bc9-5583-408a-9aaa-e3b9d50e9175-39994835
To: <sip:2002@142.100.64.12>
Date: Sat, 14 Feb 2015 11:35:25 GMT
Call-ID: 8ffb0200-4df132fd-41-c40648e@142.100.64.12
Supported: timer,resource-priority,replaces
Min-SE:  1800
User-Agent: Cisco-CUCM9.1
Allow: INVITE, OPTIONS, INFO, BYE, CANCEL, ACK, PRACK, UPDATE, REFER, SUBSCRIBE, NOTIFY
CSeq: 101 INVITE
Expires: 180
Allow-Events: presence
Call-Info: <urn:x-cisco-remotecc:callinfo>; security= NotAuthenticated; orientation= from; gci= 2-26; call-instance= 2
Send-Info: conference, x-cisco-conference
Alert-Info: <file://Precedence-Ring/>
Require: resource-priority

Resource-Priority: drsn-000000.9 - последняя цифра все так же отвечает за приоритет, последовательность нулей является идентификатором MLPP домена
Remote-Party-ID: <sip:2003@142.100.64.12;x-cisco-callback-number=2003>;party=calling;screen=yes;privacy=off
Contact: <sip:2003@142.100.64.12:5060;transport=tcp>
Max-Forwards: 69
Content-Length: 0

Для Resource Priority Namespace Network Domain- cuc

|ResourcePriorityNamespace=cuc

Resource-Priority: cuc-000000.9

|ResourcePriorityNamespace=Q735

Resource-Priority: Q735-000000.4

Остается непонятным, почему приоритет в INVITE отличается от приоритета, отображаемого на телефонах. Могу лишь предполагать, что телефон банально не запрограммирован отображать приоритет выше 4ого.

 

История версий
Редакция №
1 из 1
Последнее обновление:
‎02-19-2015 01:51 AM
Автор обновления:
 
Комментарии
New Member

Кирилл, добрый день!

 

Есть следующая проблема с MLPP. Даже при использовании его только для индикации, без вклинивания в разговор на телефоне 9971, при звонках на внешние SIP транки, в транк уходит SIP сообщение с полями (например):

Require: resource-priority
Resource-Priority: drsn-000000.0

 

Внешние системы его не понимают и вызов дропается. При этом на самом SIP транке никаких настроек приоритетных вызовов нет. Есть ли возможность как-то не отправлять эту информацию во внешние транки? Чтобы это использовалось только при звонках внутри CUCM?

 

Артем

Cisco Employee

Артем, здравствуйте!

Такое можно будет сделать только с помощью скрипта на SIP-транке/

Надо просто понять, что именно убрать нужно, если убрать оба заголовка, то можно попробовать сделать вот так:

M = {}
 function M.outbound_INVITE(msg)
     msg:removeHeader("Resource-Priority", "Require")
 end
 return M

Надо только проверить синтаксис для двух заголовков, для одного из них скрипт будет работать точно.

Regards,

Kirill