Create a Voice Connector in the Chime SDK console or via the chime-sdk-voice API; enable termination and origination, and optionally enable encryption for SRTP.
Create a Lambda function in the same AWS Region that will handle SIP media application events (NEW_INBOUND_CALL, ACTION_SUCCESSFUL, HANGUP, etc.); the function receives an event object and must return a RunApplicationActions array.
Create a SIP Media Application (CreateSipMediaApplication), referencing the Lambda ARN; only one endpoint per SIP media application is permitted — the endpoint is the Lambda ARN.
Create a SIP Rule associating either a phone number or a Voice Connector URI with the SIP Media Application so inbound calls are routed to the Lambda.
Deploy and test: place an inbound call, verify the Lambda receives the NEW_INBOUND_CALL event and returns a valid action (e.g. PlayAudioAndGetDigits or JoinChimeMeeting), and monitor CloudWatch Logs for errors.
Known gotchas
The Lambda function must respond within the Chime SDK's timeout window — long cold-start times can cause call setup failures; use provisioned concurrency for production.
SIP Media Application endpoints are Lambda ARNs only — you cannot point a SIP Media Application at an HTTP endpoint directly.
Voice Connector encryption (SRTP) requires TLS for SIP signalling as well; configuring SRTP without TLS on the trunk side causes media negotiation failures.
Give your agent this knowledge — and 200+ more routes
One MCP install gives any agent live access to the full route map, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp