VIDEOCHAT  ::   FAQ  ::   Поиск  ::   Регистрация  ::   Вход

SYSTEMSTATUS = APPERROR

Новичком считается только что прочитавший «Астериск - будущее телефонии»
http://asterisk.ru/knowledgebase/books
и пытающийся сделать большее

Модераторы: april22, Zavr2008

Ответить
Internetchik
Сообщения: 107
Зарегистрирован: 10 июл 2012, 10:38
Откуда: Алматы

SYSTEMSTATUS = APPERROR

Сообщение Internetchik »

Всем привет! Вылазит вот такая трабла при входящем звонке:
VERBOSE[16104] pbx.c: -- Executing [s@macro-hangupcall:6] NoOp("SIP/1113-00000a8d", "SYSTEMSTATUS = APPERROR") in new stack
Облазил гугл, но действующего решения не нашел. О подобном уже говорилось, как о проблеме с кодеками, мол оставьте только 1 возможный кодек и будет вам счастье. Пробовал. Не помогло. Лог звонка:

Код: Выделить всё

[Feb 20 18:21:38] VERBOSE[14621] res_musiconhold.c:     -- Started music on hold, class 'default', on SIP/Marvin-000007ec
[Feb 20 18:21:38] VERBOSE[14621] app_dial.c:     -- SIP/1108-00000804 is ringing
[Feb 20 18:21:40] VERBOSE[14621] res_musiconhold.c:     -- Stopped music on hold on SIP/Marvin-000007ec
[Feb 20 18:21:40] VERBOSE[14621] app_macro.c:   == Spawn extension (macro-dial, s, 38) exited non-zero on 'SIP/Marvin-000007ec' in macro 'dial'
[Feb 20 18:21:40] VERBOSE[14621] pbx.c:   == Spawn extension (ext-group, 602, 15) exited non-zero on 'SIP/Marvin-000007ec'
[Feb 20 18:21:40] VERBOSE[14621] pbx.c:     -- Executing [h@ext-group:1] Macro("SIP/Marvin-000007ec", "hangupcall,") in new stack
[Feb 20 18:21:40] VERBOSE[14621] pbx.c:     -- Executing [s@macro-hangupcall:1] GotoIf("SIP/Marvin-000007ec", "0?endmixmoncheck") in new stack
[Feb 20 18:21:40] VERBOSE[14621] pbx.c:     -- Executing [s@macro-hangupcall:2] Set("SIP/Marvin-000007ec", "MIXMON_CALLFILENAME=/var/spool/asterisk/monitor/g1112-20130220-182137-1361362818.2028.wav") in new stack
[Feb 20 18:21:40] VERBOSE[14621] pbx.c:     -- Executing [s@macro-hangupcall:3] GotoIf("SIP/Marvin-000007ec", "1?defaultmixmondir") in new stack
[Feb 20 18:21:40] VERBOSE[14621] pbx.c:     -- Goto (macro-hangupcall,s,5)
[Feb 20 18:21:40] VERBOSE[14621] pbx.c:     -- Executing [s@macro-hangupcall:5] System("SIP/Marvin-000007ec", "test -e /var/spool/asterisk/monitor/g1112-20130220-182137-1361362818.2028.wav") in new stack
[Feb 20 18:21:40] VERBOSE[14621] pbx.c:     -- Executing [s@macro-hangupcall:6] NoOp("SIP/Marvin-000007ec", "SYSTEMSTATUS = SUCCESS") in new stack
[Feb 20 18:21:40] VERBOSE[14621] pbx.c:     -- Executing [s@macro-hangupcall:7] GotoIf("SIP/Marvin-000007ec", "1?endmixmoncheck") in new stack
[Feb 20 18:21:40] VERBOSE[14621] pbx.c:     -- Goto (macro-hangupcall,s,9)
[Feb 20 18:21:40] VERBOSE[14621] pbx.c:     -- Executing [s@macro-hangupcall:9] NoOp("SIP/Marvin-000007ec", "End of MIXMON check") in new stack
[Feb 20 18:21:40] VERBOSE[14621] pbx.c:     -- Executing [s@macro-hangupcall:10] GotoIf("SIP/Marvin-000007ec", "1?nomeetmemon") in new stack
[Feb 20 18:21:40] VERBOSE[14621] pbx.c:     -- Goto (macro-hangupcall,s,28)
[Feb 20 18:21:40] VERBOSE[14621] pbx.c:     -- Executing [s@macro-hangupcall:28] NoOp("SIP/Marvin-000007ec", "End of MEETME check") in new stack
[Feb 20 18:21:40] VERBOSE[14621] pbx.c:     -- Executing [s@macro-hangupcall:29] GotoIf("SIP/Marvin-000007ec", "1?noautomon") in new stack
[Feb 20 18:21:40] VERBOSE[14621] pbx.c:     -- Goto (macro-hangupcall,s,34)
[Feb 20 18:21:40] VERBOSE[14621] pbx.c:     -- Executing [s@macro-hangupcall:34] NoOp("SIP/Marvin-000007ec", "TOUCH_MONITOR_OUTPUT=") in new stack
[Feb 20 18:21:40] VERBOSE[14621] pbx.c:     -- Executing [s@macro-hangupcall:35] GotoIf("SIP/Marvin-000007ec", "0?noautomon2") in new stack
[Feb 20 18:21:40] VERBOSE[14621] pbx.c:     -- Executing [s@macro-hangupcall:36] System("SIP/Marvin-000007ec", "test -e /var/spool/asterisk/monitor/q5-20130220-182127-1361362818.2028*") in new stack
[Feb 20 18:21:40] VERBOSE[14621] pbx.c:     -- Executing [s@macro-hangupcall:37] NoOp("SIP/Marvin-000007ec", "SYSTEMSTATUS = APPERROR") in new stack
[Feb 20 18:21:40] VERBOSE[14621] pbx.c:     -- Executing [s@macro-hangupcall:38] GotoIf("SIP/Marvin-000007ec", "1?errornoautomon") in new stack
[Feb 20 18:21:40] VERBOSE[14621] pbx.c:     -- Goto (macro-hangupcall,s,40)
[Feb 20 18:21:40] VERBOSE[14621] pbx.c:     -- Executing [s@macro-hangupcall:40] NoOp("SIP/Marvin-000007ec", "End of MONITOR QUEUE check") in new stack
[Feb 20 18:21:40] VERBOSE[14621] pbx.c:     -- Executing [s@macro-hangupcall:41] NoOp("SIP/Marvin-000007ec", "MONITOR_FILENAME=/var/spool/asterisk/monitor/q5-20130220-182127-1361362818.2028") in new stack
[Feb 20 18:21:40] VERBOSE[14621] pbx.c:     -- Executing [s@macro-hangupcall:42] GotoIf("SIP/Marvin-000007ec", "1?skiprg") in new stack
[Feb 20 18:21:40] VERBOSE[14621] pbx.c:     -- Goto (macro-hangupcall,s,45)
[Feb 20 18:21:40] VERBOSE[14621] pbx.c:     -- Executing [s@macro-hangupcall:45] GotoIf("SIP/Marvin-000007ec", "0?skipblkvm") in new stack
[Feb 20 18:21:40] VERBOSE[14621] pbx.c:     -- Executing [s@macro-hangupcall:46] NoOp("SIP/Marvin-000007ec", "Cleaning Up Block VM Flag: BLKVM/602/SIP/Marvin-000007ec") in new stack
[Feb 20 18:21:40] VERBOSE[14621] pbx.c:     -- Executing [s@macro-hangupcall:47] NoOp("SIP/Marvin-000007ec", "Deleting: BLKVM/602/SIP/Marvin-000007ec TRUE") in new stack
[Feb 20 18:21:40] VERBOSE[14621] pbx.c:     -- Executing [s@macro-hangupcall:48] GotoIf("SIP/Marvin-000007ec", "1?theend") in new stack
[Feb 20 18:21:40] VERBOSE[14621] pbx.c:     -- Goto (macro-hangupcall,s,50)
[Feb 20 18:21:40] VERBOSE[14621] pbx.c:     -- Executing [s@macro-hangupcall:50] AGI("SIP/Marvin-000007ec", "hangup.agi") in new stack
[Feb 20 18:21:40] VERBOSE[14621] res_agi.c:     -- Launched AGI Script /var/lib/asterisk/agi-bin/hangup.agi
[Feb 20 18:21:40] VERBOSE[14621] res_agi.c:     -- <SIP/Marvin-000007ec>AGI Script hangup.agi completed, returning 0
[Feb 20 18:21:40] VERBOSE[14621] pbx.c:     -- Executing [s@macro-hangupcall:51] Hangup("SIP/Marvin-000007ec", "") in new stack
[Feb 20 18:21:40] VERBOSE[14621] app_macro.c:   == Spawn extension (macro-hangupcall, s, 51) exited non-zero on 'SIP/Marvin-000007ec' in macro 'hangupcall'
[Feb 20 18:21:40] VERBOSE[14621] pbx.c:   == Spawn extension (ext-group, h, 1) exited non-zero on 'SIP/Marvin-000007ec'
[Feb 20 18:21:41] VERBOSE[14622] app_mixmonitor.c:   == MixMonitor close filestream
Конфиг:

Код: Выделить всё

[1103]
deny=0.0.0.0/0.0.0.0
disallow=all
secret=ccmelc1102
dtmfmode=rfc2833
canreinvite=no
context=from-internal
host=dynamic
type=friend
nat=yes
port=5060
qualify=yes
callgroup=
pickupgroup=
allow=alaw
allow=g729
dial=SIP/1103
mailbox=1103@device
permit=XXXXXXX/XXXXXXX
callerid=device <1103>
callcounter=yes
faxdetect=no

[Meloman]
disallow=all
host=XXXXXX
type=friend
allow=alaw
allow=g729
dtmfmode=rfc2833
insecure=port,invite
insecure=invite
context=from-trunk
nat=no
canreinvite=no
qualify=300

Сама система дозвона устроена так: Звонок->1 группа дозвона -> 2 группа -> 3 группа -> очередь (15 сек чтоб звонок не терялся) -> 1 группа
Пользуюсь Эластиксом 2.3.0 , Астер 1.8.20.
Не подскажите еще каких вариантов решения проблемы?
ded
Сообщения: 15627
Зарегистрирован: 26 авг 2010, 19:00

Re: SYSTEMSTATUS = APPERROR

Сообщение ded »

Вы что-то сильно мудрённое настроили, смысла в цепочке Звонок->1 группа дозвона -> 2 группа -> 3 группа -> очередь я не вижу.
Вы роете не там и не тем. Согласно вашему логу звонок просто хэнгапится после логической проверки, которую понастроили вдобавок видать на завершении в виде каких-то действий по хэнгапу - exten => h
То есть увас уже выполняется macro-hangupcall, там проверка непонятно чего GotoIf(.... "1?skiprg")

[Feb 20 18:21:40] VERBOSE[14621] pbx.c: -- Executing [s@macro-hangupcall:42] GotoIf("SIP/Marvin-000007ec", "1?skiprg") in new stack
[Feb 20 18:21:40] VERBOSE[14621] pbx.c: -- Goto (macro-hangupcall,s,45) - переход на 45-й шаг этого же макроса, где потом вызывается ещё какой-то hangup.agi
AGI("SIP/Marvin-000007ec", "hangup.agi"
который захлопывается непредсказуемо
[Feb 20 18:21:40] VERBOSE[14621] pbx.c: == Spawn extension (ext-group, h, 1) exited non-zero on 'SIP/Marvin-000007ec'

Занавес.
Зрители в ужасе молча расходятся.
Резюме: дебажить hangup.agi (если есть желание раскапывать этот ужас-ужас.
Internetchik
Сообщения: 107
Зарегистрирован: 10 июл 2012, 10:38
Откуда: Алматы

Re: SYSTEMSTATUS = APPERROR

Сообщение Internetchik »

Хех, знаю. Дело в http://forum.asterisk.ru/viewtopic.php?f=3&t=2551 . Чтоб это работало звонок уходит в группы, но если в 3 группах никто взять не может, астер сбрасывает звонок. Чтоб этого не происходило была добавлена очередь.
Угу.. а если представить, что с hangup.agi все в норме, а с учетом того, что диалплан был написан самим эластиксом, то получается. что проблема вылазит именно из-за этой цепочки?
Vlad1983
Сообщения: 4251
Зарегистрирован: 09 авг 2011, 11:51

Re: SYSTEMSTATUS = APPERROR

Сообщение Vlad1983 »

просто статус этого
[Feb 20 18:21:40] VERBOSE[14621] pbx.c: -- Executing [s@macro-hangupcall:5] System("SIP/Marvin-000007ec", "test -e /var/spool/asterisk/monitor/g1112-20130220-182137-1361362818.2028.wav") in new stack

а вот почему APPERROR разбираться вам
ЛС: @rostel
Internetchik
Сообщения: 107
Зарегистрирован: 10 июл 2012, 10:38
Откуда: Алматы

Re: SYSTEMSTATUS = APPERROR

Сообщение Internetchik »

Будем разбираться! Спасибо!
Ответить
© 2008 — 2025 Asterisk.ru
Digium, Asterisk and AsteriskNOW are registered trademarks of Digium, Inc.
Design and development by PostMet-Netzwerk GmbH