In this entertaining episode of stump-the-voice engineer, users report a directory number is being routed through the Bermuda Triangle and landing in no-man’s voicemail land. In fact, the mysterious voicemail greeting being heard by callers sounds like 3 minutes of someone pocket dialing their neighbor’s cat.
Proceeding to the standard fact collection, I find that the path of the call goes something like this:
PSTN -> gateway -> call manager-> directory number 1000 -> call forwarded to CTI route point 1001 -> 1001 call forwarded to Unity Connection voicemail -> voicemail greeting of unknown origin
If you’ve ever had to troubleshoot a similar issue, you probably already know where this is headed.
First test call: dial 1001, listen to greeting. Confirm correct greeting heard. Check.
Second test call: unforward 1000, let it go to voicemail. Surprise users by finding their cryptic voicemail greeting in record time. Yep, users of this voicemail box had unintentionally recorded 3 minutes of scratchy noises and dead air, somehow managed to enable it as their standard voicemail greeting, and all without being the slight bit conscious of the process. Amazing.
While this of course boggles the mind, it doesn’t actually fix the real issue here – the fact that users want callers to hear the voicemail greeting for 1001 when 1000 is called and 1000 is forwarded to 1001.
For those not familiar, Unity Connection – in this particular case 8.x – has a couple of options on how to handle forwarded calls like the ones we are dealing with here.
The default behavior of Unity Connection is to use the first number when dealing with incoming calls that have been forwarded. So in our case, even though 1001 is the directory number that forwarded to voicemail, the message for 1000 is being played out for the caller. You can change this behavior globally by going to System Settings -> Advanced -> Conversations -> scrolling down toward the bottom and checking the Use Last (Rather than First) Redirecting Number for Routing Incoming Call box.
It’ll look something like this:
The problem with this solution is that some people, including the users in this case, actually like routing to voicemail boxes based on the first number called, so changing the behavior globally isn’t the best way to make friends and influence people.
Instead you can create a Forwarded Routing Rule in Unity Connection that changes the behavior just for a single the directory number – and only when that directory number is a redirecting number.
You will want to navigate to Call Routing -> Forwarded Routing Rules -> Add New. The rule looks something like this:
You will then set where you want the call to go. You can direct the call to a Call Handler, a Directory Handler, a Conversation, or to a User with a Voicemail Box.
Lastly, you will click Add New under Routing Rule Conditions to create the match statement.
Your match statement should look something like this:
Be sure to save your condition and your routing rule, and voilà! Incoming calls to voicemail containing the forwarding number you specified will now follow the rule you created. And there will be much rejoicing. If only in your own head.