DID branch after conditions

I have several main numbers for several divisions. all that call flow works, here is my issue

all calls come through and hit the Holiday time condition, then Weather renouncement, then into the night mode call flow. Here is the big question, is there a way to send a call based on its DID after a time condition or announcement. like a big if statement.

if did1 goto IVR1
if did2 goto IVR2
if did3 goto IVR3

or do i have to create the same paths multiple times with a end destination
If there isn’t a way i think it would be a neat feature.

There was a thread on here a couple of months ago - basically exactly the same question.

It seems to me that he ended up writing a custom context that routed calls based on DID after the "standard’ time condition and greeting stuff ended.

The problem with trying to write something generic is that the problem really seems unbounded.

Just thinking out loud (and trying to come up with a way to do this without a custom context) If you wanted to, you could try building a loopback trunk and route the calls by DID through an outbound route or through that trunk. Either way, the destination of the time condition could be a loopback trunk that routed the call through the DID. That way, you get a single interface at the front (for closed announcements, for example) and a DID specific response from the trunk.

Just an idea.

You can only do this with custom code or possibly using the third party dynroute module.

well crap, i was afraid of that. I looked around the forum and didn’t find a solution. might be a good
feature to create in the future. a simple DID in then a drop down selection of you defined inbound
numbers and a drop down for the destination.

Inbound Routes can do that now, but the trick is figuring out how to get the call to route into a second, local trunk.

If you submit it as a feature request, getting attention on it would be easier with some working code in a custom context and some description of how to expand it to an unreasonable number of “CaseRoute” entries. Ultimately, each entry would look something like this:


The logic isn’t really “If-Then”, it’s really a CASE structure (lots of selections, one way out). You could start with the DynRoute module and see what it does or doesn’t do for you. I don’t have a dog in this hunt, or I’d think about trying it.

Either way, it certainly will not make it into the system without a Feature Request.

If you do file a feature request, 95% of the infrastructure is in place with the IVR module. It just needs the ability for an admin to disable the dtmf input and instead specify a channel variable that will control the call flow.

i think were missing it a little. I am looking for a way to exit say a holiday time condition, then with the DID number equal to XXX , destination to IVR1. kinda like the IVE press X goes to a destination, with the ability to add multiple inbound numbers. No trunks involved.

@lgaetz suggested putting the Feature Request in and says most of the infrastructure to do this is in the IVR code.

If you don’t, there aren’t any good ways except for using trunks or writing custom code.

You’re up.

If you have budget, we can come up with something for you in paid support. The code involved is not that complex.

yep, think i will go that route. It isn’t going to kill me to create all the time conditions. was just hoping i messed something somewhere.