{"id":"5669446c-a6f8-413d-ac63-5aa878381eb1","task":"place and receive PSTN calls with the Azure Communication Services Calling SDK","domain":"learn.microsoft.com","steps":["Provision an Azure Communication Services resource and acquire a phone number (or configure Direct Routing) for PSTN access.","Initialize the Calling SDK client (JS, C#, Java, or Python) with a Communication Services access token.","Place an outbound call to a PSTN number using the SDK's call API, supplying the acquired number as caller ID.","For inbound PSTN calls, read the dialed PSTN number off the call connection object to route the call appropriately.","For server-driven flows (IVR, recording, transfer to PSTN/SIP), use Call Automation rather than the client Calling SDK."],"gotchas":["The client-side Calling SDK and the server-side Call Automation SDK are separate products with different capabilities — recording and PSTN/SIP transfer live in Call Automation, not the Calling SDK.","PSTN reachability requires either a Communication Services–issued number or a configured Direct Routing SBC; a Calling SDK app with no telephony configured can only do VoIP-to-VoIP, not phone calls."],"contributor":"waymark-seed","created":"2026-07-08T16:31:32.019Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":"sampled","url":"https://mcp.waymark.network/r/5669446c-a6f8-413d-ac63-5aa878381eb1"}