Extension Routing


We used to have a area on Outbound Routes where we could drag extensions to outbound routes as shown here:


I have not used this feature since prior to upgrading to FreePBX 15. Now I cannot find this drag and drop interface on the Outbound routes additional setting tab. Was this changed in 15? Reading the page linked above it sounds like this is a commercial feature that needs to be purchased but we had never purchased it previously.

Extension Routing is free for 1 year. Could be that it’s expired by now?

Yes, I think our FreePBX is one year old this month, or last month.

How does one set the extension routing without it?

Not sure what you mean. You can purchase it, if you don’t need it you can use FreePBX without it.

We have 5 phone numbers on our system on one trunk. We used this to set which extensions used which phone numbers. Caller ID? Not sure.

You can do that in the extension outgoing caller ID section

Applications | Extensions | {extension number} | Outbound CID the field is blank. However when making calls with this extension it is using the CID that was associated using the previously mentioned method. Where can I see how this link is made now with the expired extension route module?

You generally do not need to specify a CID per extension unless you like paperwork, or everyone has their own DID they want to show to the outside world.

if the Extension CID is blank, then next the CID from the Outbound route is used. If that is blank, then the CID from the Trunk is used. Both the route and the trunk have overrides to force their CID to be used.

@sorvani - Yes, I understand this, but it is not the issue. Here is our setup per your images:


I am looking to see how I assign extension(s) to a specific outbound route.

Please explain why you want to do this. Most systems have one Outbound Route for a purpose such as “US Domestic”, which sends the call to a suitable trunk (possibly with other trunks for failover). If the Route CID doesn’t override the extension and the trunk allows any CID, then the Outbound CID for the extension will be sent when that user makes a call.

If you have only one trunk on the system, then using the same route for everyone is simplest. If you mean that there are several trunks, each of which has several numbers, then you might want to have specific users restricted to a certain trunk e.g. for billing purposes or to limit the number of calls on certain numbers.

Thanks for your reply. The reason is because we have 5 businesses each with their own unique phone numbers sharing the same trunk. We set each businesses extensions to use the outbound route for their phone number.

Then there is your answer. Set the CID in the outbound route.

We have, as you can see in my above screenshot. That is not the question.


If you want to use for each extension a specific Caller ID then add it there.

Then provide call logs already showing the issue.

Maybe we have a misunderstanding. We do not have a “problem” - everything is working just as it did before the “Extension Routes” module expired.

In the mean time I purchased the module and now the extension’s outbound route selector is available again:

What I wanted to know is how does one accomplish this WITHOUT the extension routes module.

In the link I references in my first post:


It says:

Normally, to block extensions from using an outbound route, you either have to create a custom context for each extension you want to modify, or do the tedious work of creating custom dial plans. This method is slow. It is NOT easily replicated or checked for errors and omissions. It is not easily configured by novice users.

Unfortunately I did not find any examples and the quote indicates “it’s hard to do and not for novices”. I would be that novice and so I asked here.

Like I said before, you could do it on the extension level with a single outbound route.

Where would I set that?


I know right. The thing is our’s are blank:

So these must be getting set somewhere else.