Skip to main content

Outbound calls

A voice AI Agent places outbound calls through a campaign. The campaign dials each contact from the phone number of a Twilio Voice or Telnyx Voice integration. When the contact answers, the AI Agent plays the opening message and then holds the conversation.

Before you start​

  • An active Twilio Voice or Telnyx Voice integration with a phone number.
  • For production calls, a Telnyx account at the Verified level. Lower levels can place test calls, but they cap calls and play a Telnyx notice before the AI Agent. See Account level.
  • Contact phone numbers in E.164 format, a plus sign (+) followed by the country code. If the voice integration is the first sender, the campaign skips contacts without a phone number. If it is a fallback sender, a contact without a phone number goes to the next sender.

To build the campaign, follow Outreach campaigns or Payment recovery campaigns, and select the voice integration as the sender.

How an outbound call works​

After the opening message, the call works like an inbound call. The call ends in one of two ways. The contact hangs up, or the AI Agent runs a Resolve or Handover action. See Call termination and handover.

Caller ID​

IntegrationNumber that the contact sees
Twilio VoiceThe phone number of the integration.
Telnyx VoiceThe number that you select in the integration: a Telnyx number or a verified caller ID. You can also route calls through your own SIP gateway.

For Telnyx, a Telnyx number in the market that you dial gives the best answer rate. See Choose the caller ID for outbound calls.

The opening message​

The Initial message of the voice sender in the campaign builder is the opening message. Insert contact data from the CSV with variables. If the message gets long, the builder shows a warning. Callers often interrupt long messages. The limit is 1,600 characters.

Three settings control how the opening message plays. They apply to every voice sender of the campaign.

SettingDefaultWhat it does
Interrupt the opening messageOffWhen on, the opening message stops if the contact starts to talk. When off, it plays to the end.
Additional delay before the opening message1500 msExtra silence before the message, from 0 to 5000 ms. It adds to the speech provider latency, so it is not the total silence the contact hears.
Voicemail actionContinueSets the action for a machine that answers. The integration must have answering machine detection on.

The opening message also waits until the contact finishes a greeting such as "Hello?". This stops the AI Agent from talking over the contact. It waits for up to 20 seconds. With answering machine detection on, it also waits for the verdict.

In the API, these settings are the sender metadata keys first_message_interruptible, first_message_delay_ms and amd_on_machine.

When the contact does not answer​

What happensResult
The phone rings for 30 seconds with no answer.The call stops. Moveo records it as delivered with the status code no_answer.
The line is busy, or the contact declines the call.Moveo records it as delivered with busy_or_rejected. Carriers report both the same way.
The number is invalid, or the carrier cannot reach it.The call fails. A delivery fallback of the campaign applies to failed contacts.
A voicemail or answering machine answers.See Answering machine detection.

Without answering machine detection, the AI Agent plays the opening message to the machine. The Voicemail detection local tool lets the AI Agent recognize the greeting and then hang up or leave a message.

Call volume and capacity​

Moveo controls how many campaign calls run at the same time:

  • One call per contact: Moveo does not dial a contact who is already on a live call with the same integration. That contact fails with an existing-session status.
  • Speech provider capacity: each call holds a speech-to-text connection and can generate speech at any moment. If the speech providers of the AI Agent have free capacity, Moveo dials. A ringing call counts as a call in progress.
  • When capacity is full: a standard campaign holds the contact. After a call ends, it dials the contact. A campaign with autonomous actions hands the contact back to the AI Agent, which picks a new time.
  • Carrier limits: your Twilio or Telnyx account sets its own limits on concurrent calls and destinations. See Account level and Trial account limitations.

For contact hours, frequency caps and stop requests on payment recovery campaigns, use a compliance profile.