IVR menu for the OFFICE line


Office Line Menu



;********************************************************************
; BEGIN - Office IVR Menu
;********************************************************************
;
;
[office-day]
;
;
exten => s,1,Wait(30)
exten => s,2,Answer
exten => s,3,zapateller ; torture telemarketers
;
; menu diag enter here
;
exten => s,4,Background(silence/1) ; one second silence
exten => s,5,Background(custom/welcome) ; play the intro message
exten => s,6,NoOp
;
exten => s,7,GotoIfTime(*|*|1|jan?office-holiday,s,1)
exten => s,8,GotoIfTime(*|*|4|jul?office-holiday,s,1)
exten => s,9,GotoIfTime(*|*|11|nov?office-holiday,s,1)
exten => s,10,GotoIfTime(*|*|25|dec?office-holiday,s,1)
;
exten => s,11,GotoIfTime(*|mon|15-21|jan?office-holiday,s,1)
exten => s,12,GotoIfTime(*|mon|15-21|feb?office-holiday,s,1)
exten => s,13,GotoIfTime(*|mon|26-31|may?office-holiday,s,1)
exten => s,14,GotoIfTime(*|mon|1-7|sep?office-holiday,s,1)
exten => s,15,GotoIfTime(*|mon|8-17|oct?office-holiday,s,1)
exten => s,16,GotoIfTime(*|thu|22-28|nov?office-holiday,s,1)
;
; if its not a Holiday check to see if its during business hours
;
exten => s,17,GotoIfTime(08:00-17:59|mon-fri|*|*?office-open,s,1)
;
; if its not during business hours, we must be closed
;
exten => s,18,Goto(office-night,s,7)
;
; include access to internal extentions and services
;
;
include => pana-trans
include => internal-svc
;
; Repeat the previous menu
exten => *,1,Goto(s,5)
;
; #=hangup
exten => #,1,Background(goodbye)
exten => #,2,Hangup
;
exten => t,1,Goto(i,1) ; If they take too long, give up
;
exten => i,1,Background(pbx-invalid) ; "That's not valid, try again"
exten => i,2,Wait(1)
exten => i,3,Goto(s,5)
;
;
[office-night]
;
;
exten => s,1,Wait(10)
exten => s,2,Answer
exten => s,3,zapateller ; torture telemarketers
;
; menu diag enter here
;
exten => s,4,Background(silence/1) ; one second silence
exten => s,5,Background(custom/welcome) ; play the intro message
exten => s,6,Background(silence/1) ; one second silence
exten => s,7,Background(custom/office-closed)
;
exten => s,8,Background(custom/this-is-afterhours-menu)
exten => s,9,Background(custom/office-hours)
;
; loops should return here
;
exten => s,10,SetGlobalVar(FLOWCONTROL=office-night,s,10)
exten => s,11,NoOp
exten => s,12,NoOp(${FLOWCONTROL})
exten => s,13,Background(custom/if-you-know-ext)
exten => s,14,Background(silence/1) ; one second silence
exten => s,15,Background(custom/to-leave-vm-by-name)
exten => s,16,Background(custom/dial-first-three-char)
;
exten => s,17,Background(silence/1)
exten => s,18,Background(custom/if-emergency)
exten => s,19,Background(silence/1)
exten => s,20,NoOp
;
exten => s,21,Background(custom/2repeat) ; play the menu messages
exten => s,22,Background(custom/2hangup) ; play the menu messages
;
exten => s,23,DigitTimeout,5 ; give them 5 seconds between digits
exten => s,24,ResponseTimeout,90 ; give them 90 seconds to make a choice
;
;
include => vmail-by-ext
include => vmail-by-name
include => internal-svc
include => emergency
;
; Repeat the previous menu
exten => *,1,Goto(s,10)
;
; #=hangup
exten => #,1,Background(goodbye)
exten => #,2,Hangup
;
exten => t,1,VoiceMail(u${DEFVM}) ; If they take too long, send to vmail
exten => t,2,Hangup
;
exten => i,1,Background(pbx-invalid) ; "That's not valid, try again"
exten => i,2,NoOp
exten => i,3,Goto(s,10)
;
;
[office-holiday]
;
; provide Holiday greeting and provide emergency access for
; contract clients
;
exten => s,1,Background(custom/office-closed-holiday) ; play the office we are closed message
exten => s,2,Background(custom/office-hours) ; play the open hours message
exten => s,3,Goto(office-night,s,8)
;
; include access to internal extentions and services
;
include => vmail-by-ext
include => vmail-by-name
include => internal-svc
;
; Repeat the previous menu
exten => *,1,Goto(office-night,s,8)
;
; #=hangup
exten => #,1,Background(goodbye)
exten => #,2,Hangup
;
exten => t,1,VoiceMail(u${DEFVM}) ; If they take too long, send to vmail
exten => t,2,Hangup
;
exten => i,1,Background(pbx-invalid) ; "That's not valid, try again"
exten => i,2,Wait(1)
exten => i,3,Goto(office-night,s,8)
;
;
[office-open]
;
; during normal business hours, operate like a fancy answering machine
;
exten => s,1,NoOp
exten => s,2,NoOp
exten => s,3,NoOp
;
; menu diag enter here
;
exten => s,4,NoOp
exten => s,5,NoOp
exten => s,6,NoOp
;
exten => s,7,NoOp
exten => s,8,NoOp
;
; loops should return here
;
exten => s,9,Background(custom/if-you-know-ext)
;
exten => s,10,Background(silence/1)
exten => s,11,Background(custom/if-emergency)
exten => s,12,Background(custom/press-the)
exten => s,13,Background(custom/nine-key)
exten => s,14,Background(silence/1)
;
exten => s,15,Background(custom/will-trans-to-default)
exten => s,16,Background(silence/1)
;
exten => s,17,Background(custom/2repeat) ; play the menu messages
exten => s,18,Background(custom/2hangup) ; play the menu messages
;
exten => s,19,DigitTimeout,2 ; give them 2 seconds between digits
exten => s,20,ResponseTimeout,30 ; give them 30 seconds to make a choice
;
include => pana-trans
include => internal-svc
;
; Repeat the previous menu
exten => *,1,Goto(s,9)
;
; #=hangup
exten => #,1,Background(goodbye)
exten => #,2,Hangup
;
exten => t,1,VoiceMail(u${DEFVM})
exten => t,2,Hangup
;
exten => i,1,Background(pbx-invalid) ; "That's not valid, try again"
exten => i,2,Wait(1)
exten => i,3,Goto(s,9)
;
;
;********************************************************************
; END - Office IVR Menu
;********************************************************************
;
;


Office Line Menu



;********************************************************************
; BEGIN - Office IVR Menu
;********************************************************************
;
;
[office-day]
;
;
exten => s,1,Wait(30)
exten => s,2,Answer
exten => s,3,zapateller ; torture telemarketers
;
; menu diag enter here
;
exten => s,4,Background(silence/1) ; one second silence
exten => s,5,Background(custom/welcome) ; play the intro message
exten => s,6,NoOp
;
exten => s,7,GotoIfTime(*|*|1|jan?office-holiday,s,1)
exten => s,8,GotoIfTime(*|*|4|jul?office-holiday,s,1)
exten => s,9,GotoIfTime(*|*|11|nov?office-holiday,s,1)
exten => s,10,GotoIfTime(*|*|25|dec?office-holiday,s,1)
;
exten => s,11,GotoIfTime(*|mon|15-21|jan?office-holiday,s,1)
exten => s,12,GotoIfTime(*|mon|15-21|feb?office-holiday,s,1)
exten => s,13,GotoIfTime(*|mon|26-31|may?office-holiday,s,1)
exten => s,14,GotoIfTime(*|mon|1-7|sep?office-holiday,s,1)
exten => s,15,GotoIfTime(*|mon|8-17|oct?office-holiday,s,1)
exten => s,16,GotoIfTime(*|thu|22-28|nov?office-holiday,s,1)
;
; if its not a Holiday check to see if its during business hours
;
exten => s,17,GotoIfTime(08:00-17:59|mon-fri|*|*?office-open,s,1)
;
; if its not during business hours, we must be closed
;
exten => s,18,Goto(office-night,s,7)
;
; include access to internal extentions and services
;
;
include => pana-trans
include => internal-svc
;
; Repeat the previous menu
exten => *,1,Goto(s,5)
;
; #=hangup
exten => #,1,Background(goodbye)
exten => #,2,Hangup
;
exten => t,1,Goto(i,1) ; If they take too long, give up
;
exten => i,1,Background(pbx-invalid) ; "That's not valid, try again"
exten => i,2,Wait(1)
exten => i,3,Goto(s,5)
;
;
[office-night]
;
;
exten => s,1,Wait(10)
exten => s,2,Answer
exten => s,3,zapateller ; torture telemarketers
;
; menu diag enter here
;
exten => s,4,Background(silence/1) ; one second silence
exten => s,5,Background(custom/welcome) ; play the intro message
exten => s,6,Background(silence/1) ; one second silence
exten => s,7,Background(custom/office-closed)
;
exten => s,8,Background(custom/this-is-afterhours-menu)
exten => s,9,Background(custom/office-hours)
;
; loops should return here
;
exten => s,10,SetGlobalVar(FLOWCONTROL=office-night,s,10)
exten => s,11,NoOp
exten => s,12,NoOp(${FLOWCONTROL})
exten => s,13,Background(custom/if-you-know-ext)
exten => s,14,Background(silence/1) ; one second silence
exten => s,15,Background(custom/to-leave-vm-by-name)
exten => s,16,Background(custom/dial-first-three-char)
;
exten => s,17,Background(silence/1)
exten => s,18,Background(custom/if-emergency)
exten => s,19,Background(silence/1)
exten => s,20,NoOp
;
exten => s,21,Background(custom/2repeat) ; play the menu messages
exten => s,22,Background(custom/2hangup) ; play the menu messages
;
exten => s,23,DigitTimeout,5 ; give them 5 seconds between digits
exten => s,24,ResponseTimeout,90 ; give them 90 seconds to make a choice
;
;
include => vmail-by-ext
include => vmail-by-name
include => internal-svc
include => emergency
;
; Repeat the previous menu
exten => *,1,Goto(s,10)
;
; #=hangup
exten => #,1,Background(goodbye)
exten => #,2,Hangup
;
exten => t,1,VoiceMail(u${DEFVM}) ; If they take too long, send to vmail
exten => t,2,Hangup
;
exten => i,1,Background(pbx-invalid) ; "That's not valid, try again"
exten => i,2,NoOp
exten => i,3,Goto(s,10)
;
;
[office-holiday]
;
; provide Holiday greeting and provide emergency access for
; contract clients
;
exten => s,1,Background(custom/office-closed-holiday) ; play the office we are closed message
exten => s,2,Background(custom/office-hours) ; play the open hours message
exten => s,3,Goto(office-night,s,8)
;
; include access to internal extentions and services
;
include => vmail-by-ext
include => vmail-by-name
include => internal-svc
;
; Repeat the previous menu
exten => *,1,Goto(office-night,s,8)
;
; #=hangup
exten => #,1,Background(goodbye)
exten => #,2,Hangup
;
exten => t,1,VoiceMail(u${DEFVM}) ; If they take too long, send to vmail
exten => t,2,Hangup
;
exten => i,1,Background(pbx-invalid) ; "That's not valid, try again"
exten => i,2,Wait(1)
exten => i,3,Goto(office-night,s,8)
;
;
[office-open]
;
; during normal business hours, operate like a fancy answering machine
;
exten => s,1,NoOp
exten => s,2,NoOp
exten => s,3,NoOp
;
; menu diag enter here
;
exten => s,4,NoOp
exten => s,5,NoOp
exten => s,6,NoOp
;
exten => s,7,NoOp
exten => s,8,NoOp
;
; loops should return here
;
exten => s,9,Background(custom/if-you-know-ext)
;
exten => s,10,Background(silence/1)
exten => s,11,Background(custom/if-emergency)
exten => s,12,Background(custom/press-the)
exten => s,13,Background(custom/nine-key)
exten => s,14,Background(silence/1)
;
exten => s,15,Background(custom/will-trans-to-default)
exten => s,16,Background(silence/1)
;
exten => s,17,Background(custom/2repeat) ; play the menu messages
exten => s,18,Background(custom/2hangup) ; play the menu messages
;
exten => s,19,DigitTimeout,2 ; give them 2 seconds between digits
exten => s,20,ResponseTimeout,30 ; give them 30 seconds to make a choice
;
include => pana-trans
include => internal-svc
;
; Repeat the previous menu
exten => *,1,Goto(s,9)
;
; #=hangup
exten => #,1,Background(goodbye)
exten => #,2,Hangup
;
exten => t,1,VoiceMail(u${DEFVM})
exten => t,2,Hangup
;
exten => i,1,Background(pbx-invalid) ; "That's not valid, try again"
exten => i,2,Wait(1)
exten => i,3,Goto(s,9)
;
;
;********************************************************************
; END - Office IVR Menu
;********************************************************************
;
;

Created by: ghendershot, Last modification: Sat 21 of Apr, 2007 (16:38 UTC) by linkx
Please update this page with new information, just login and click on the "Edit" or "Discussion" tab. Get a free login here: Register Thanks! - Find us on Google+