Voice AI Settings
Every setting of the voice AI: language, greeting, voice, background noise, transcription keywords, interruptions, silence check-ins, the caller's number and transfers. Each phone line, time slot and campaign has its own copy of these settings; editing one never changes another. Most settings are set through Copilot or MCP.
A voice AI's settings decide how it sounds and behaves on a call. What it says and does comes from your workflows, rules and knowledge, or a campaign's instructions.
Where settings live
Every phone line, every time slot answered by the AI, and every campaign has its own copy of the settings. Nothing is shared:
- Routing a number to a voice agent in the dashboard copies that voice agent's settings to the number. So does buying a number with Answer calls with.
- A campaign copies the settings of the assistant you pick when you create it.
- Editing one copy changes only that line, time slot or campaign. Other numbers and campaigns set up from the same voice agent keep their settings.
Changes apply from the next call, never to a call in progress.
In the dashboard
Open Settings -> Voice & SMS -> Voice agents. The dashboard calls a set of voice AI settings a voice agent. Add Voice Agent creates one, together with an access code for testing it on the demo numbers. The dashboard edits the name, language, voice, greeting and transfers. The other settings below are set through Copilot or MCP.
With Copilot or MCP
Settings are the voiceAi object on create_phone_line, update_phone_line, create_phone_line_time_slot, update_phone_line_time_slot, purchase_phone_number, create_campaign and update_campaign. Fields you leave out stay unchanged. null restores a setting's default. Use list_phone_lines or get_campaign to read the current settings.
A new voice AI needs at least language, greeting and voiceId.
Basics
| Setting | What it does | Values |
|---|---|---|
Language (language) | The language the AI speaks and the transcription expects. See Language. | A language code, such as en |
Greeting (greeting) | The first thing the AI says, word for word. The caller can't interrupt it. On campaigns, {name} inserts the recipient's name. | Up to 5,000 characters |
greetingDelayMs | How long after the call connects the AI starts the greeting. | 0-10,000 ms. Default 400 |
businessIdOverride | Answers as another business of your organization: its workflows, rules and knowledge. Not available on campaigns, which always call as their own business. | A business ID. Default: the line's business |
Language
The dashboard offers English, Greek, Spanish, German, French, Lithuanian, Italian, Dutch, Swedish, Norwegian and Danish. For another language, contact your account manager.
Each voice AI speaks one language. The AI is told to speak it, and the transcription listens for it. To serve several languages, use one number per language.
Voice
| Setting | What it does | Values |
|---|---|---|
Voice (voiceId) | The voice the AI speaks with. Choose voice lists recommended voices for the language, with a preview of each. | A voice ID |
voiceStability, voiceSimilarity | Fine-tuning of the voice. Choosing a recommended voice sets both to values tuned for it, unless you set them in the same change. | 0-1 |
backgroundAudioGain | Volume of the background noise under the AI's speech. | 0-1, 0 is silent. Default 0.45 |
list_recommended_voices returns the recommended voices with a preview URL each, optionally filtered by language. Any other voice ID works too; you can enter one in the dashboard with Enter it manually.
Transcription and turn-taking
| Setting | What it does | Values |
|---|---|---|
transcriptionKeywords | Uncommon words the transcription should expect, such as brand and product names. Keep the list short and focused; see the AI mishears names. | Up to 100 words or phrases |
interruptionMinBotSpeechMs | For this long after the AI starts speaking, any speech from the caller interrupts it. | 0-10,000 ms. Default 2,000 |
interruptionMinCallerChars | After that, how much the caller has to say, in characters, to interrupt. | 0-100. Default 10; voice agents added in the dashboard use 5 |
See Interruptions for how these work together.
Silence
| Setting | What it does | Values |
|---|---|---|
silenceCheckInAfterMs | How long both sides are silent before the AI checks that the caller is still there. | 1,000-120,000 ms. Default 15,000 |
hangUpAfterCheckIns | On which silence the AI says goodbye and ends the call instead of checking in. With the default 2, it checks in once, then ends the call on the next silence. | 1-10. Default 2 |
Every AI call also ends after about 30 minutes. That limit isn't a setting.
Caller
| Setting | What it does | Values |
|---|---|---|
shareCallerNumberWithAi | Tells the AI the caller's phone number, so it can use it, for example to look the customer up. The conversation in the help desk shows the number either way. | Default on |
Transfers
Transfers let the AI put the caller through to a person. Each destination has a name and a destination. With one destination, the AI always uses it. With several, the AI picks one by its name, so name them by what they're for, such as "Sales" or "Billing". One destination is the fallback: the call goes there if Octocom can't process the AI's choice.
| Destination | What happens | Where to set it |
|---|---|---|
| A phone number | The call is put through to the number, in E.164 format such as +15550000000. | Dashboard, Copilot, MCP |
sip:user@host | The call is put through to a SIP address. | Copilot, MCP |
your_team | The call goes to your team in the Octocom help desk, the same way as a number answered by your team. The conversation, with the AI's transcript, continues for the agent. | Copilot, MCP |
simulated | For testing transfers before a real destination exists: the caller hears that no destination is set up, and the call ends. | Copilot, MCP |
Up to 50 destinations. Through Copilot or MCP, transfers replaces the whole list.
The AI only transfers when a workflow lets it. Transfers use the built-in transferConversation action, which a workflow has to enable, as on every channel. See human escalation. Without any destinations, the same action tells the caller that someone will be in touch and hands the conversation to your team in the help desk; the caller stays on the line with the AI.
| Setting | What it does |
|---|---|
transferShowsLineNumber | Transfers to a phone number show the line's number instead of the caller's. Turn it on when transfers fail on a line from another country than its callers: carriers block forwarding a call abroad with a French or Spanish caller ID (Twilio error 32224). |