zzuz ответил так, потому-что это более правильно, а про CDR и про логи в жлезяке человек попросту может не знать. ;-)
bolshoy_plohish (Aug 18 '19)editСобственно задачка простая, чел звонит, не дождался ответа - повесил трубку, а манагеру прилетело письмо на почту. Отправку проверил - работает.
Схема: GSM-шлюз, 2е симки, каждая звонит на свой номер.
[holidays]
exten => 201,1,Answer()
exten => 201,n,Macro(recording,${CALLERID(num)},${EXTEN})
exten => 201,n,Dial(SIP/200&SIP/201&SIP/sipnet.ru/номер,1,tTm(manual))
exten => 201,n,GotoIf($["${DIALSTATUS}" = "NOANSWER"]?:7)
exten => 201,n,GotoIf($["${DIALSTATUS}" = "BUSY"]?:7)
exten => 201,n,Hangup
exten => XXX,n,Goto(send_mail,h,1)
exten => 200,1,Answer()
exten => 200,n,Playback(/music_for_ats/Welcome)
exten => 200,n,Playback(/music_for_ats/Razgovor_zapisan)
exten => 200,n,Macro(recording,${CALLERID(num)},${EXTEN})
exten => 200,n,Dial(SIP/200&SIP/201&SIP/sipnet.ru/номер,60,tTm(manual))
exten => 200,n,GotoIf($["${DIALSTATUS}" = "NOANSWER"]?:7)
exten => 200,n,GotoIf($["${DIALSTATUS}" = "BUSY"]?:7)
exten => 200,n,Hangup
[send_mail]
exten => s,1,System(rm /records/body.txt)
exten => s,n,System(echo "${CALLERID(num)}" "${DIALSTATUS}" "${VMSTATUS}" >> /records/body.txt)
exten => s,n,System(/records/send_mail.sh "${CALLERID(num)}" "${STRFTIME(${EPOCH},,%Y-%m-%d/%H:%M)}" "${DIALSTATUS}" "${VMSTATUS}")
exten => s,n,Hangup
Вот если выждать таймаут - все прекрасно отрабатывается, а вот если звонящий положил трубку - всё, конец, остановка выполнения сценария. Пробовал, безрезултатно, использовать "H".
Про экстеншен h читайте, в плане звонка ставим флажок, в h по флажку делаем отправку.
Правильнее парсить неотвеченные из CDR (правильнее лог GSM шлюза), а там уже применять разные сценарии оповещения.
zzuz ответил так, потому-что это более правильно, а про CDR и про логи в жлезяке человек попросту может не знать. ;-)
bolshoy_plohish (Aug 18 '19)editЗадан: Aug 17 '19
Просмотрен: 475 раз
Обновлен: Aug 20 '19
Проект компании "АТС Дизайн"
Asterisk® и Digium® являются зарегистрированными торговыми марками компании
Digium, Inc., США.
IP АТС Asterisk распространяется под лицензией
GNU GPL.
core show application Dial
zzuz (Aug 17 '19)edit