VoIP.info Troubleshooting

Azure Communication Services Direct Routing SBC is offline or calls fail

Trace one failed call through retirement eligibility, resource pairing, TLS and SBC-originated OPTIONS, voice-route matching, bounded failover, application delivery and media before changing DNS or carrier routing.

Reviewed 2026-10-09Current first-party Microsoft Azure Communication Services Direct Routing retirement, provisioning, infrastructure, SIP, monitoring, migration, emergency-calling, known-limitations, certified-SBC and pricing documentation reviewed October 9, 2026; Microsoft identifies Direct Routing for retirement on September 30, 2028 and limits continued transition-period calling to customer tenants with an existing ACS resource as of the September 2026 announcement; no Azure subscription, Communication Services resource, access token, domain, DNS record, certificate, SBC, carrier trunk, number, route, SDK application, call, media stream, emergency workflow, message, price, availability, capacity, compatibility or support response was inspected or testedAdvancedDocumentation based · not lab tested

Freeze the resource, SBC and failed transaction

Record the Azure tenant, subscription and Communication Services resource, evidence that the resource falls within the September 2026 retirement transition, SBC FQDN and software, carrier trunk, protected calling and called numbers, direction, timestamp and timezone, Call-ID, portal TLS, OPTIONS and overall status, selected voice route, first response or timeout, application result and media symptom.

Do not re-pair the SBC, change its FQDN or copy a Teams Direct Routing configuration before preserving the failed state. Resource pairing, TLS, OPTIONS, route selection, carrier acceptance, application delivery, answer and media are different checkpoints.

Prove DNS, certificate and TLS identity

Resolve the SBC FQDN from the authoritative public DNS and compare it with the address and certificate actually presented. Check public-CA trust, validity, CN or SAN, Server Authentication EKU, chain and TLS 1.2 without exposing the private key. Confirm this FQDN is not also paired to Teams Direct Routing.

Retain the first TCP or TLS failure, negotiated cipher and direction. An Active TLS indicator does not prove a current OPTIONS exchange, voice-route match, carrier route or application endpoint.

Follow the SBC-originated OPTIONS exchange

Microsoft says ACS Direct Routing waits for the SBC to initiate OPTIONS. Correlate the SBC's periodic request, Azure response and portal indicator. The monitoring guide describes one-minute OPTIONS and health based on the recent sequence; the provisioning page notes that a newly configured trunk can take time to appear.

Do not turn a portal refresh delay into a blind configuration change. Compare the exact request URI, source and destination, TLS context and 200 response. Online health is narrower than proof that an INVITE will match a route or that the downstream carrier and application are ready.

Trace outbound pattern, priority and response code

For an outbound failure, preserve the E.164 or normalized destination and identify the first matching voice-route regular expression. Record priority, all candidate SBCs, their OPTIONS health, the randomly selected equal-priority peer and the SIP response. Microsoft documents next-SBC failover for 408, 503 and 504 only.

If another response occurs, retain it rather than assuming Azure should retry. Then follow the SBC's carrier-facing route, caller identity, carrier response and final destination. A different Azure route or Microsoft-number fallback is a separate path, not evidence that this Direct Routing route works.

Trace inbound delivery into the application

For an inbound failure, follow the carrier DID and Request-URI through the carrier trunk and SBC to the paired ACS resource. Then correlate the Azure call identity with the intended Calling SDK or Call Automation application's incoming event, endpoint state, answer or redirect and later media.

A completed SBC transaction can coexist with a stopped listener, wrong resource, absent endpoint or application rejection. Preserve application logs and identifiers without exposing access tokens, connection strings or personal telephone data.

Inspect SDP and packets after signaling

Compare the Azure-facing and carrier-facing SDP, selected codec, packetization, SRTP profile, media addresses and observed packets. Microsoft lists SILK, G.711, G.722 and G.729 for the SBC-to-cloud-media leg and an SRTP suite, but a published capability is not the selected result.

Prove two-way packets and decoded audio independently. Treat fax, DTMF, recording and other application media operations as separate acceptance cases; do not infer them from an answered voice call.

Close the incident with a migration decision

After a bounded correction, retest TLS, OPTIONS, route selection, carrier acceptance, application delivery, answer, two-way audio and hangup. Record rollback and remove temporary diagnostics. Do not use an unscheduled live emergency call; ACS documentation places emergency dialing outside Direct Routing scope.

If the fault exposes retirement risk, open a migration record with owner, target, feature and license comparison, SBC FQDN plan, number and carrier path, emergency design, application changes, test matrix, rollback and deadline before September 30, 2028. No Azure resource, SBC, carrier path, application or call was validated 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.