AF
Asterisk Forum
обсуждения телефонии, VoIP и IP-PBX
12разделов
5 423тем
34 385сообщений
← К списку тем

Странное поведение Asterisk при подключение Goip (SIP response 603 "Declined")

Asterisk IP PBX 3 сообщений -
#1

Купили на офисный сервачок, очередное расширение в виде 4 портового Goip.
И тут начались проблемы. Когда загрузка возрастает начинаются частые отказы, которые выражаются на в возврате статуса Bisy от многих транков. Что самое интересное далеко не всегда отказы от транков которые смотрят на Goip, а и от других которые есть на сервере, например от того же Zadarma. Или датагруп.

Пример такого отказа :

-- Executing [s@macro-dialout-trunk:17] Macro("SIP/916-00003cd2", "dialout-trunk-predial-hook,") in new stack
== Begin MixMonitor Recording SIP/916-00003cd2
-- Executing [s@macro-dialout-trunk-predial-hook:1] MacroExit("SIP/916-00003cd2", "") in new stack
-- Executing [s@macro-dialout-trunk:18] GotoIf("SIP/916-00003cd2", "0?bypass,1") in new stack
-- Executing [s@macro-dialout-trunk:19] GotoIf("SIP/916-00003cd2", "0?customtrunk") in new stack
-- Executing [s@macro-dialout-trunk:20] Dial("SIP/916-00003cd2", "SIP/out_zadarma/79121555369,300,") in new stack
== Using SIP RTP TOS bits 184
== Using SIP RTP CoS mark 5
-- Called out_zadarma/79121555369
== Manager 'stats' logged on from 10.1.10.204
-- Got SIP response 603 "Declined" back from 176.9.145.115
-- SIP/out_zadarma-00003cd3 is busy
== Everyone is busy/congested at this time (1:1/0/0)
-- Executing [s@macro-dialout-trunk:21] NoOp("SIP/916-00003cd2", "Dial failed for some reason with DIALSTATUS = BUSY and HANGUPCAUSE = 21") in new stack
-- Executing [s@macro-dialout-trunk:22] Goto("SIP/916-00003cd2", "s-BUSY,1") in new stack
-- Goto (macro-dialout-trunk,s-BUSY,1)


или еще вариант, поинтереснее :


Begin MixMonitor Recording SIP/913-00003d1b
-- Executing [s@macro-dialout-trunk:14] Set("SIP/913-00003d1b", "custom=SIP/433602034") in new stack
-- Executing [s@macro-dialout-trunk:15] ExecIf("SIP/913-00003d1b", "0?Set(DIAL_TRUNK_OPTIONS=M(setmusic^default))") in new stack
-- Executing [s@macro-dialout-trunk:16] ExecIf("SIP/913-00003d1b", "0?Set(DIAL_TRUNK_OPTIONS=M(confirm))") in new stack
-- Executing [s@macro-dialout-trunk:17] Macro("SIP/913-00003d1b", "dialout-trunk-predial-hook,") in new stack
-- Executing [s@macro-dialout-trunk-predial-hook:1] MacroExit("SIP/913-00003d1b", "") in new stack
-- Executing [s@macro-dialout-trunk:18] GotoIf("SIP/913-00003d1b", "0?bypass,1") in new stack
-- Executing [s@macro-dialout-trunk:19] GotoIf("SIP/913-00003d1b", "0?customtrunk") in new stack
-- Executing [s@macro-dialout-trunk:20] Dial("SIP/913-00003d1b", "SIP/433602034/0433560284,300,") in new stack
== Using SIP RTP TOS bits 184
== Using SIP RTP CoS mark 5
-- Called 433602034/0433560284
-- Got SIP response 480 "Temporarily Unavailable (Call limit)" back from 155.98.231.66
-- SIP/433602034-00003d1c is circuit-busy
== Everyone is busy/congested at this time (1:0/1/0)
-- Executing [s@macro-dialout-trunk:21] NoOp("SIP/913-00003d1b", "Dial failed for some reason with DIALSTATUS = CONGESTION and HANGUPCAUSE = 19") in new stack
-- Executing [s@macro-dialout-trunk:22] Goto("SIP/913-00003d1b", "s-CONGESTION,1") in new stack


Попытка набора вернула 480, хотя транк в данный момент не занят!!


В точности такая же картина и с другими транками.

Попробовал отловить проблему, решил что Goip неверно отдает ошибки занятости или т п, поставил промежуточный сервер на нем простенький диалплан который отслеживает занятость транков и возвращает в случаи повторного набора по занятому транку
Код:
exten => s,n,HangUp(2)

Результата не принес - ситуация почти в точности такая же.

Что интересно при отключение данного девайса, и переключение данных каналов на модемы E1550 (т е нагрузка на сервере не уменьшается), ситуация почти моментально выправляется.

Что делать, и куда смотреть не представляю, прошу совета общественности.
Заранее благодарю.
#2

И что ни у кого никаких мыслей ? Хотя бы в какую сторону смотреть ?
#3

603 - это DND