Пожалуйста, войдите здесь. Часто задаваемые вопросы О нас
Задайте Ваш вопрос

Внезапный Hangup после вызова System [Решено] [закрыт]

0

Вопрос в следующем. При выполнении

exten => _4958282,n,System('/bin/echo Number: ${CALLERID(num)} calling at ${STRFTIME(${EPOCH},EEST,%C%y-%m-%d)} | mail it@domain.com')

происходит обрыв связи. Если в ремарку - то все дальше работает как по маслу. Выглядит как мистика, потому как нет никаких правил чтобы рвало соединение.

exten => _4958282,1,Answer
exten => _4958282,n,Ringing
exten => _4958282,n,WaitExten(3)
;exten => _4958282,n,System('/bin/echo Number: ${CALLERID(num)} calling at ${STRFTIME(${EPOCH},EEST,%C%y-%m-%d)} | mail it@domain.com')
exten => _4958282,n,GotoIf($[${BLACKLIST()}=1]?9)
exten => _4958282,n,Set(MONITOR_FILENAME=/var/spool/asterisk/recordincoming/4958282/${STRFTIME(${EPOCH},,%Y%m%d)}/${CALLERID(num)}-${EXTEN:0}-${STRFTIME(${EPOCH},,%Y%m%d)}-${UNIQUEID})
exten => _4958282,n,MixMonitor(${MONITOR_FILENAME}.wav,b)
exten => _4958282,n,GotoIfTime(09:00-18:01,sat-sun,*,*?11)
exten => _4958282,n,GotoIfTime(09:00-20:01,mon-fri,*,*?11)
exten => _4958282,n,Background(/usr/local/share/asterisk/sounds/en/ct/coral/overnight)
exten => _4958282,n,Hangup
exten => _4958282,11,Background(/usr/local/share/asterisk/sounds/en/ct/coral/den8282)
exten => _4958282,n,Queue(Agency,Tt,,,3600)
exten => _4958282,n,Hangup
exten => _24XX,1,Wait(0)
exten => _24XX,2,goto(default,${EXTEN,1)
exten => _24XX,3,Hangup()
exten => _X!,1,Queue(Agency,Tt,,,3600)

В логах

Собственно вот что происходит при вызове

-- Executing [4958282@default:3] Goto("SIP/10.1.1.2-0000071a", "pilot-4958282,4958282,1") in new stack
-- Goto (pilot-4958282,4958282,1)
-- Executing [4958282@pilot-4958282:1] Answer("SIP/10.1.1.2-0000071a", "") in new stack
-- Executing [4958282@pilot-4958282:2] Ringing("SIP/10.1.1.2-0000071a", "") in new stack
-- Executing [4958282@pilot-4958282:3] WaitExten("SIP/10.1.1.2-0000071a", "3") in new stack
-- Executing [4958282@pilot-4958282:4] System("SIP/10.1.1.2-0000071a", "/bin/echo Number: 4950060 calling at 2013-07-27 | mail it@domain.com")
-- Executing [4958282@pilot-4958282:5] GotoIf("SIP/10.1.1.2-0000071a", "0?9") in new stack
-- Executing [4958282@pilot-4958282:6] Set("SIP/10.1.1.2-0000071a", "MONITOR - здесь сократил.. имя файла
-- Executing [4958282@pilot-4958282:7] MixMonitor("SIP/10.1.1.2-0000071a", "/var/spool/aster ... куда пишем
 -- Executing [4958282@pilot-4958282:8] GotoIfTime("SIP/10.1.1.2-0000071a", "09:00-18:01,sat-sun,*,*?11")
-- Goto (pilot-4958282,4958282,11)
-- Executing [4958282@pilot-4958282:11] Hangup("SIP/10.1.1.2-0000071a", "") in new stack
== Spawn extension (pilot-4958282, 4958282, 11) exited non-zero on 'SIP/10.1.1.2-00000729'
  == Begin MixMonitor Recording SIP/10.1.1.2-00000729
  == End MixMonitor Recording SIP/10.1.1.2-00000729

Все. дальше обрыв соединения.

удалить переоткрыть спам изменить тег редактировать

спросил 2013-07-27 12:22:25 +0400

SysDev Gravatar SysDev
1 2 1 3

обновил 2013-07-27 16:11:57 +0400

Comments

вы не правильно вызываете: exten => _4958282,n,System(echo Fax System receive fax - time - ${STRFTIME(${EPOCH},,%Y-%m-%d %H:%M)} | mutt -s ${CALLERID(num)} -a ${FAXFILE} -- tech@firma.ru )

awsswa ( 2013-07-27 15:22:14 +0400 )редактировать

Нет у Вас никакого Hangup , не нужно сочинять.

zzuz ( 2013-07-27 15:25:12 +0400 )редактировать

mail также можно использовать. разницы нет.

zzuz ( 2013-07-27 15:25:54 +0400 )редактировать

про одинарные кавычки - это чисто ради эксперимента, уже знаю что экранировать не надо - в логах увидел, но проблема все еще остается

SysDev ( 2013-07-27 15:26:41 +0400 )редактировать

Я назвал ситуацию Hangup поскольку идет обрыв связи, а не конкретно вызов аппликешина

SysDev ( 2013-07-27 15:27:26 +0400 )редактировать

Все же я вижу вот это

-- Goto (pilot-4958282,4958282,11) -- Executing [4958282@pilot-4958282:11] Hangup("SIP/10.1.1.2-0000071a", "") in new stack

но конкретной метки 11 у меня нет, с ней - без нее - результат тот же.

SysDev ( 2013-07-27 15:42:51 +0400 )редактировать

Debug - 99 Verbose - 99 в логах ничего - указывающего на ошибку или предупреждение

SysDev ( 2013-07-27 15:43:43 +0400 )редактировать

в логгере все включено максимум что вижу в дополнительных сообщениях - записи в базу.

SysDev ( 2013-07-27 15:48:51 +0400 )редактировать

И срывается при переходе по проверке времени

SysDev ( 2013-07-27 15:49:06 +0400 )редактировать

мда ... пронумеровал всю последовательность и обнаружил несоответсвие вызова строки GoToIF оно вылетало как раз в строку где находился Hangup/

Решено

SysDev ( 2013-07-27 16:11:36 +0400 )редактировать

ну тоесть как и предпологалося system тут непричем.

meral ( 2013-07-27 16:43:48 +0400 )редактировать

надо потому что делать так

exten = _4958282,n,GotoIfTime(09:00-18:01,sat-sun,*,*?day)
exten = _4958282,n,GotoIfTime(09:00-20:01,mon-fri,*,*?day)
exten = _4958282,n,Background(/usr/local/share/asterisk/sounds/en/ct/coral/overnight)
exten = _4958282,n,Hangup
exten = _4958282,n(day),Background(/usr/local/share/asterisk/sounds/en/ct/coral/den8282)
exten = _4958282,n,Queue(Agency,Tt,,,3600)
zzuz ( 2013-07-27 18:38:26 +0400 )редактировать

неа. надо делать так

exten = _4958282,n,GotoIfTime(09:00-20:01,mon-fri,*,*?day,1:night,1)
exten = day,1,Background(dayfile)
exten = night,1,Background(nightfile)
meral ( 2013-07-27 21:49:21 +0400 )редактировать

1 Ответ

0
ссылка удалить спам редактировать

ответил 2013-07-27 15:14:27 +0400

meral Gravatar meral flag of Ukraine
23347 24 20 177
http://pro-sip.net/

Закладки и информация

Добавить закладку

подписаться на rss ленту новостей

Статистика

Задан: 2013-07-27 12:22:25 +0400

Просмотрен: 232 раз

Обновлен: Jul 27 '13

Проект компании "АТС Дизайн"
Asterisk® и Digium® являются зарегистрированными торговыми марками компании Digium, Inc., США.
IP АТС Asterisk распространяется под лицензией GNU GPL.