One extension; multiple ways to dial it


I need to figure out a way to dial an extension in FreePBX by multiple phone numbers.

For example, my extension in FreePBX are configured as 10 digit extension. I’d like for one phone registered to FreePBX to dial another phone registered to FreePBX if Phone A dials a 7 digit extension, a 10 digit extension, and an 11 digit extension.

Any advice you can provide would be greatly appreciated. Thank you all in advance

Create a Misc. Application with the 7 digit extension as the “Feature Code”, and a second one with the 11 digit extension. Send both to your extension, or wherever you want it to go. If you have several extensions that you want to give this treatment to, there are more efficient ways to do it, but for a single extension this is the easiest way.

My apologies, I worded my question wrong and I should have clarified further.

I do plan to do this for every extension that is registered to FreePBX.

Well here is one way to do it. I read this somewhere a long time ago but don’t remember where.

Create a new “custom” trunk with these settings:

Trunk Name: 7-11 (or whatever you want)
Custom Dial String: Local/[email protected]

Then make a new Outbound Route:

Route Name: 7-11 (or whatever you want)
Trunk Sequence for Matched Routes: 7-11 (or whatever name you used for the custom trunk)

Then in the “Dial Patterns that will use this Route” section, make two entries for each number or number pattern. For example, let’s say you have 100 numbers and all your numbers start with 234-555-67 plus two additional digits. Then you’d create two patterns:


If some extensions don’t fit the pattern you can create additional rules for them in the same outbound route. The first rule strips the “1” if the caller dials 11 digits, and the second adds the 234 if the caller only dials 7 digits. Be aware that it is up to the calling device to enforce a postdial delay on 7 digit numbers, to see if additional digits may be dialed, which is only necessary if your number prefix, e.g. the “555” in this example, is also a valid area code. Also be careful not to make your patterns too broad, so that you accidentally include numbers that aren’t yours.

Whenever a caller dials a number that matches a valid pattern, the trunk strips the “1” or adds the area code, as necessary to make it a 10 digit number, and then sends the call back into the “from-internal” call flow, where it should be handled as if it were dialed with 10 digits originally. There may be other ways to do this but this is the easiest way I know.

1 Like

Thank you very much. I tested this out and this works.

Is there a way to mark your post as the solution or mark this post as solved? (Sorry, I’m new to this forum, and I do not see a way to do this)