Telephony Integration
Give your AI agent a real phone number so it can take inbound calls and place outbound calls — using the same voice pipeline you hear in Voice Test. When a caller needs a person, the agent can hand the live call to a human. InfraVoice uses Twilio for telephony, and everything is set up right in the dashboard at your-infravoice-host.
You bring your own Twilio account. InfraVoice connects to your Twilio number using credentials you paste in — there's nothing to install and no code to write.
What you'll need
| You need | Where to get it |
|---|---|
| A Twilio account | Sign up at twilio.com |
| A Voice-capable phone number | Buy one in the Twilio Console → Phone Numbers → Buy a Number |
Your Account SID (starts AC…) | Twilio Console dashboard |
| Your Auth Token | Twilio Console dashboard |
Keep your Auth Token secret — treat it like a password.
Step 1 · Connect Twilio to your agent
- Open your agent from the Agents page and select the Telephony tab. You'll see the Twilio Configuration panel.
- Fill in:
- Account SID — your
AC…value from Twilio. - Auth Token — your Twilio Auth Token.
- Phone Number — your Twilio number in E.164 format (e.g.
+14155551234). - Call Direction — choose Inbound Only, Outbound Only, or Both (In + Out). For an agent that answers the phone, pick Inbound Only or Both (In + Out).
- Account SID — your
- Click Save Telephony.
Call Center dialer? If you're using the browser softphone for your human agents, the same Twilio credentials live under Call Center → Settings → Twilio Configuration. That screen also takes the extra API Key, API Secret, and TwiML App SID the in-browser dialer needs — see Step 4 below.
Step 2 · Copy the Webhook URL
After you save, the Telephony tab shows a read-only Webhook URL with a Copy button. This is the address Twilio calls whenever someone dials your number. The platform generates it for you — you don't type it.
The URL is always:
https://your-infravoice-host/api/v1/telephony/calls/inbound
Click Copy to put it on your clipboard.
Step 3 · Point your Twilio number at the Webhook URL
This step happens in the Twilio Console — InfraVoice can't change your Twilio number's settings for you.
- In the Twilio Console, open Phone Numbers → your number → Voice.
- Under "A call comes in", choose Webhook.
- Paste the URL you copied (https://your-infravoice-host/api/v1/telephony/calls/inbound).
- Set the method to HTTP POST.
- Save in Twilio.
Always paste the exact URL shown on your agent's Telephony tab. That single webhook lets InfraVoice look up which agent owns the number and answer with the right agent.
Step 4 · Test the call
Inbound: dial your Twilio number from any phone. Your agent answers with its Welcome Message and you can have a real conversation. (The agent must be published and its Call Direction set to Inbound Only or Both for the number to answer.)
You can also use Telephony Test (top of the sidebar) to check things quickly — it lists every agent that has Twilio configured, shows the number to dial for inbound, and lets you place an outbound test call to any number with Test Call.
Live calls draw a small amount of wallet credit, billed by the second. Building and editing agents is free.
Outbound calling at scale — Campaigns
To call a whole list of people, use Insights → Campaigns instead of dialing one at a time:
- Click New Campaign, pick the agent, and set the from-number, pacing, and max concurrency.
- Upload your contact list — a CSV of phone numbers in E.164 format.
- Start the campaign and watch each call dial, connect, and complete in real time, with its outcome tracked.
Hand a live call to a human (AI → human transfer)
Your AI can transfer a caller to a human agent when needed. On the Telephony tab, choose a Human Transfer mode — transfer enables automatically once you set a target, with no separate toggle:
Phone number — dial a real number
The simplest option: the AI dials a real phone number and drops off the call.
- Telephony tab → Human Transfer = Phone number.
- Enter the destination number in E.164 (e.g.
+14155559876). - Save Telephony.
At runtime the AI calls that number from your agent's Twilio number (which is used as the caller ID) and hands the caller over. No Call Center or portal is needed.
Agent panel — ring humans in their browser
Rings your human agents in their browser through the Agent Portal, and the AI can be handed back in. This uses the Call Center, so it needs a little more setup:
- Call Center → Settings → Twilio Configuration — add your Account SID, Auth Token,
API Key (
SK…), API Secret, TwiML App SID (AP…), and Default Caller ID, then Save. The API Key/Secret and TwiML App power the in-browser softphone. - Create a Call Center project and add human agents to it.
- Back on the agent's Telephony tab → Human Transfer = Agent panel, pick your project, and Save Telephony.
Once set up, when the AI transfers, an available human agent is rung in the Agent Portal, sees the conversation-so-far and the transfer reason, and can Accept the call — then Return to AI to hand the caller back.
Quick reference
| Setting | Where | Value |
|---|---|---|
| Account SID / Auth Token / Phone Number | Agent → Telephony tab | From your Twilio Console |
| Webhook URL (read-only) | Agent → Telephony tab | https://your-infravoice-host/calls/inbound |
| Twilio "A call comes in" | Twilio Console → your number → Voice | Webhook, HTTP POST |
| Outbound at scale | Insights → Campaigns | CSV of E.164 numbers |
| Human transfer | Agent → Telephony tab → Human Transfer | Phone number or Agent panel |
The whole flow lives in the dashboard. There's no API to call and no token to manage for telephony — save your Twilio details on the Telephony tab, paste the Webhook URL into Twilio, and your agent is on the phone.