All pastes #49300 Raw Edit

tier-1

public text v1 · immutable
#49300 ·published 2006-04-13 21:43 UTC
rendered paste body
;-------------------------------------------------------------------
;Start Autoattend Menu 
;-------------------------------------------------------------------
;
[autoattend]
;
exten => s,1,GotoIfTime(*|*|1|jan?holiday,s,1)
exten => s,n,GotoIfTime(*|*|4|jul?holiday,s,1)
exten => s,n,GotoIfTime(*|*|11|nov?holiday,s,1)
exten => s,n,GotoIfTime(*|*|24|nov?holiday,s,1)
exten => s,n,GotoIfTime(*|*|25|dec?holiday,s,1)
exten => s,n,GotoIfTime(08:00-17:00on-fri|*|*?day,s,1)
exten => s,n,GotoIfTime(17:01-07:99|mon-fri|*|*?night,s,1)
exten => s,n,GotoIfTime(09:00-16:00|sat|*|*?day,s,1)
exten => s,n,Goto(night,s,1);
;
 
;-------------------------------------------------------------------
; Start - IVR Menu 
;-------------------------------------------------------------------
[selection]
;
exten => i,1,Background(pbx-invalid)   ; "That's not valid, try again" 
exten => i,2,Wait(1) 
exten => i,3,Goto(s,9) 
;
exten => t,1,Playback(pls-wait-connect-call)
exten => t,n,Goto(operator-queue,s,1)
;
; * - directory ; not setup yet
exten => *,1,Directory,default
exten => *,2,Goto,s|1
;
;DIR-CONTEXT set in Digital Receptionist
;exten => *,1,Wait(1)
;exten => *,2,AGI(directory,${DIR-CONTEXT},ext-local,${DIRECTORY:0:1}${DIRECTORY_OPTS}o)
;exten => *,3,Playback(vm-goodbye)
;exten => *,4,Hangup
; *411 will access the entire directory (not just a single context)
;exten => *411,1,Answer
;exten => *411,2,Wait(1)
;exten => *411,3,AGI(directory,general,ext-local,${DIRECTORY:0:1}${DIRECTORY_OPTS})
;exten => *411,4,Playback(vm-goodbye)
;exten => *411,5,Hangup
;exten => h,1,Hangup
;exten => o,1,GotoIf($["foo${FROM_DID}" => "foo"]?from-pstn,s,1:from-pstn,${FROM_DID},1)
;
; # - disconnect
exten => #,1,Playback,(vm-goodbye)
exten => #,2,Hangup
;
; 0 Operator
exten => 0,1,Macro(stdexten,0,SIP/0)
;
;1 Sales Dept
exten => 1,1,GotoIfTime(08:00-16:59|mon-fri|*|*?selection,3,6)
exten => 1,2,GotoIf(Time(17:00-07:29|mon-fri|*|*?selection,3,3)
exten => 1,3,Playback(sales-closed)
exten => 1,4,Playback(vm-goodbye)
exten => 1,5,Hangup
exten => 1,6,BackGround(for-quality-purposes)
exten => 1,7,Playback(this-call-may-be)
exten => 1,8,Playback(recorded)
exten => 1,9,Playback(pls-wait-connect-call)
exten => 1,10,SetMusicOnHold,default
exten => 1,11,SetCallerID,1
exten => 1,12,SetCallerIDName,Sales
exten => 1,13,Goto,queues|200|1
;
;2 Billing Dept
exten => 2,1,GotoIfTime(08:00-16:59|mon-fri|*|*?selection,4,6)
exten => 2,2,GotoIfTime(17:00-07:29|mon-fri|*|*?selection,4,3)
exten => 2,3,Playback(billing-closed)
exten => 2,4,Playback(vm-goodbye)
exten => 2,5,Hangup
exten => 2,6,Playback(for-quality-purposes)
exten => 2,7,Playback(this-call-may-be)
exten => 2,8,Playback(recorded)
exten => 2,9,Playback(pls-wait-connect-call)
exten => 2,10,SetMusicOnHold,default
exten => 2,11,SetCallerID,2
exten => 2,12,SetCallerIDName,Sales
exten => 2,13,Goto,queues|201|1
;
;3 Technical Support Dept
exten => 3,1,GotoIfTime(08:30-17:29|mon-fri|*|*?selection,5,6)
exten => 3,2,GotoIfTime(17:30-08:29|mon-fri|*|*?selection,5,3)
exten => 3,3,Playback(tech-closed)
exten => 3,4,Playback(vm-goodbye)
exten => 3,5,Hangup
exten => 3,6,Playback(for-quality-purposes)
exten => 3,7,Playback(this-call-may-be)
exten => 3,8,Playback(recorded)
exten => 3,9,Playback,(pls-wait-connect-call)
exten => 3,10,SetMusicOnHold,default
exten => 3,11,SetCallerID,3
exten => 3,12,SetCallerIDName,TechSupport
exten => 3,13,Goto,queues|202|1
;
;4
exten => 4,1,Playback,(systemstat)
exten => 4,n,Hangup
;
exten => 5,1,Background(staff-listing)
exten => 5,n,Hangup
;
;5
exten => 6,1,Playback(vm-goodbye)
exten => 6,n,Hangup
;
;7
exten => 7,1,Playback(vm-goodbye)
exten => 7,n,Hangup
;
;8 
exten => 8,1,Playback(vm-goodbye)
exten => 8,n,Hangup
;
;9 Fax Extension
exten => 9,1,Set(CALLEDFAX=>${EXTEN})
exten => 9,2,Answer
exten => 9,3,Goto(fax,${EXTEN},1)
;
;exten => fax,1,Goto(ext-fax,in_fax,1)
;
[prompts]; IVR
;-----------------------------------------------------
;988 - Prompt management used for IVR prompt recording.
;-----------------------------------------------------
exten => 988,1,Goto(prompt-management,s,1)
;
[prompt-management]
; Flexible prompt recording
exten => s,1,Answer
exten => s,n,Wait(1)
exten => s,n,DigitTimeout(5)
exten => s,n,Read(PROMPT_NUMBER|enter-prompt-number|3)
exten => s,n,SayDigits(${PROMPT_NUMBER})
exten => s,n,BackGround(T-to-hear-cur-ancmnt)
exten => s,n,BackGround(press-1)
exten => s,n,BackGround(T-to-rec-ancmnt)
exten => s,n,BackGround(press-2)
;
exten => t,1,Playback(goodbye)
exten => t,n,Hangup
;
exten => i,1,Playback(pbx-invalid)
exten => i,n,Goto(s,5)
;
exten => 1,1,Playback(beep)
exten => 1,n,Playback(bsky-prompt-${PROMPT_NUMBER})
exten => 1,n,Playback(beep)
exten => 1,n,Goto(s,6)
;
exten => 2,1,Goto(prompt-management-record,s,1)

exten => *,1,Playback(goodbye)
exten => *,n,Hangup
;
[prompt-management-record]
; New prompt recording
exten => s,1,Playback(vm-intro)
exten => s,n,Record(tmp-newprompt:wav)
exten => s,n,Playback(beep)
exten => s,n,BackGround(tmp-newprompt)
exten => s,n,BackGround(save-announce-press)
exten => s,n,BackGround(digits/1)
exten => s,n,BackGround(to-rerecord-announce)
exten => s,n,BackGround(digits/2)
;
exten => i,1,Playback(invalid)
exten => i,n,Goto(s,3)
;
exten => t,1,Goto(s,3)
;
exten => 1,1,System(cp -f /var/lib/asterisk/sounds/tmp-newprompt.wav /var/lib/asterisk/sounds/prompt-${PROMPT_NUMBER}.wav)
exten => 1,n,Playback(your-msg-has-been-saved)
exten => 1,n,Goto(app-prompt-management,s,4)
;
exten => 2,1,Goto(s,1)
;
exten => *,1,Goto(app-prompt-management,s,4)
;-------------------------------------------------------
; 989 - Special announcement admin (Easy IVR)
;-------------------------------------------------------
exten => 989,1,Goto(special-message,s,1)
;
[special-message]
; Record/replay/turn on/off the special message played before ACD queue calls
exten => s,1,Answer
exten => s,n,Wait(1)
exten => s,n,DigitTimeout(5)
exten => s,n,BackGround(T-to-hear-cur-ancmnt)
exten => s,n,BackGround(press-1)
exten => s,n,BackGround(T-to-rec-ancmnt)
exten => s,n,BackGround(press-2)
exten => s,n,BackGround(T-to-enable-ancmnt)
exten => s,n,BackGround(press-3)
exten => s,n,BackGround(T-to-disable-ancmnt)
exten => s,n,BackGround(press-4)
;
exten => t,1,Playback(goodbye)
exten => t,2,Hangup
;
exten => i,1,Playback(pbx-invalid)
exten => i,2,Goto(s,4)
;
exten => 1,1,Playback(special-message)
exten => 1,2,Goto(s,4)
;
exten => 2,1,Goto(special-message-record,s,1)
;
exten => 3,1,Set($DB(SpecialMessage/1=>1)})
exten => 3,n,Playback(enabled)
exten => 3,n,Goto(s,4)
;
exten => 4,1,DBdel(SpecialMessage/1)
exten => 4,n,Playback(disabled)
exten => 4,n,Goto(s,4)
;
exten => *,1,Playback(goodbye)
exten => *,2,Hangup
;
[special-message-record]
; Record the new special message
exten => s,1,Playback(vm-intro)
exten => s,n,Record(new-special-message:wav)
exten => s,n,Playback(beep)
exten => s,n,BackGround(new-special-message)
exten => s,n,BackGround(save-announce-press)
exten => s,n,BackGround(digits/1)
exten => s,n,BackGround(to-rerecord-announce)
exten => s,n,BackGround(digits/2)

exten => i,1,Playback(invalid)
exten => i,n,Goto(s,3)
;
exten => t,1,Goto(s,3)
;
exten => 1,1,System(cp -f /var/lib/asterisk/sounds/new-special-message.wav /var/lib/asterisk/sounds/special-message.wav)
exten => 1,n,Playback(your-msg-has-been-saved)
exten => 1,n,Goto(app-special-message,s,1)
;
exten => 2,1,Goto(s,1)
;
exten => *,1,Goto(special-message,s,1)
;
[macro-check-special-message]
; If the flag is set, play the special message, otherwise continue
exten => s,1,Set(${DB(SpecialMessage=>SpecialMessage/1)})
exten => s,2,Playback(system-status-msg)
exten => s,3,Playback(special-message)
exten => s,4,Ringing
exten => s,5,Wait(4)
exten => s,102,Noop
;

;-------------------------------------------------------------------
; END - IVR Menu 
;-------------------------------------------------------------------