Дерево страниц
Перейти к концу метаданных
Переход к началу метаданных

В элементе <actions> описывается набор действий, выполняемых при срабатывании правила.

Формат описания элемента <actions> имеет следующий вид:

<actions>
  <set_options/>
  <cgpn/>
  <cdpn/>
  <restore_cgpn/>
  <restore_cdpn/>
  <calling/>
  <called/>
  <final/>
  <alarm/>
  <log/>
  <external_routing/>
</actions>

где

  • set_options - установка различных параметров вызова;
  • cgpn - модификация параметров номера вызывающего абонента;
  • cdpn - модификация параметров номера вызываемого абонента;
  • restore_cgpn - восстановление параметров номера вызывающего абонента до значений, которые были при входе в текущий контекст (отмена изменений в рамках контекста);
  • restore_cdpn - восстановление параметров номера вызываемого абонента до значений, которые были при входе в текущий контекст (отмена изменений в рамках контекста);
  • calling - модификация параметров доступа вызывающего абонента (структура аналогична параметру "calling" из элемента <conditions>);
  • called - модификация параметров доступа вызываемого абонента для СОРМ (структура аналогична параметру "called" из элемента <conditions>);
  • final - установка признака окончания набора;
  • alarm - посылка аварии;
  • log - запись сообщения в лог;
  • external_routing - вызов внешнего сервиса маршрутизации (в данный момент поддерживается только внешняя маршрутизация по Radius).

Действия указываются в порядке их выполнения. Все действия являются опциональными.

<set_options>

Низкоуровневая операция, может использоваться для модификации специальных свойств вызова.
Используется для передачи опциональных параметров из маршрутизации в ядро, в переменные IVR скрипта.
Для того чтобы определить переменную IVR скрипта, поле key должно начинаться с  ivr_variable:.
Например, чтобы выставить IVR переменную с именем  CARD_PLATFORM_TO_NUMBER  поле key должно быть равно  ivr_variable:CARD_PLATFORM_TO_NUMBER.

Пример задания переменной IVR скрипта CARD_PLATFORM_TO_NUMBER. Переменная выставляется в символы, введенные после номера выхода на IVR скрипт:

<actions>
 <set_options>
  <option key="ivr_variable:card_platform_to_number" value="{def}"/>
 </set_options>
</actions>

<cgpn>

Операция модификации параметров номера вызывающего абонента.

<cgpn digits="Digits"
      nai="Nai"
      incomplete="boolean"
      npi="Npi"
      apri="Apri"
      screening="Screening"
      ni="Ni"/>

где

  • digits - маска модификации цифр номера или новые цифры номера.
    Подробное описание приведено в разделе Модификация цифр номера,

Описание параметров "nai", "incomplete", "npi", "apri", "screening", "ni" аналогично описанию параметров элемента "cgpn" секции "conditions".

<cdpn>

Операция модификации параметров номера абонента Б.

<cdpn digits="Digits"
      nai="Nai"
      incomplete="boolean"
      inni="Inni"
      npi="Npi"
      ni="Ni"/>

где

  • digits - маска модификации цифр номера или новые цифры номера, подробное описание приведено в разделе Модификация цифр номера,остальные параметры аналогичны параметрам элемента "cdpn" секции "conditions".

<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".

Пример установки "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"/>
  • severity - уровень важности аварийного события, возможные значения: warning, minor, major, critical, indeterminate, cleared;
  • value - строковое описание данного аварийного события. Строка описания поддерживает следующий набор макросов:
    • %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"/> 
  • severity - показатель критичности записи в системный журнал, возможные значения: error, warning, info;
  • value - текст записи в системный журнал. Строка описания поддерживает следующий набор макросов:
    • %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% - время, в которое была выполнена маршрутизация.

<cause>

Для того чтобы можно было выставить cause-ы, по которым необходимо выполнять маршрутизацию по козам, в блоке "Действие" необходимо добавить раздел "Причины для повторной маршрутизации". В данном разделе добавить три поля для ввода:

  • причины ACP (ACP causes) - список ACP козов;
  • причины ISUP (ISUP causes)- список ISUP козов;
  • причины SIP (SIP causes) - список SIP козов.
    На уровне контекста маршрутизации, блока actions добавляется блок cause:
<rule name="rule1">
  <actions>
    <cause acp="normal, bPtyBusy" isup="16,17,18" sip="401, 400"/>
  </actions>
</rule>

<external_routing>

Вызов внешнего сервиса маршрутизации (в настоящий момент поддерживается только внешняя маршрутизации по RADIUS).

<external_routing id="stringType"
                             service="stringType"
                             timeout="positiveIntegerType"/>
  • id - список имен RADIUS-серверов, на которые будут направляться запросы внешней маршрутизации. Список задается через точку с запятой. В случае указания нескольких серверов, на последующий сервер запрос пойдет только в том случае, если ранее стоящий сервер недоступен. Список серверов можно посмотреть командой @/domain/<DOMAIN>/radius/info@;
  • service - radius_route_service - внешняя маршрутизация по RADIUS;
  • timeout - время ожидания результата от сервиса внешней маршрутизации, в миллисекундах. По умолчанию установлено 500 мс. Если за данное время внешняя маршрутизация не завершится, система воспримет, что маршрутизация не внесла никаких изменений.

Пример вызова внешней маршрутизации с использованием RADIUS-серверов с именами master и backup, тайм-аутом на запрос в 1 секунду:

<actions>
 <external_routing id="master;backup" service="radius_route_service" timeout="1000"/>
</actions>

<ocdpn>

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

<ocdpn digits="Digits" 
       nai="Nai" 
       incomplete="boolean" 
       npi="Npi" 
       apri="Apri" 
       ni="Ni" 
       category="Category"/
  • digits - маска модификации цифр номера или новые цифры номера, подробное описание приведено в разделе Маска цифр номер;
  • nai - тип номера (NatureOfAddressInformation), принимает значения: subscriberNumber, unknown, nationalNumber, internationNumber;
  • incomplete - признак полного номера, принимает значения:
  • false - номер полный,
  • true - номер не полный;
  • npi - код плана нумерации (NumberingPlanIndicator), принимает значения: isdnTelephony, dataNumberingPlan, telexNumberingPlan, reserved1 (код 5), reserved2 (код 6), reserved3 (код 7);
  • apri - индикатор ограничения предоставления номера вызывающего абонента (AddressPresentationRestrictionIndicator):
    • presentationRestricted – запрет,
    • presentationAllowed – разрешение,
    • addressNotAvailable – недоступность номера;
  • ni - индикатор номера (NumberIndicator), принимает значения:
    • private - частная сеть;
    • local - местная сеть;
    • zone - зоновая сеть;
    • intercity - междугородная сеть;
    • international - международная сеть;
    • emergency – спецслужбы$
  • empty - присутствует ли в сигнализации вызова параметр OriginalCalledNumber (В случае, если данный параметр выставлен - все остальные параметры (digits, nai, incompele, npi, apri, ni) не должны выставляться
    • false - OriginalCalledNumber не присутствует в сигнализации;
    • true - OriginalCalledNumber присутствует;
  • category - категория абонента, может принимать строковое либо цифровое значение согласно таблице 1.

<restore_ocdpn>

Восстановление исходных значений параметров оригинального номера, на который был совершен вызов, которые были при входе в контекст маршрутизации.

Этот элемент атрибутов не имеет.

<empty_ocdpn>

Удалить из сигнализации параметр OriginalCalledNumber.

Этот элемент атрибутов не имеет.

  • Нет меток