VoIP.info Troubleshooting

FreePBX Misc Destination reaches the wrong number or fails

Trace one selecting module from its saved destination ID through the generated Misc Destination handoff, exact digits, loaded match, route or feature owner and final result before editing labels or routes.

Reviewed 2026-10-12Sangoma Misc Destinations overview and PBX GUI 13 user guide, FreePBX Misc Destinations release/17.0 repository metadata and generated-dialplan source, current Sangoma outbound-route documentation, and current Asterisk dialplan documentation reviewed October 12, 2026; the Sangoma screen guide is explicitly version 13, repository state does not prove an installed module or generated configuration, and no PBX, module, destination, consumer, route, trunk, dialplan, endpoint or call was inspected or testedIntermediateDocumentation based · not lab tested

Freeze one selecting branch and one symptom

Record one authorized occurrence with timestamp and timezone, source DID or internal caller, matched inbound route or application, IVR digit or condition branch, selected Misc Destination, intended dial string and observed outcome. Classify the first symptom: wrong saved object, wrong digits, no loaded target, invalid extension, blocked feature, wrong outbound route, trunk failure, no answer or media failure.

Do not begin by renaming duplicate objects or changing every outbound pattern. Preserve the installed FreePBX and Misc Destinations versions, saved configuration, generated files and relevant call evidence.

Prove which saved object the consumer references

Inspect the selecting IVR, inbound route, time condition, announcement, callback or other module and capture its destination type and stable identifier. Then resolve that identifier to the current Misc Destination description and exact dial string. A matching label is insufficient when objects were copied, renamed or recreated.

If the consumer references another destination type, stay with that owner. Misc Applications create dialable internal codes, while Custom Destinations publish custom dialplan targets; neither should be rewritten to make a Misc Destination trace appear correct.

Compare saved, generated and loaded state

After a supported Apply Config, locate the installed module's generated ext-miscdests entry for the selected record and compare its target digits with the saved value. Then inspect the loaded Asterisk dialplan for the same record. Keep a stale generated file, rejected reload and stale loaded context as separate failures.

Do not edit generated FreePBX files as a durable repair. Correct the owning record or apply-config failure, regenerate, reload and recheck the exact target.

Follow the configured digits into the first real owner

The release/17.0 source hands the stored digits into internal dialing logic. Trace the first loaded match for those exact digits and caller context: extension, feature code, queue, voicemail, DISA, outbound route or invalid extension. Preserve prefixes and transformations at every boundary.

A valid ext-miscdests entry can still reach the wrong owner because the stored digits are wrong or because another pattern wins later. Conversely, an expected external number that matches no permitted outbound route is not repaired by recreating the wrapper.

Separate outbound policy and carrier outcome

For an external target, prove the matched outbound route, transformed digits, caller-ID owner, selected trunk, provider response, answer and media in order. A route match does not prove carrier acceptance, and carrier acceptance does not prove the intended person answered or heard audio.

For a feature or privileged target, prove the source caller is authorized. An inbound IVR branch does not inherit trust simply because the generated handoff enters from-internal; add explicit authentication or redesign the call flow when the target requires it.

Correct the first divergence and retest every consumer

Change only the first demonstrated fault: consumer ID, saved dial string, apply-config result, loaded target, route pattern, restriction, caller identity or downstream owner. Retest the original branch, each additional recorded consumer, one neighboring selection and an unauthorized boundary.

Confirm the intended destination without widening unrelated dialing permissions or emergency reach. Roll back the record and consumer selections if any unaffected path changes. This workflow is documentation-derived and was not reproduced on an installed or laboratory FreePBX system.

Sources & applicability

Primary references for the technical details above. Operational examples and planning checklists are VoIP.info editorial guidance.

Examples require adaptation to your topology. No live PBX or hardware testing is claimed.