Skip to content

Phone numbers ​

Give an agent a real number so people can call it, and so it can call them.

The three ways to get a number ​

RouteWhen it fits
TwilioYou already use Twilio, or want numbers billed to your own account
TelnyxSame, on Telnyx
SIP trunk / BYOCYou have existing telephony — a PBX, a carrier contract, a contact centre

Twilio and Telnyx are the quickest path in the dashboard:

  1. Left sidebar → Configure → Integrations — connect the account.
  2. Left sidebar → Deploy → Phone Numbers — provision or Sync all.

Bring your own carrier

The platform also supports connecting a SIP trunk and an outbound trunk (BYOC).

Path: left sidebar → Configure → Integrations → SIP / Outbound Trunk pages.

These are the right path if you have existing carrier relationships, need calls to originate from your own infrastructure, or want to register a device — a softphone like Cisco Jabber or Webex, or an in-house build — directly into iCallAgent. See SIP trunking and BYOC for field-by-field setup.

Connecting Twilio or Telnyx ​

  1. Open the dashboard.
  2. Left sidebar → Configure → Integrations.
  3. Add the provider with your credentials:
    • Twilio — Account SID and Auth Token
    • Telnyx — API key
  4. Save. Credentials are verified against the provider before the integration saves, so an invalid pair is rejected immediately rather than failing on your first call. They're stored server-side and never returned by any API response.

See Twilio and Telnyx.

The Phone Numbers page listing provisioned numbers and which agent each routes to, with a Sync all button
Numbers appear here once Twilio or Telnyx is connected. Sync all re-pulls them from the provider.

Assigning a number to an agent ​

  1. Left sidebar → Deploy → Phone Numbers.
  2. Assign a provisioned number to an agent.

That number then:

  • Routes inbound calls to that agent
  • Acts as the caller ID on outbound calls the agent places

One agent can have several numbers — a support line and a sales line reaching the same agent, for instance.

Extensions ​

Every agent is automatically given a short extension, a dialable number that reaches it directly over a SIP trunk. Useful when you're routing calls from an existing phone system and want to send specific calls to specific agents without dedicating a full number to each.

The extension isn't shown in the dashboard yet

The value is assigned automatically and is returned by the agent API, but no page in the dashboard currently displays it. If you need it, read it from the agent record over the API or ask iCallAgent.

Don't confuse this with the Extension option under an agent's call-transfer targets — that one is an extension you type in as a destination to transfer calls to, not the agent's own.

Testing an inbound number ​

  1. Configure → Agents → confirm the agent status is Live.
  2. Deploy → Phone Numbers → confirm the number is assigned to it.
  3. Call the number from an actual phone.
  4. Left sidebar → Monitor → Conversations → open the call and read the transcript.

Use a real phone rather than a softphone for the first test. Mobile audio, network jitter and speakerphone are what your callers will actually use, and they surface timing problems a clean connection hides.

Placing outbound calls ​

Three ways, depending on volume:

VolumeUse
One callPlace it from the dashboard
A listAn outbound campaign
Triggered by another systemThe public API or Make.com

Outbound calls are gated ​

Before any outbound call is placed, the contact is checked against the blacklist, the do-not-call list, and their consent status. A blocked contact is never dialed, and the API rejects the request with the reason rather than silently skipping it.

This is deliberate — it's the mechanism that keeps outbound calling compliant. See Core concepts → Contact.

Outbound calling carries legal obligations

Rules on consent, calling hours, caller ID and AI disclosure vary by country and by state. Know what applies to you before running a campaign. Campaign scheduling supports timezones, permitted hours, allowed weekdays and excluded dates precisely so you can stay inside them.

Reaching a human ​

Most agents need an escape hatch. Give the agent the transfer call tool and tell it when to use it:

text
If the caller asks for a person, becomes frustrated, or raises
something you cannot help with, transfer the call to the support
line and tell them you're transferring before you do it.

The "tell them before you do it" part matters — a silent transfer sounds like a dropped call. See Tools.

Troubleshooting ​

Inbound calls don't reach the agent ​

  • Is the agent Live?
  • Is the number assigned to it under Phone Numbers?
  • Does the number's configuration at the provider point at iCallAgent?

Outbound calls fail immediately ​

  • Check the contact isn't blacklisted or do-not-call.
  • Check the account has remaining balance.
  • Check the campaign is active — draft and paused campaigns hold contacts without dialing.

The call connects but the agent doesn't speak ​

Check the agent's greeting is set, and look at the call under Conversations — its status and hangup cause will usually identify the stage that failed.

Next ​