vSIP Configuration
Flow and API Configuration Guide for Voice AI & Contact Centre Platforms
19 min
1\ background & objective voice ai and contact center (cc) platforms often operate robust sip based (vsip) infrastructures for ai led and agent assisted conversations however, they typically lack direct access to india’s pstn (landline and mobile networks) due to licensing and regulatory restrictions exotel , operating as a unified license (ul) virtual network operator (vno), bridges this gap by offering compliant pstn ingress/egress via its virtual sip trunking (vsip) solution objective to provide a plug and play, regulatory compliant pstn connectivity layer for both voice ai and cc platforms without disrupting their current sip infrastructure, bot orchestration logic, or agent workflow enable voice ai and contact center platforms to access indian pstn via exotel’s ul vno provide a plug and play sip trunking layer without disrupting existing bot or agent logic support both inbound and outbound pstn call flows using exotel’s vsip infrastructure streamline onboarding via apis for trunk creation, did mapping, and ip whitelisting this solution is ideal for voice ai platforms using sip based infrastructure (e g , freeswitch, kamailio, asterisk, custom sbcs) contact center platforms with on prem or cloud sip setups requiring pstn termination or origination companies seeking elastic and compliant pstn connectivity without managing telco licensing ai led and hybrid inbound/outbound voice workflows 2\ solution overview 2 1 architecture partner side existing vsip endpoint / sbc / pbx (voice ai or cc layer) exotel side ul vno sip gateway connected to indian pstn via multiple telcos connectivity options public internet (default) mpls or vpn (optional for bfsi/secure deployments; contact csm) media rtp/srtp, supporting pcma (g 711 a law) and pcmu (g 711 μ law) signaling sip over tcp or tls call flow outbound partner sbc sends sip invite (only from static ip) → exotel sip gateway → indian pstn → customer phone inbound pstn call → exotel did → sip invite (from static ip or fqdn) to partner sbc (for bot or agent) exotel virtual sip trunking – tcp integration guide exotel virtual sip trunking – tls integration guide 2 2 key capabilities dynamic channel allocation for scale management multi telco failover with 100% connectivity sla did management purchase & kyc compliant with indian regulations secure interconnects ip whitelisting, tls support regulatory compliance sdca mapping, lawful interception readiness exotel virtual sip trunking – to flow guide 3\ onboarding & integration 3 1 exotel account setup & kyc create account – sign up on exotel and select browser calling during setup complete kyc/caf – upload kyc documents 3 2 sip trunk enablement enable sip trunking – email hello\@exotel com to activate trunking & provision a virtual number/exophone retrieve api credentials – visit api settings to get account sid, key, and token to configure silence ring or remove ring duration, contact your exotel csm or email hello\@exotel com 3 3 trunk configuration via api use github repo postman collection api steps create trunk (/trunks) map dids (/trunks/{trunk sid}/phone numbers) whitelist ips (/trunks/{trunk sid}/whitelisted ips) add destination uris ( tcp, tls) set trunk external alias for vn–fqdn mapping if required (for vapi, livekit,openai etc ) 4\ inbound call setup (pstn → sip platform) create a flow using connect applet in app bazaar use sip \<trunkid> in the dial whom field for custom routing, use a dynamic url to fetch destination uri and pass headers supports up to 3 custom sip headers , e g , x param1=value1 (max 200 bytes total) headers prefixed with exotel or veeno are platform reserved connect applet – dynamic url response example { "fetch after attempt" false, "destination" { "trunk" "trunk 2134" }, "custom params" "param1=value1\¶m2=value2", "record" true, "recording channels" "dual" } reference connect applet – dynamic url 5\ outbound call setup (platform → pstn) 5 1 static ip setup request ip whitelisting via exotel support or use above repo to get it done once approved, initiate sip outbound calls to indian pstn 5 2 fqdn based setup (api triggered) configure trunk destination via api (only for fqdn based use cases) use click to call api or connect customer to flow api set destination as sip \<trunkid> in connect applet 6\ voicebot to agent handoff (vsip flow) flow voicebot runs on connect applet over vsip bot disconnects → flow moves to passthru applet → calls webhook webhook response 200 ok route to connect applet (agent group or sip trunk) 302/404 move to hangup applet example user says “talk to human” → bot ends → passthru applet → webhook (200 ok) → switchcase → connect applet (sip \<trunkid>) 7\ benefits for voice ai and cc platforms plug and play pstn access via exotel’s ul vno elastic scaling with dynamic channel allocation regulatory assurance with lawful interception readiness tls security for sensitive verticals real time programmable call routing 8\ example use cases ai led outbound campaigns (sales/nps) inbound ivr bots or reception assistants agent bot hybrid support models kyc calls and otp verification for bfsi order confirmations and fraud checks for e commerce 9\ next steps share sip endpoint details ip/fqdn, transport type, supported codecs exotel team initiates caf/kyc validation integration testing with live traffic commercial onboarding & production go live
🤔
Have a question?
Our 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.