We’re running production PSTN calling through Telnyx SIP trunks and need to keep call
processing within Canada for data residency reasons (Ontario PHIPA-adjacent compliance).
From the docs, my understanding is:
Inbound: point our Telnyx trunk at <subdomain>.canada.sip.livekit.cloud (not ca)
Outbound: set destination_country: "ca" on the trunk config
Two questions:
Is canada.sip.livekit.cloud actually sufficient on its own for inbound, or does this
still require Scale plan + a support request to fully enable, like protocol-based
region pinning does for realtime SDKs?
How can we confirm, after the fact, that a given call was actually processed by
Montreal/Toronto infrastructure and didn’t silently fail over to a US node? Is there
a call log field, SIP header, or API response that surfaces the handling region? The
static IP table in the regions doc lists identical IP blocks across Canada/EU/India/
Japan/US, so we can’t use IP as a reliable signal.
Any guidance from the LiveKit team or others who’ve set up Canada-pinned Telnyx trunks
in production would help a lot. Thanks!
Hi, yes, your understanding is correct for the inbound and outbound trunk settings.
Yes, there are two types of region pinning: telephony region pinning that is used with canada.sip.livekit.cloud which is available to all account tiers (including free) and protocol-based region pinning, which requires Scale tier or higher.
The region for the SIP participant is given in the dashboard (this screenshot is from a call I made to a LiveKit phone number, which connects to our US region). This information is also available through the analytics API, Analytics API | LiveKit Documentation, though that API DOES require Scale tier or higher.