Skip to main content

Connect AI voice platforms

Before you start, you need:

Connecting a standards-based PBX or SBC instead? See the example configurations on the Outbound Calls page.

Treat your FQDN like a password

Anyone who knows your FQDN and one of your attached numbers can place calls on your trunk. Keep it out of public config, screenshots and support tickets. See Outbound calls.

ElevenLabs Agents​

  1. Go to Deploy > Phone Numbers > Import a number, and select SIP Trunk.
  2. Name it (for example, "Superfone") and enter the phone number — one of your numbers attached to the trunk, in E.164, for example {{YOUR_SUPERFONE_NUMBER}}.
  3. Inbound config: set Media Encryption to Disabled.
  4. Outbound config — Address: your trunk FQDN, {{LABEL}}.sft.superfone.co.in.
  5. Outbound config: set Media Encryption to Disabled.
  6. Outbound config — Codecs: select only PCMA and PCMU. Unselect G.722 — SF Trunk does not support it.
  7. Transport: UDP (default). If you hit connection issues, try TCP on both this setting and the matching Superfone trunk setting below. SF Trunk does not support TLS — do not select it here.
  8. Save. This creates the connection between your ElevenLabs agent and your Superfone trunk.
  9. Open the phone number again and assign an agent to handle inbound calls. Use the Outbound call button there to test — always dial in full E.164, +91{{NUMBER}}.

On your Superfone trunk, set:

FieldValue
customer_sip_hostsip.rtc.elevenlabs.io
customer_sip_port5060
customer_sip_transportudp (try tcp if you have issues — match whatever you set in step 7)

Vapi​

Vapi's gateway form needs a numeric IP for any gateway with inbound calls enabled, and accepts a domain only when inbound is off. Set up two separate gateways:

Gateway #1 — inbound (calls from Superfone to Vapi)

FieldValue
IP Address / DomainSuperfone's SIP signalling address — see Network addresses to allowlist
Port5060
Netmask32
Outbound ProtocolUDP
Allow inbound calls✅
Allow outbound calls⬜

Gateway #2 — outbound (calls from Vapi to your trunk)

FieldValue
IP Address / Domain{{LABEL}}.sft.superfone.co.in
Port5060
Netmask32
Outbound ProtocolUDP
Allow inbound calls⬜
Allow outbound calls✅

On the phone number's Advanced Settings, turn on "Enable leading plus for outbound calls" — SF Trunk requires E.164 numbers with a leading +, and calls will be refused with 400 Bad Request without this.

If Vapi also filters inbound media by address, allow Superfone's media (RTP) address and port range from Network addresses to allowlist.

On your Superfone trunk, set:

FieldValue
customer_sip_host44.229.228.186 (US region) or 63.182.83.170 (EU region)
customer_sip_port5060
customer_sip_transportudp

Bolna​

In Bolna's Create/Edit SIP Trunk wizard:

  1. Basics: platform Custom.
  2. Authentication: auth type IP-Based. Enter Superfone's SIP signalling address — see Network addresses to allowlist — as the trusted source IP.
  3. Gateways: address = your trunk FQDN, {{LABEL}}.sft.superfone.co.in, port 5060.
  4. Advanced:
SettingValue
Allowed Codecsulaw,alaw
Disallowed Codecsall
Transport ProtocolUDP
SIP OPTIONS Ping Interval60
RTP SymmetricOn
Force rportOn
Enable Inbound CallingOn
Prepend + to Outbound NumbersOn
Trunk ActiveOn
  1. Review and save.

If Bolna also filters inbound media by address, allow Superfone's media (RTP) address and port range from Network addresses to allowlist.

On your Superfone trunk, set:

FieldValue
customer_sip_hostsip.bolna.ai
customer_sip_port5060
customer_sip_transportudp

Retell​

  1. Go to Phone Numbers, and import or add a number.
  2. Enter your Superfone number, in E.164, for example {{YOUR_SUPERFONE_NUMBER}}.
  3. Termination URI: your trunk FQDN, {{LABEL}}.sft.superfone.co.in. This is the address Retell sends calls to when your number places an outbound call.
  4. Click Test SIP Connection.
  5. Once connected, open the number and assign an agent to handle inbound calls.

On your Superfone trunk, set:

FieldValue
customer_sip_hostsip.retellai.com
customer_sip_port5060
customer_sip_transporttcp (Retell's recommended transport; udp also works)
No IP whitelisting needed

Retell routes inbound calls by the dialled number, not by source IP, so there is nothing to whitelist on Retell's side. Superfone has no IP-ACL setting on the trunk either — this integration needs no IP list in either direction.

Next Steps​