Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.

...

Для всех транков (например, TRUNK_1, TRUNK_2, TRUNK_3) указать одну таблицу маршрутизации (например, MAIN). Все правила и условия для маршрутизации в конкретный транк указаны в отдельной таблице маршрутизации для этого транка (таблицы маршрутизации RT_1, RT_2, RT_3).  При добавлении транков в конфигурации необходимо создать соответствующую таблицу маршрутизации и добавить новое правило в таблицу MAIN.


Scroll Pagebreak

Пример конфигурации:

Блок кода
route-table MAIN
   rule 0
     action switch-route-table RT_1
   exit
   rule 1
     action switch-route-table RT_2
   exit
   rule 2
     action switch-route-table RT_3
   exit
 exit
 route-table RT_1
   rule 0
     action direct-to-trunk TRUNK_1
     condition 0 cdpn '100'
   exit
 exit
 route-table RT_2
   rule 0
     action direct-to-trunk TRUNK_2
     condition 0 cdpn '200'
   exit
 exit
 route-table RT_3
   rule 0
     action direct-to-trunk TRUNK_3
     condition 0 cdpn '300'
   exit
 exit
   trunk sip TRUNK_1
   route-table MAIN
   ...
 exit
   trunk sip TRUNK_2
   route-table MAIN
   ...
 exit
   trunk sip TRUNK_3
   route-table MAIN
   ...
 exit

В таком случае маршрутизация любого вызова из любого направления будет осуществляться по всем правилам всех таблиц маршрутизации до первого совпадения CdPN. Если совпадение не будет найдено, то вызов завершится кодом SIP 404 "Not Found".

Scroll Pagebreak

Маршрутизация на разные направления через последовательный каскад таблиц маршрутизации

Правила для маршрутизации добавляются в одну таблицу маршрутизации, при достижении ограничения количества правил (128) в качестве последнего правила добавляется переход на следующую таблицу маршрутизации.


Scroll Pagebreak

Пример конфигурации:

Блок кода
route-table RT_1
    rule 0
      action direct-to-trunk TRUNK_1
      condition 0 cdpn '100'
    exit
    rule 1
      action direct-to-trunk TRUNK_2
      condition 0 cdpn '200'
    exit
    rule 2
      action direct-to-trunk TRUNK_3
      condition 0 cdpn '300'
    exit
    ...
     rule 127
      action switch-route-table RT_2
    exit   
  exit
  route-table RT_2
    rule 0
      action direct-to-trunk TRUNK_4
      condition 0 cdpn '400'
    exit
    rule 1
      action direct-to-trunk TRUNK_5
      condition 0 cdpn '500'
    exit
    ...
    rule 127
      action switch-route-table RT_3
    exit   
  exit
  route-table RT_3
    ...
  exit
 ...
    trunk sip TRUNK_1
    route-table RT_1
    ...
  exit
    trunk sip TRUNK_2
    route-table RT_1
    ...
  exit
    trunk sip TRUNK_3
    route-table RT_1
    ...
  exit
    trunk sip TRUNK_4
    route-table RT_1
    ...
  exit
    trunk sip TRUNK_5
    route-table RT_1
    ...
  exit

...

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

...

Сценарий аналогичный примеру 1, за исключением того, что в таблице RT_3 настроено правило перехода к таблице RT_1. В данном случае логика обработки запроса будет аналогична примеру выше, т. к. при маршрутизации RT_1 уже была пройдена и повторный возврат к правилу rule 0 этой таблицы привел бы к зацикливанию вызова. 

Scroll Pagebreak

Настройка модификаторов
Якорь
mod-table
mod-table

...

Примечание

При применении на транке/абонентском интерфейсе модификаторов обоих типов одновременно, используется следующий порядок их обработки в зависимости от направления модификации:

  • IN — сначала применяется модификатор sip, затем — модификатор common;
  • OUT — сначала применяется модификатор common, затем — sip.

Scroll Pagebreak

Общие модификаторы

Пример использования модификатора common.

...

Блок кода
languagec#
INVITE sip:23002@192.168.80.27:5063 SIP/2.0
Via: SIP/2.0/UDP 192.168.80.135:5060;rport;branch=z9hG4bKPj69d21930-f472-4e64-8555-6b68a532deae
Max-Forwards: 70
From: "24001" <sip:24001@192.168.80.135>;tag=f3db1c01-0c06-45cf-8b4d-a233070ae693
To: "23002" <sip:23002@192.168.80.27>
Contact: <sip:24001@192.168.80.135:5060;transport=udp>
Call-ID: 977eea09afecfc44932d4d9c1b2eeb15
CSeq: 6757 INVITE
Allow: INVITE, ACK, BYE, CANCEL
Supported: 100rel, replaces, ice, timer
Call-Info: call to TRUNK_OUT; ESBC version: 1.6.0.0085
Content-Type: application/sdp
Content-Length:   141

[SDP]...

Scroll Pagebreak

Использование условий в модификаторахмодификаторах 

В ESBC поддержано использование условий во всех типах SIP-модификаторов.

...

Список причин отбоя для перехода на следующее направлениенаправление 

Список причин отбоя для указания статус-кодов ответов SIP, по которым будет осуществляться перемаршрутизация вызовов и регистраций на альтернативное направление (следующий транк в транковой группе/следующее правило в таблице маршрутизации).

...

Описание всех команд для настройки причин отбоя для перехода на следующее направление приведено в разделе Настройки SIP-профиля Справочника команд CLI.

Scroll Pagebreak

Пример использования:

В таблице маршрутизации два правила, первое — направляет вызов в TRUNK_GROUP, второе — направляет вызов в TRUNK_3.

...