VoIP.info Troubleshooting

Bulk Solutions outbound works but the inbound DID misses the PBX

Trace DID assignment, inbound trunk group, provider destination, signaling source, Request-URI, PJSIP identification, FreePBX route and media without changing outbound identity.

Reviewed 2026-10-18Current first-party Bulk Solutions IP-authentication, registration, inbound, outbound, direction-split integration and emergency documentation reviewed October 18, 2026. The current material separates portal host or trunk-group ownership, DID assignment, source-IP authorization, digest credentials, optional registration requirements, provider service-hostname use, request identity, PBX matching and call media. The public FreePBX PDF identifies FreePBX 14.0.4.5 and chan_sip and is retained only as legacy field-orientation context, not a FreePBX 17 PJSIP template. Provider examples are documentation evidence rather than observed account state. No Bulk Solutions account, host, trunk group, DID, credential, registration, DNS answer, address, PBX, firewall, packet, media stream, emergency workflow, price, invoice or live call was inspected or testedAdvancedDocumentation based · not lab tested

Freeze one inbound miss and the successful outbound control

Record the DID, timestamp and timezone, inbound trunk group, customer destination, outbound trunk group and identity mode, DNS answers, provider attempt, customer-edge receipt, PBX response, route result, SDP and audio. Redact credentials, customer addresses and telephone numbers before sharing.

The working outbound call is a bounded control for that outbound identity and route. It does not establish that the DID points to the same trunk group, that the provider can reach the customer listener or that the inbound request matches the intended PBX object.

Prove DID ownership and inbound destination first

Confirm the exact DID is assigned to the intended inbound IP trunk group and that the group points to the current PBX public address or supported hostname and port. Preserve the provider-side call or ladder evidence when available. A DID owned by the account but assigned to another group can never be repaired by changing a FreePBX inbound route.

Keep inbound IP delivery separate from an outbound credential or registration path. A green REGISTER or successful digest-authenticated INVITE is not the destination record for an independently configured IP-authenticated inbound group.

Locate the first missing packet at the network boundary

Resolve the configured destination and provider service names at the incident time, then compare the provider attempt with a narrow edge capture and the operating-system listener. If no packet reaches the customer edge, inspect destination address, NAT, access policy and upstream path before editing Asterisk. If it arrives, retain source, destination, transport and first response.

Use current provider-source evidence rather than one address copied from a legacy PDF. Do not disable the firewall or accept anonymous SIP to make the symptom disappear.

Match the inbound request to one loaded PJSIP object

Bulk Solutions documents 11-digit request-URI delivery by default on the IP path. Preserve the actual Request-URI, To, From and asserted identity and compare them with the loaded endpoint identification, context and FreePBX inbound-route DID pattern. A packet can reach UDP 5060 yet fail before dialplan because no intended identify rule claims it.

Inspect the generated owner and loaded object before editing. Do not add a catch-all route or broad source match when one number format, provider source or context is wrong.

Separate SIP acceptance from media acceptance

After the intended inbound route answers, retain the final offer and answer, advertised media addresses, negotiated codec, observed RTP in both directions and decoded audio. SIP arrival and route matching do not establish that NAT, firewall and endpoint audio paths are correct.

A provider source list for signaling is not automatically a complete media-source inventory. Scope any temporary capture or firewall rule to the negotiated destination ports and remove it after the test.

Correct one owner and retest both directions

Correct only the earliest demonstrated mismatch: DID assignment, trunk-group destination, DNS, NAT, firewall source, listener, endpoint identification, context, number normalization, inbound route or media. Repeat the same inbound call and the known-good outbound control, then verify normal hangup and rollback.

If outbound digest challenges loop, diagnose that separately from the inbound DID: preserve the username owner, challenge, authenticated retry and any account-specific registration requirement. No account, PBX, packet, media stream or live call was inspected for this diagnostic.

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.