Voice AI Ecosystem
Connect Exotel SIP trunking to Pipecat (via Daily)
7 min
this guide aligns exotel sip trunking with pipecat using the same exotel patterns as the other voice ai integrations in this repository outbound = create trunk → map did → credentials; optional acl = static ips only (mask 32), no cidr ranges on the trunk; inbound = destination uri on the trunk when routing toward a fixed sip partner; connect = sip \<trunk sid> where exotel’s product uses that form github repo (reference) https //github com/exotel/agentstream voiceaiecosystem applicability api/engineering driven (pipecat orchestration + daily rooms/sip) inbound is typically a dynamic daily sip uri bridge, not a single static destination uri pipecat is not a sip trunk provider pipecat agents typically use daily for webrtc and sip dial in / dial out pipecat publishes a pstn + daily sip walkthrough (upstream doc path) treat exotel as the pstn carrier your webhook server still creates a daily room with sip and bridges the live call to daily’s sip uri after on dialin ready what pipecat + daily expect topic detail sip on rooms https //docs daily co/guides/products/dial in dial out/sip — sip uri on the room, dialin ready / pipecat on dialin ready pstn example https //docs pipecat ai/guides/telephony/twilio daily sip — webhook → daily room → forward to sip endpoint pstn without exotel https //docs pipecat ai/guides/telephony/daily pstn — daily provisioned numbers what you will set up direction summary inbound (typical) pstn → exotel → your webhook → daily room + sip → bridge to daily sip uri (same shape as pipecat’s pstn guide; use exotel call control apis to attach the live leg to sip uri ) outbound daily sip dial out / start dialout → exotel edge ip\ port (digest) → pstn — exotel trunk + did + post /credentials part a — pipecat + daily follow https //docs pipecat ai/guides/telephony/twilio daily sip to implement dailytransport , on dialin ready , and bridging to sip endpoint replace the sample carrier control apis from that guide with exotel’s documented way to connect the active carrier leg to an external sip uri (your daily sip uri for that session) confirm details with https //docs exotel com/dynamic sip trunking if needed for outbound , use daily’s dial out / sip dial out toward exotel as the next sip hop, then complete part b note daily exposes a per room sip uri the static trunk destination pattern (single sip host for all calls) matches some voice ai platforms but differs from typical daily room sip — prefer the dynamic bridge unless you operate an sbc or fixed ingress part b — exotel (outbound sip toward pstn) when daily (or your sip client) sends media to exotel to reach pstn create trunk map did — post /trunks/{trunk sid}/phone numbers post /credentials — user name, password (digest aligned with the sip client leg) optional post /whitelisted ips only if daily (or your egress) publishes a single static ip you must allow use mask 32 part c — exotel (inbound pstn toward a fixed sip host) use only when your partner sip destination is fixed (not the usual per room daily sip uri case) post /destination uris on the trunk toward that host/port/transport flow → connect applet dial whom = sip \<trunk sid> (the trunk sid from exotel create trunk — not a full sip uri) map the exophone to the flow exotel api snippets authentication https //api key\ api token\@api in exotel com/ rate limit 200 requests/minute on trunk configuration apis docid\ jq98jrrnxtzaudyogodmz troubleshooting symptom what to check call never reaches daily exotel bridge to the current sip uri; room sip enabled; dialin ready / on dialin ready one way audio / codec mismatch sdp codecs — daily pcmu/pcma vs exotel pstn leg outbound fails trunk credentials ; exotel edge ip\ port and transport; did on trunk connect misrouted sip \<trunk sid> only in dial whom (when using that applet pattern) official references resource url daily dashboard https //dashboard daily co/ pipecat — pstn + daily sip https //docs pipecat ai/guides/telephony/twilio daily sip pipecat — daily pstn https //docs pipecat ai/guides/telephony/daily pstn daily — sip https //docs daily co/guides/products/dial in dial out/sip pipecat phone example https //github com/pipecat ai/pipecat examples/tree/main/phone chatbot exotel sip api https //docs exotel com/dynamic sip trunking/detailed sip trunking api reference
Have a question?
Our super-smart AI, knowledgeable support team and an awesome community will get you an answer in a flash.
To ask a question or participate in discussions, you'll need to authenticate first.
