Destination based on DID after Inbound Route

We have a situation for a client we’re setting up, and have an opportunity to do a few more of these. In shared tenant spaces, there are 2+ sub tenants, who each have a DID. If a call comes in, we’re prefixing the CID name with AA, BB, etc. based on the company. However, trying to simplify the structure, I need to be able to play a certain message based on the DID that was dialed. If it was 11 (Company A) -> Voicemail 11, if it was 12 (Company B) -> Voicemail 12, etc.

One option was to play the greeting at the very beginning of the call, but the clients dont like it say thank you for calling, someone will be right with you…they prefer the ringing, and then the rest of the call flow. However, once in the call flow, we can’t seem to get a different choice. Rather than having to create multiple IVRs per tenant (since they all have the same options), I’d prefer to be able to have a module that would allow setting the next step based on the DID that they called in on.

Easiest option would be to allow Inbound Route to be specified as a Destination for everything (announcements, IVR, etc.)


The easiest option is to choose a system that actually does multi-tenant without having to jump through a ton of painfully awkward hoops like the ones you are about to discover. With a couple of tenants, you can usually get away with a single system, but once you start getting up around four, the problems get exponentially worse.

In my experience, you’d be money and time WAY ahead by setting up a separate PBX for each subscriber (you can virtualize the hardware and run them all on the same server, or not, if you want) and go to town that way. What you want to do can certainly be done with FreePBX, but it really is a painful, slow, fraught with peril sort of solution.

The time you’ll waste on trying to get FreePBX to seamlessly to multitenant is worth far more than a 2U case and a cheap motherboard/CPU/memory combo.

We already spinup individual VMs for each client for 90%. However we’ve been encountering shared office spaces where in an suite with 6 offices has 1 receptionist, 2 support staff and a couple attorneys…not practical or cost effective to setup individual systems (FreePBX would love it since we buy licenses for each). Each one has their own DID, each one can have the same greetings, etc. just the voicemail and initial greeting to go to separate places based on DID. Having something similar to the inbound routes as a choice throughout the interface would be great and prevent lots of duplicitous calling flow setup. Even being able to add a tag to a call in sections of the call flow (inbound routes, ring groups, queues) would allow a bit more freedom in call flow design.

While setting up a PBX for each tenant would be ok in some cases, this makes it impractical. the receptionist would need x number of phones/softphones to monitor the calls. Having to add inter-tenant routing is another pita.