04.2.6 Custom IVR
Dynamic IVR
Custom IVR's are created using a naming convention for BMM.
When uploading a BMM for an IVR, the naming format for the file is as follows:
ivr<n>-<R/I><Key><route/ivr_index>-...[-T<route>]-N<name_of_bmm>
n = ivr index (first ivr must start at '0')
R = Target of key press is a route in Noojee Admin
I = Target of key press is another IVR based on the ivr index. i.e. specifying I32 - states Key 3 will go to an ivr called ivr2-...-...-N<name_of_bmm> and play that BMM.
T = Send calls to the specifed route if no keys are pressed. Timeout route overides the default to repeat the IVR 3 times if no key is pressed. This can be overcome by specifying option 'C'.
C = Number of iterations for the IVR to repeat itself if no keys are press. Must be 1 or greater. If not specified, this defaults to 3 before moving on. However, if this is not specified and a timeout route (T) is given then the Timeout route is followed on the first timeout, i.e the IVR only does 1 iteration and the goes to the timeout route if no key is pressed. (version 1.1.0)
N = Denotes name of file and will be ignored in IVR code. Names must only consist of letters or numbers.
* Timeout routes are tied to key '0'. Avoid setting Routes or IVR for key '0' when specifying a timeout route
examples:
ivr1-R111-R212-I32-Nmymainivr
ivr2-R113-R214-R315-Nmysubivr
reads as
For IVR1, Key 1 goes to route 11 in NJAdmin, Key 2 goes to route 12 in NJAdmin, Key 3 goes to IVR2
In IVR2, Key 1 goes to route 13 in NJAdmin, Key 2 goes to route 14 in NJAdmin, Key 3 goes to route 15 in NJAdmin
Invoking the IVR
Under 'Provision/Route' set up a route where the route target selected should be 'Dialplan'. Fill in the target as:
'custom-ivr,[ivr index],1
For exampl, if the filename of the bmm for the ivr is: ivr2-R111-R212-R313-Nsomename
where '2' in 'ivr2' is the index.
then to invoke it via the dialplan target in routes is: custom-ivr,2,1