Поддержка кодов ответа переадресации 3xx SIP.

S
Автор Sergiiy
Обновлено 1 год назад

Flysip Softswitch можно настроить так, чтобы он реагировал на ответы 301 Moved Permanently, 302 Moved Temporary и 300 Multiple Choices, полученные от поставщика при маршрутизации вызова.

  • Ответы 301 Moved Permanently и 302 Moved Temporaries предписывают программному коммутатору отправить еще одно INVITE на SIP URI, указанный в поле Contact ответа SIP. Если поле «Контакт» содержит несколько URI, используется первый из них. Если UA-получатель отвечает каким-либо кодом ошибки, то программный коммутатор продолжает поиск, выбирая следующую запись группы маршрутизации.
  • 300 Multiple Choices позволяет искать несколько URI из поля «Контакт» ответа SIP. URI сортируются по значению параметра q= URI от большего к меньшему и пробуются один за другим. Если все попытки перенаправления не увенчались успехом, программный коммутатор продолжает работу со следующей записью группы маршрутизации.

Эта функция управляется в свойствах Vendor Connection полем  Accept 3xx Redirects  и сопровождается параметром Redirect Depth Limit , который управляет максимальным количеством последующих перенаправлений, когда перенаправленный вызов получает другой ответ 3xx. В случае перенаправления 300 Multiple Choices ограничение глубины перенаправления ограничивает максимальное количество попыток поиска.    

Обработка ответов 3xx описана в RFC 3261.

Записи CDR для попыток перенаправления вызова (как успешных, так и неудачных) записываются с исходным идентификатором соединения поставщика и используют точно такой же маршрут установки пункта назначения, который был выбран первоначально. Исходящий CLD берется непосредственно из поля 3xx Contact, и перевод не применяется.

Все тайм-ауты применяются к каждой попытке перенаправления на основе тайм-аутов, настроенных в Соединении и маршруте из набора назначения, как если бы каждый из URI был отдельной записью маршрутизации.

Пример заголовка Contact с несколькими URI в ответе 300 с несколькими вариантами ответов:

Contact: sip:[email protected];q=0.99, sip:[email protected];q=1.00, sip:[email protected];q=0.98

Если параметр «Принимать перенаправления 3xx» включен, а параметр «Ограничение глубины перенаправления» больше 3, то    

вызов будет отправлен сначала на 4.4.4.4 с CLD=111111111111, если он не подключен вовремя,

5.5.5.5 можно попробовать с CLD=0001111111111111, если вызов не завершается (сбрасывается с ошибкой, тайм-аутом и т. д.),

в последнем 6.6.6.6 вызов будет отправлен с CLD=299111111111111

** Поддержка «300 множественных вариантов выбора» и «301 перемещен навсегда» была реализована с версии 5.1.

Оцените эту статью