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

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

<conditions>
  <calling/>
  <called>
  <cdpn/>
  <cgpn/>
  <rgn/>
  <time/>
  <date/>
  <weekday/>
  <timetable/>
  <tag/>
  <final/>
  <cause/>
  <ocdpn>
</conditions>

где

Каждый из указанных выше элементов в рамках <conditions> является опциональным и может быть использован не более одного раза.
Пустой набор критериев говорит об отсутствии ограничений.

<calling>

Параметры доступа вызывающего абонента.

<calling access_private="booleanType"
         access_local="booleanType"
         access_zone="booleanType"
         access_intercity="booleanType"
         access_international="booleanType"
         access_emergency="booleanType"
         have_access_to="atomType"
         city="stringType" 
         region="stringType" 
         operator="stringType"
         category="atomType"
         caller_id="stringType"
         display_name="stringType"
         sorm_digits="stringType"
         sorm_ni="atomType"
         interface_group="stringType"
         iface="binaryType"/>

где

Если вызов осуществляется абонентом ECSS-10, являющимся объектом контроля, то согласно 268 приказу набранный номер будет передан в ПУ СОРМ без изменений.

Таблица 1 – Категории абонента

Строковое значениеЦифровой код (ISUP)Цифровой код (АОН)
unknownAtThisTime0
operatorFrench1
operatorEngish2
operatorGerman3
operatorRussian4
operatorSpanish5
reserved9
ordinarySubscriber101 - ОАО "Ростелеком"
subscriberWithPriority114 - ООО "Эквант"
dataCall128 - ОАО "АРКТЕЛ"
testCall13
spare14
payphone156 - ЗАО "Компания ТрансТелеКом"
category0224
hotelsSubscriber2252 - ОАО "КОМСТАР-ОТС"
freeSubscriber226
paidSubscriber2277 - ЗАО "Синтерра"
localSubscriber2283 - ОАО "Вымпелком" (ранее ООО "СЦС Совинтел")
localTaksofon2299 - ОАО "Межрегиональный Транзит Телеком"
autoCallI240
semiautoCallI241
autoCallII242
semiautoCallII243
autoCallIII244
semiautoCallIII245
autoCallIV246
semiautoCallIV247

Атрибуты элемента <calling> являются опциональными, но должен быть указан хотя бы один атрибут.
Порядок указания атрибутов произвольный.

<called>

Параметры доступа вызываемого абонента.

<called sorm_digits="stringType" 
        sorm_ni="atomType"
        city="stringType" 
        region="stringType" 
        operator="stringType"/> 

где

Атрибуты элемента <called> являются опциональными, но должен быть указан хотя бы один атрибут.
Порядок указания атрибутов произвольный.

<cdpn>

Параметры номера вызываемого абонента.

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

где

<cgpn>

Параметры номера вызывающего абонента.

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

где

<rgn>

Параметры номера, который выполнил переадресацию

<rgn digits="Digits" 
     nai="Nai" 
     incomplete="boolean" 
     npi="Npi" 
     apri="Apri" 
     ni="Ni" 
     empty="Empty"/>

где

Для того, чтобы понять как будет обрабатываться правило с этим условием, требуется определиться откуда будет приходить вызов переадресацией. Если вызов приходит на SSW уже с признаком переадресации (это может быть поле Diversion в sip или redirecting number в isup), то проверка будет выполняться по указанному в признаке номеру. Если вызов был переадресован локально с использованием какой либо услуги cfu, то перед повторной маршрутизацией SSW поверяет, есть ли маршрут между абонентом который совершал переадресацию и номером куда переадресуется вызов. Только если этот маршрут найден, SSW начинает искать маршрут между звонящим абонентом и номером куда была совершена переадресация. 

<time>

Время суток, задается в виде: ЧЧ:ММ - ЧЧ:ММ, где ЧЧ - часы, ММ - минуты.

<time value="TimeMask"/>

где

<date>

Дата, задается в виде: ДД1.ММ1.ГГГГ1 - ДД2.ММ2.ГГГГ2, где ДД - день, ММ - месяц, ГГГГ - год.

<date value="DateMask"/>

где

value - маска даты. 

<weekday>

<timetable>

Имя расписания, которое будет использоваться для проверки при маршрутизации.

<timetable value="Timetable" />

где

Если одновременно указаны теги <time>, <weekdays>, <timetable>, то условие должно совпадать по всем параметрам.

Пример:

<timetable value="working_time" />


<tag>

Специальный параметр, который можно установить для вызова при маршрутизации.
Параметр действует только на этапе маршрутизации, устанавливается в правиле маршрутизации и в последующем используется для изменения отработки логики маршрутизации.

<tag value="Tag"/>

где

<final>

Признак финальной маршрутизации. Набор номера Б завершен (срабатывает таймера окончания набора) либо номер полный (пришел в режиме "enblock").

<final value="boolean"/>

где

<cause>

Причина разъединения предыдущей попытки вызова.
Механизм позволяет использовать режим маршрутизации по "Cause". Когда вызов с абонента А на абонента Б был завершен с определенным кодом завершения без фазы разговора, то выполняется повторная маршрутизация, в качестве одного из параметров указывается причина разъединения.
Если в системе корректно настроены правила маршрутизации по "Cause", то возможно осуществить перевод таких вызовов на различного вида автоинформаторы (переадресация на автоинформаторы с сообщениями типа "абонент временно недоступен", "линия перегружена", "абонент не существует" и другие).

<cause value="Cause"/>

где

<ocdpn>

Параметры оригинального номера, на который был совершен вызов.

<ocdpn digits="Digits" 
     nai="Nai" 
     incomplete="boolean" 
     npi="Npi" 
     apri="Apri" 
     ni="Ni" 
     empty="Empty" 
     category="Category"/>