если делаю вот так:
;first call spare parts and acc.
same => n,Dial(SIP/3601&SIP/3701,5)
;then add their mobiles
same => n,Dial(SIP/3601&SIP/3701&SIP/050zzzzzzz&SIP/050yyyyyyy,10)
;then add service reception & aftersales backoffice
same => n,Dial(SIP/3601&SIP/3701&SIP/050zzzzzzz&SIP/050yyyyyyy&SCCP/3333&SIP/3000&SIP/3100&SIP/3101&SIP/3102&SIP/3103&SIP/3104&SIP/5201,15)
;finally if call was not answered - send notyfication email
same => n,GotoIf($["${DIALSTATUS}" = "NOANSWER"],?email)
same => n,Hangup
same => n(email),Set(EMAIL_SUBJECT="Call from ${CALLERID(num)} to ${EXTEN} missed at ${STRFTIME(${EPOCH},,%Y/%m/%d-%H:%M:%S)}")
same => n,Set(EMAIL_BODY="Please call back to ${CALLERID(num)} (${CALLERID(name)}) ASAP!")
same => n,System(echo ${EMAIL_BODY} | mail -s ${EMAIL_SUBJECT} PBX@tld.com)
то между шагами 2 и 3 дозвон прекращается и на шаге 3 повторный вызов на мобильные опять занимает какое-то время (2-3 секунды) есть ли какой-то метод выполнить данный сценарий не тремя отдельными Dial(), а добавлять вызываемых абонентов по мере истечения таймаутов?
http://www.voip-info.org/wiki/view/Asterisk+cmd+Dial
Example 3: Dial multiple channels, partially delayed
вариант 1 вам предложили. вариант два - использовать очередь с приориететами вариант 3- использовать динамические очереди(asyncqueue)
Задан: 2013-05-15 17:30:36 +0400
Просмотрен: 149 раз
Обновлен: May 16 '13
Проект компании "АТС Дизайн"
Asterisk® и Digium® являются зарегистрированными торговыми марками компании
Digium, Inc., США.
IP АТС Asterisk распространяется под лицензией
GNU GPL.
спасибо, komrad123 !!!
kaa ( 2013-05-15 17:53:23 +0400 )редактировать