Voice AI Ecosystem
Connect Exotel SIP trunking to Bolna Voice AI
7 min
this guide aligns exotel sip trunking with https //www bolna ai/ using the same patterns as the other voice ai integrations in this repository outbound exotel = create trunk → map did → credentials; inbound = destination uri on the trunk; connect = sip \<trunk sid> ; acl = static ips only (mask 32), no cidr ranges on the trunk github repo (reference) https //github com/exotel/agentstream voiceaiecosystem applicability hybrid — byot is api/config driven (sip trunk objects) and may also have portal steps depending on account access (sip is beta) outbound sip is supported with byot, bolna places outbound pstn calls over sip through your trunk it resolves from number to your trunk, then signals to your gateway (exotel edge ip\ port ) using userpass (or ip based ) auth that is the flow described in make outbound calls via your sip trunk part b below is exactly what exotel needs on the carrier side for that outbound sip leg bolna also offers a dashboard connector for exotel (rest api link) — see connect your exotel account to bolna this article focuses on sip byot where you configure exotel sip trunking and a bolna sip trunk together bolna sip trunking is beta ; srtp is not supported (plain rtp) see bring your own sip trunk engineering detail \[bolna/integrations/exotel vsip/bolna exotel voice ai connector md]\( / /bolna/integrations/exotel vsip/bolna exotel voice ai connector md) quickstart \[bolna/integrations/exotel vsip/quickstart md]\( / /bolna/integrations/exotel vsip/quickstart md) what bolna expects (byot) topic detail create trunk https //www bolna ai/docs/api reference/sip trunks/create — post https //api bolna ai/sip trunks/trunks with bearer token auth userpass (username/password) or ip based with ip identifiers on bolna gateway points to your carrier — for exotel, use exotel edge ip\ port from https //docs exotel com/dynamic sip trunking/network and firewall configuration inbound origination carrier sends traffic to sip 13 200 45 61 5060 per https //www bolna ai/docs/sip trunking/byot inbound calls — confirm in current bolna docs outbound calls https //www bolna ai/docs/sip trunking/byot outbound calls — agent telephony provider sip trunk, from number on trunk what you will set up direction summary outbound bolna → sip digest → exotel edge → pstn inbound pstn → exotel did → trunk destination uri toward bolna (13 200 45 61 5060 per bolna) → bolna agent part a — bolna obtain sip trunk / byot access (enterprise\@bolna ai if required) create sip trunk with gateway = exotel edge ip\ port and userpass matching exotel post /credentials — this is what enables outbound sip from bolna → exotel → pstn add phone numbers to the bolna trunk (required for from number on outbound calls) set agent telephony provider to sip trunk, then place outbound calls with the https //www bolna ai/docs/sip trunking/byot outbound calls (from number must be a did on the trunk) for inbound only map numbers to agents per https //www bolna ai/docs/sip trunking/byot inbound calls and ensure exotel routes to sip 13 200 45 61 5060 per bolna (part c) alternative use https //www bolna ai/docs/exotel connect provider n in bolna providers instead of manual sip byot when that product path fits part b — exotel (outbound sip) create trunk map did — post /trunks/{trunk sid}/phone numbers post /credentials — user name, password (same as bolna auth username / auth password for userpass) optional post /whitelisted ips only if bolna publishes a single static ip you must allow on exotel (bolna docs reference 13 200 45 61 in troubleshooting — always confirm with current bolna documentation) use mask 32 part c — exotel (inbound sip) post /destination uris on the trunk so inbound pstn is routed toward bolna’s sip entry (host/port per bolna — typically aligned with 13 200 45 61 5060 ; format per exotel api) 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 full reference docid 2oddtedmmf64scwjhgvkt troubleshooting symptom what to check no media / failed sdp srtp — bolna does not support srtp; use plain rtp outbound fails trunk is active on bolna; gateway ip\ port; digest match inbound never hits bolna exotel destination uri ; bolna inbound enabled; number mapping connect misrouted sip \<trunk sid> only in dial whom official references resource url bolna byot setup (start here) https //www bolna ai/byot setup bolna sip introduction https //www bolna ai/docs/sip trunking/introduction bolna + exotel (dashboard) https //www bolna ai/docs/exotel connect provider bolna create sip trunk https //www bolna ai/docs/api reference/sip trunks/create bolna byot outbound https //www bolna ai/docs/sip trunking/byot outbound calls bolna byot inbound https //www bolna ai/docs/sip trunking/byot inbound calls 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.
