Observe the incoming request
Place one outside test call and record its time. Confirm that it reaches the PBX and is associated with the intended trunk. If no request arrives, investigate upstream delivery before modifying route fields.
A working outbound call does not prove inbound number routing. Diagnose the direction and the matching rule independently.
Compare the number format
Inspect the called number actually presented to FreePBX. Country prefixes, leading plus signs or carrier-specific delivery formats can differ from the number as printed in business records. Match according to the provider's documented format.
Review caller-ID restrictions separately. A caller-ID filter narrows which callers match; it does not replace the DID field. Check whether another route or destination rule explains the observed result.
Follow the selected destination
Confirm the route points to an existing extension, group, IVR or schedule and that the latest changes were applied. Test the destination internally where practical. An inbound match can be correct while a downstream time condition sends the call elsewhere.
Prove the scope
After repair, test the affected DID, another DID and the relevant open/closed schedule. Remove temporary catch-all behavior unless it is an intentional documented business rule. Keep the exact before-and-after match values with the change record.
Sources & applicability
Primary references for the technical details above. Operational examples and planning checklists are VoIP.info editorial guidance.
- IETF RFC 3261 — SIP, including linked updates ↗
- IETF RFC 3550 — RTP and RTCP ↗
- Asterisk res_pjsip configuration ↗
Examples require adaptation to your topology. No live PBX or hardware testing is claimed.