This Articles describes how to set up automatic DTMF sending for scenarios where users regularly dial a number that is an IVR. Created: April 2020 Permalink: https://wildix.atlassian.net/wiki/x/LBfOAQ |
There might be a scenario where your users regularly dial a number that is an IVR. When doing so, the user likely needs to choose an option from the IVR.
This custom application describes how to do this in an automated fashion. For instance, the end users could define a speed dial button that includes both the number and the tones that need to be sent to the remote party. This can even include interdigit timing and tone durations.
Example use case, a speed dial to a colleague from another company where you dial into their main number, then are prompted to enter the extension of the person you are calling.
Please find attached Dialplan called “SendDTMFs”. Download SendDTMFs Dialplan and import it into your system.
Users can define speed dial keys in Collaboration, see Function keys, or administrators can create speed dial key for users, see WMS Start guide - User preferences.
In this example scenario, we will show how to setup the number to be dialed as well as how to specify some additional DTMF interactions to take place after the call is answered.
The provided Dialplan assumes the following format for the speed dial key:
numberPtones
So, for instance, if a user wants to dial the number 6141234567 and then send extension number 582 via DTMF if the call is answered, the speed dial key should be defined as “6141234567P582”. See screenshot below!
In most cases, the example above is enough to allow the user to set up a speed dial key that would interact with the far end system after being answered. However, when dealing with sending tones (specially if more than one is to be sent), there are a couple of additional things that should be considered:
Interdigit time: you may need to specify an interdigit time. For instance, if you intend to reach extension 258 but too much time passes between the first and second digit, you could end up in option 2 in the IVR. In such a case, you can specify interdigit timeout. To care for this more advanced scenario, the Dialplan custom application can be used with a speed dial that includes a second P character followed by a number. Example, you could have a speed dial like: 6141234567P582P5
With the specified speed dial, the system will dial 6141234567, and if answered, tones 582 will be sent using .5 seconds as the inter digit time. So as you can see, the value you specify after the second P is used as interdigit at 1 tenth of a second; 5 equals .5
With the specified speed dial above, the system will dial 6141234567, and if answered, tones 582 will be sent using .5 seconds as inter digit time and and 200ms as the tone duration.
Once a speed dial is configured as needed and the “SendDTMFs” Dialplan procedure has been imported into the system, all you need to do is create a Dialplan that will match the speed dial string and enable the feature before making the call:
Shown entry (XXXXXX.P.) in the previous picture was created in "users" Dialplan.
XXXXXX.P. :This dial pattern will match any string that has at least 7 digits followed by a P and something else after the P. Meaning, this will match the minimum config for the speed dial (numberPtones).