Вопрос в следующем. При выполнении
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
Просмотрен: 238 раз
Обновлен: Jul 27 '13
Проект компании "АТС Дизайн"
Asterisk® и Digium® являются зарегистрированными торговыми марками компании
Digium, Inc., США.
IP АТС Asterisk распространяется под лицензией
GNU GPL.
вы не правильно вызываете: 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 )редактироватьнадо потому что делать так
zzuz ( 2013-07-27 18:38:26 +0400 )редактироватьнеа. надо делать так
meral ( 2013-07-27 21:49:21 +0400 )редактировать