Страница 1 из 1

Аналог monitor_early_media_fail

Добавлено: 22 июн 2017, 01:20
TosyBosy
Коллеги доброй ночи! Нужен ваш добрый совет! Задача - завершать вызов если сторона Б даёт 183 Session Progress. Можно не сразу, хотя бы секунд через 10. В FreeSWITCH для этого есть monitor_early_media_fail. А куда копать если на борту Asterisk?

Re: Аналог monitor_early_media_fail

Добавлено: 22 июн 2017, 09:31
ded
Анализировать ответ, вычитывая через функцию SIP_HEADER
*CLI> core show function SIP_HEADER

-= Info about function 'SIP_HEADER' =-

[Synopsis]
Gets the specified SIP header from an incoming INVITE message.

[Description]
Since there are several headers (such as Via) which can occur multiple times,
SIP_HEADER takes an optional second argument to specify which header with
that name to retrieve. Headers start at offset '1'.

[Syntax]
SIP_HEADER(name[,number])

[Arguments]
number
If not specified, defaults to '1'.
и отправляя в Hangup через какую-то конструкцию типа
ExecIf(${foo}=183)?Hangup(16)

Re: Аналог monitor_early_media_fail

Добавлено: 22 июн 2017, 09:57
gosha
неотловится оно через SIP_HEADER

если только 183 было последним и проверить код последнего ответа.

Re: Аналог monitor_early_media_fail

Добавлено: 22 июн 2017, 10:28
ded

Re: Аналог monitor_early_media_fail

Добавлено: 22 июн 2017, 11:24
gosha
и где в той теме отлавливание 183 __штатными__ средствами ?