Connect by JBRH Open Connect

Voice profiles

A voice profile is one named set of settings deciding how a line sounds and behaves. Half of it becomes session parameters the engine enforces exactly — model, voice, silence timers, interruption thresholds. The other half becomes written directions the model follows approximately — pace, warmth, fillers, formality. Connect labels every control with which of the two it is, because a slider that only asks is not a slider that sets.

Status
Available What this means
Audience
both
Channels
phone
In the app
#/calls
Last verified
Product version
6.3.2

Three kinds of control, and the difference is not cosmetic#

A speech-to-speech model has no separate synthesiser, so there is no pitch dial in the sense a text-to-speech product has one. Everything you might want to change about a voice therefore falls into one of three kinds, and an interface that does not say which is lying by omission.

KindHow it is appliedHow exact it is
engineA session parameter sent when the model session opensExact — a 450 ms silence threshold is 450 ms
promptA sentence in the instructions the model readsA direction. The model follows it well on some turns and drifts on others
coarseAlso a sentence, for something the model can only approximateAn approximation, and labelled as one rather than shown as a slider

The practical consequence: an engine control that does not work is a bug, and a prompt control that does not work may simply be beyond the model. Two behaviours here were rolled back rather than left in for exactly that reason — a respect-word cadence rule that changed six of eight replies and answered an English sentence in Telugu, and murmur handling, where a prompt sentence changed nothing at all.

What a session parameter can set#

These reach the model as configuration rather than as prose, so they hold for the whole call regardless of what the conversation does: the model and the voice, a pinned language code, temperature, reply length, affective dialog where the model supports it, the model's own end-of-speech silence (the *fast* setting is 450 ms), pre-emptive generation, thinking off, the interruption threshold in both seconds and words, whether a false interruption resumes, noise cancellation, and the silence-check and hang-up timers.

Some of them are model-specific rather than universal. Affective dialog is available on native-audio models and refused by others; a model whose session the SDK marks immutable cannot take a mid-call note at all, so notes and supervisor guidance are recorded as undelivered rather than silently dropped.

What only a direction can ask for#

Speed, pitch, energy, warmth, emotion, pauses, fillers, formality, humanness, accent and pronunciation are written into the instruction block as lines the model reads. So is behaviour: role, goal, tone, style, knowledge, hard rules, what to ask and never ask, objection handling, escalation, the opening and closing, proactiveness, language switching and how memory is used.

Because these cost instruction characters, and instruction size shows up as first-token latency, a whole-person profile is held under roughly 2,500 characters. A 7,500-character instruction measured a 1.2–1.8 s first token here; 9,600 characters measured 2.3–3.4 s. Every sentence added to a personality is paid for on every call it opens.

Does Connect use voice profiles?#

Used, on the realtime engine, for both audiences, from Phone → Setup → Voice Lab. Settings resolve narrowest-wins in a fixed order: the workspace, then the default profile, then a profile chosen by purpose, then one attached to a line number, then one on the contact, and finally the Lab's own draft when you are making a test call.

There is no campaign object in the model, so *per campaign* here means *per purpose*, and the purposes are inbound, service, transactional and promotional. Whatever the resolution produces is snapshotted onto the call's quality record, so a review judges the settings that actually ran rather than the settings in force when somebody opened the screen a week later.

A separate layer supplies whole people rather than individual knobs: a structured preset of 86 parameters, each carrying its own kind, and 28 profiles — a given name and a city, never a real person — whose values come from published speech research rather than from taste. Rate by age band, fillers per hundred words, syllable-timed rhythm for Indian English, politeness markers, older speakers slower and more formal.

What no profile can set#

Anything the stack cannot actually control is listed as unsupported and shown as unsupported — never rendered as a slider that quietly does nothing. That list includes fundamental frequency in hertz, loudness in decibels, jitter and shimmer, formant positions, exact pause lengths in milliseconds, and a deliberate delay before answering.

Refusing to draw those controls is the honest position for a speech-to-speech stack, and it is also the useful one: a person tuning a line learns quickly which levers move the call and stops spending attention on the ones that cannot.

Questions#

Why can I not set the pitch of the voice?

Because there is no synthesiser in the path to set it on. The realtime engine generates speech directly from the conversation, so pitch can be *asked for* in the instructions and cannot be *set* as a parameter. The control is shown as a direction, and hertz is shown as unsupported rather than as a dial.

Which profile wins when several apply?

The narrowest. A profile on the contact beats one on the line number, which beats one chosen by purpose, which beats the workspace default. A draft in the Voice Lab beats all of them, but only on a test call from the Lab itself.

Are the named voice profiles based on real people?

No. Each is a given name and a city, invented for the purpose, with parameter values taken from published speech research. Nothing in them is modelled on an identifiable person.