В элементе <actions> описывается набор действий, выполняемых при срабатывании правила.
Формат описания элемента <actions> имеет следующий вид:
<actions> <set_options/> <cgpn/> <cdpn/> <restore_cgpn/> <restore_cdpn/> <calling/> <called/> <final/> <alarm/> <log/> <external_routing/> </actions> |
где
Действия указываются в порядке их выполнения. Все действия являются опциональными.
<set_options>
Низкоуровневая операция, может использоваться для модификации специальных свойств вызова.
Используется для передачи опциональных параметров из маршрутизации в ядро.
Примеры использования действия <set_options> для передачи данных об услуге:
<actions> <set_options> <option key="feature" value="activate"/> <option key="feature_code" value="CTR"/> <option key="feature_args" value="[options.feature_args]{a}"/> </set_options> </actions> |
<cgpn>
Операция модификации параметров номера вызывающего абонента.
<cgpn digits="Digits" nai="Nai" incomplete="boolean" npi="Npi" apri="Apri" screening="Screening" ni="Ni"/> |
где
Описание параметров "nai", "incomplete", "npi", "apri", "screening", "ni" аналогично описанию параметров элемента "cgpn" секции "conditions".
<cdpn>
Операция модификации параметров номера абонента Б.
<cdpn digits="Digits" nai="Nai" incomplete="boolean" inni="Inni" npi="Npi" ni="Ni"/> |
где
<restore_cgpn>
Восстановление исходных значений параметров номера вызывающего абонента, которые были при входе в контекст маршрутизации.
Этот элемент атрибутов не имеет.
<restore_cdpn>
Восстановление исходных значений параметров номера вызываемого абонента, которые были при входе в контекст маршрутизации.
Этот элемент атрибутов не имеет.
<calling>
Модификация параметров доступа вызывающего абонента.
<calling category="atomType" caller_id="stringType" display_name="stringType" sorm_digits="stringType" sorm_ni="atomType"/> |
Синтаксис атрибута "caller_id" аналогичен полю "digits" в "cgpn".
Описание параметров аналогично описанию параметров "calling" раздела "conditions".
Установка номера АОН. Синтаксис атрибута "digits" аналогичен полю "digits" в "cgpn".
Параметр display_name позволяет модифицировать имя абонента А. Так же в данном поле можно использоваться следующие МАКРО-переменные %REGION%, %CITY%, %OPERATOR%. В этом случае возьмется соответствующее поле из реестра российского плана нумерации.
Пример установки "caller_id", добавление "8" к номеру из "cgpn":
<conditions> <cgpn digits="%"/> </conditions> <actions> <calling caller_id="8{%}"/> </actions> |
<called>
Модификация параметров доступа вызываемого абонента.
<called sorm_digits="stringType" sorm_ni="atomType"/> |
Описание параметров аналогично элементу "called" раздела "conditions".
<final value="true">
Установка признака финальной маршрутизации. Набор номера Б завершен (срабатывает таймера окончания набора) либо номер полный (пришел в режиме "enblock").
<alarm>
Добавление аварийного события на ECSS-10.
<alarm severity="alarmSeverity" value="string"/> |
%TAG%
- значения поля tag;%CDPN.NAI%
- значение nai для вызываемого абонента;%CDPN.NI%
- значение ni для вызываемого абонента;%CDPN.INCOMPLETE%
- значение incpomlete для вызываемого абонента;%CDPN.INNI%
- значение inni для вызываемого абонента;%CDPN.NPI%
- значение npi для вызываемого абонента;%CDPN.DIGITS%
- номер для вызываемого абонента;%CGPN.NAI%
- значение nai для вызывающего абонента;%CGPN.NI%
- значение ni для вызывающего абонента;%CGPN.INCOMPLETE%
- значение incpomlete для вызывающего абонента;%CGPN.NPI%
- значение npi для вызывающего абонента;%CGPN.APRI%
- значение apri для вызывающего абонента;%CGPN.SCREENING%
- значение screening для вызывающего абонента;%CGPN.DIGITS%
- номер вызывающего абонента;%DOMAIN%
- домен, в рамках которого маршрутизировался данный вызов;%ISFINAL%
- значение параметра isFinal;%CONTEXTNAME%
- имя контекста маршрутизации;%IFACEA%
- интерфейс абонента А;%DATETIME%
- время, в которое была выполнена маршрутизация.<log>
Создать запись в системный журнал.
<log severity="logSeverity" value="string"/> |
%TAG%
- значения поля tag;%CDPN.NAI%
- значение nai для вызываемого абонента;%CDPN.NI%
- значение ni для вызываемого абонента;%CDPN.INCOMPLETE%
- значение incpomlete для вызываемого абонента;%CDPN.INNI%
- значение inni для вызываемого абонента;%CDPN.NPI%
- значение npi для вызываемого абонента;%CDPN.DIGITS%
- номер для вызываемого абонента;%CGPN.NAI%
- значение nai для вызывающего абонента;%CGPN.NI%
- значение ni для вызывающего абонента;%CGPN.INCOMPLETE%
- значение incpomlete для вызывающего абонента;%CGPN.NPI%
- значение npi для вызывающего абонента;%CGPN.APRI%
- значение apri для вызывающего абонента;%CGPN.SCREENING%
- значение screening для вызывающего абонента;%CGPN.DIGITS%
- номер вызывающего абонента;%DOMAIN%
- домен, в рамках которого маршрутизировался данный вызов;%ISFINAL%
- значение параметра isFinal;%CONTEXTNAME%
- имя контекста маршрутизации;%IFACEA%
- интерфейс абонента А;%DATETIME%
- время, в которое была выполнена маршрутизация.<external_routing>
Вызов внешнего сервиса маршрутизации (в настоящий момент поддерживается только внешняя маршрутизации по RADIUS).
<external_routing id="stringType" service="stringType" timeout="positiveIntegerType"/> |
Пример вызова внешней маршрутизации с использованием RADIUS-серверов с именами master и backup, тайм-аутом на запрос в 1 секунду:
<actions> <external_routing id="master;backup" service="radius_route_service" timeout="1000"/> </actions> |