Thursday, February 23, 2012

Asterisk - Executing call files in the future

[Alarm-Algo]
exten => _*99*XXXXXXXXXXXX,1,Answer()
exten => _*99*XXXXXXXXXXXX,n,Set(year=${EXTEN:4:4})
exten => _*99*XXXXXXXXXXXX,n,Set(month=${EXTEN:8:2})
exten => _*99*XXXXXXXXXXXX,n,Set(day=${EXTEN:10:2})
exten => _*99*XXXXXXXXXXXX,n,Set(hours=${EXTEN:12:2})
exten => _*99*XXXXXXXXXXXX,n,Set(minutes=${EXTEN:14:2})
exten => _*99*XXXXXXXXXXXX,n,NoOp(Wake-up call scheduled for ${CALLERID(num)} at ${hours}:${minutes} on ${day}.${month}.${year}.)
exten => _*99*XXXXXXXXXXXX,n,System(echo -e "Channel: SIP/${CALLERID(num)}\\nContext: Alarm\\nExtension: 222" > /tmp/${UNIQUEID}.call)
exten => _*99*XXXXXXXXXXXX,n,System(touch -t ${year}${month}${day}${hours}${minutes} /tmp/${UNIQUEID}.call)
exten => _*99*XXXXXXXXXXXX,n,System(mv /tmp/${UNIQUEID}.call /var/spool/asterisk/outgoing/)
exten => _*99*XXXXXXXXXXXX,n,Playback(rqsted-wakeup-for)
exten => _*99*XXXXXXXXXXXX,n,SayNumber(${hours})
exten => _*99*XXXXXXXXXXXX,n,SayNumber(${minutes})
exten => _*99*XXXXXXXXXXXX,n,Hangup()

[Alarm]
exten => 222,1,Answer()
exten => 222,n,Wait(1)
exten => 222,n,Playback(this-is-your-wakeup-call)
exten => 222,n,Wait(1)
exten => 222,n,Hangup()

0 comments:

Post a Comment