...
при внутренних сбоях, до согласования сессии;
при отбое с встречной стороны, кроме 3хх кодов SIP.
Scroll Pagebreak
Пример перебора правил:
В таблице маршрутизации два правила, первое направляет вызов в TRUNK_GROUP, второе направляет вызов в TRUNK_3, условия нигде не настроены. Приходит вызов и начинает маршрутизироваться по данной таблице маршрутизации. В результате вызов уходит на TRUNK_GROUP и оттуда в TRUNK_1, в случае если вызов через TRUNK_1 не установился (например, транк недоступен), то маршрутизация продолжает выполняться, вызов отправляется в TRUNK_2. Если попытка вызова в TRUNK_2 также завершилась неудачно, E-SBC переходит к RULE_2 и отправляет вызов в TRUNK_3. Если и здесь попытка установить вызов также оказалась неуспешной, то первое плечо отбивается, и вызов завершается, т. к. больше правил в таблице маршрутизации нет. Если попытка установить вызов успешна, то вызов устанавливается.
| Блок кода | ||
|---|---|---|
| ||
vesr# vesr# configure vesr(config)# esbc vesr(config-esbc)# route-table ROUTE_TABLE #Добавление первого правила с действием отправить вызов в транковую группу TRUNK_GROUP: vesr(config-esbc-route-table)# rule 0 vesr(config-esbc-route-table-rule)# action direct-to-trunk-group TRUNK_GROUP vesr(config-esbc-route-table-rule)# exit #Добавление второго правила с действием отправить вызов в транк TRUNK_3: vesr(config-esbc-route-table)# rule 1 vesr(config-esbc-route-table-rule)# action direct-to-trunk TRUNK_3 |
Пример работы условий:
В таблице маршрутизации два правила, у обоих есть условия по CGPN и CDPN. Например, приходит вызов, у которого номер А=23000, номер Б=24000. E-SBC заходит в RULE_1 и анализирует условие CONDITION_1, условие истинно, далее происходит анализ условия из CONDITION_2, условие также истинно. Значит правило RULE_1 подходит для маршрутизации, и вызов отправляется в TRUNK_1.
...

