FreePBX 15.0.24. Asterisk 16.28.0.
Yes, I’ve searched and read several discussions on this topic. What I’ve done failed in a way that I’ve not seen any coverage.
Honestly, I think I’ve stumbled upon a bug.
The quick background: Our organization has two departments with different DIDs on different trunks. Incoming calls work as I want. With outgoing calls, I want extensions 3XX to go out one trunk and all others (2XX at this point) to go out the other.
So I need two outbound routes, one with dial patterns that have a CallerID of 3XX and another outbound route with dial patterns that have no CallerID. (I’m talking about the right-most field in the Dial Patterns tab when editing an Outbound Route.)
The problem: I set up both trunks, with inbound and outbound routes, and 7, 10, and 11 digit dial patterns generated by the wizard. I don’t mess with the CallerIDs at this point, and just leave them blank.
Naturally, outgoing calls will use the first outbound route in the list. Doesn’t matter which I put first, both work. But as soon as I set the CallerID field in the dial pattern tab for the first outbound route, to 2XX or 3XX as is appropriate, it causes all outgoing calls to fail. The message is “All circuits are busy now.”
Even worse, if I clear the CallerID field from the dial patterns, it remains broken.
If I switch the order of the outbound routes, all calls start working (because the first route matches everything). If I switch them again, so that the one with something in the CallerID field of the dial patterns is first, it will work for the calls from extensions that match the dial patterns, but anything falling through to the second outbound route will fail.
So… By switching the order of the routes and applying the config, I can get it back to the state where the first route works (because it catches everything).
And… If I add something, 2XX, to the CallerID field of the dial patterns for the second route… It breaks both routes. If I then switch the order, so the route with the CallerID field set is the first route… The first route will work, but anything that doesn’t match fails.