Skip to content

Glossary ​

Terms as this documentation uses them. Where a word means something different in telephony and in voice AI, both are here, because CallAgent is both.

The primitives ​

Assistant — a versioned bundle of prompt, transcriber, model, voice, tools and plans. The unit a call runs. →

Assistant version — an immutable snapshot of an assistant, created by publishing. A call pins the version it started with. Carries a config_hash.

Squad — several assistants sharing one call, with explicit handoffs between them. →

Tool — a function the model may call mid-conversation. 25 types. →

MCP server — an external tool server attached whole, with per-tool risk levels. →

Knowledge base — documents chunked, embedded and retrieved at conversation time. →

Call — one conversation and everything it produced: transcript, messages, events, metrics, costs, artifacts. AI and human legs share one record.

Leg — one party's connection to a call. A transferred call has more than one.

Artifact — a file a call produced: a recording, a transcript JSON, an event dump. →

The pipeline ​

Turn — one exchange: the caller speaks, the assistant answers.

Transport — how audio reaches the gateway. A Twilio media stream, a FreeSWITCH channel, a browser WebRTC session.

STT / transcriber — speech to text. Streams partial hypotheses as the caller talks.

Partial — an interim transcript, revised as more audio arrives. Final — the transcriber's committed version of an utterance.

Endpointing — deciding the caller has finished. The stage nobody expects and everybody feels. →

Barge-in — the caller talking over the assistant, and the assistant stopping.

Acknowledgement phrase — a whole utterance ("mm-hmm", "right") that does not count as an interruption.

Interruption phrase — a phrase ("stop", "hold on") that interrupts immediately, skipping every other gate.

Echo guard — rejecting the assistant's own audio, arriving back through the carrier, as if it were the caller speaking.

TTS — text to speech.

Chunker — splits the model's token stream at clause boundaries so synthesis starts before the model finishes writing.

TTFT — time to first token from the model. TTFA — time to first audio from the voice. Both are what the caller feels; the totals are what you are billed for.

Speech to speech (S2S) — giving the model audio directly, skipping STT and TTS. Configurable in CallAgent and not wired up.

Fallback chain — an ordered list of providers for a stage. Index 0 first, maximum two fallbacks.

Circuit breaker — taking a repeatedly failing provider out of rotation instead of retrying it into the ground.

Telephony ​

PSTN — the ordinary public telephone network.

SIP — the signalling protocol that sets up and tears down calls. It carries no audio.

RTP — the protocol that carries the audio. A working SIP exchange with no RTP is a connected call with silence, and it is the most common SIP problem there is.

Trunk — the relationship with a carrier: credentials or an IP allowlist, codecs, number formatting, limits. →

Gateway (SIP) — one host under a trunk. Several give failover. Not to be confused with the voice gateway, which is CallAgent's own media process.

REGISTER — the SIP message a trunk sends to say "I am here, send me calls". A registering trunk keeps that dialog alive; an IP-authenticated one does not register at all.

DID — Direct Inward Dialling: an inbound number on a trunk.

E.164 — the international number format: + then country code then the number. +40712345678.

DTMF — the tones a keypad makes. rfc2833 sends them as RTP events (reliable); inband sends them as audio (fragile under transcoding); info sends SIP INFO messages.

Media stream — a carrier feature that forks the call's audio to a WebSocket. How a Twilio call reaches the AI pipeline.

AMD — answering-machine detection.

Codec — how audio is compressed. PCMU/PCMA are G.711 µ-law and A-law, 8 kHz, the telephony default. CallAgent normalises everything to 16 kHz mono PCM internally.

SBC — Session Border Controller, the box a carrier puts at its edge.

Caller ID presentation — the number shown to the person you call. You may only present a number your organization owns.

Contact centre ​

Queue — callers waiting, with a distribution strategy and an SLA. →

Operator — a person who takes calls. Called an agent elsewhere; this documentation says operator throughout.

Offer — a call presented to an operator. It expires; an expired offer is a no_answer.

Distribution strategy — how the next operator is chosen. Nine of them.

Penalty — a per-queue-member tier. The first sort key in every strategy: penalty tiers are exhausted before the strategy's own rule applies within a tier.

Skill — a competency with a proficiency. Matching fails closed: a missing mandatory skill excludes an operator entirely.

Wrap-up — after-call work. A server-side deadline, not a browser countdown.

Disposition — the outcome an operator records during wrap-up.

Blind transfer — hand the call over and hang up. Warm (consultative) transfer — speak to the destination first. Warm transfer needs FreeSWITCH; there is no Twilio equivalent.

Handover — the assistant giving the call to a human. The caller is never re-dialled — the existing leg is redirected or bridged.

Briefing — the transcript, summary, intent and context handed to the operator at handover, frozen when the caller entered the queue.

Listen / whisper / barge — a supervisor hearing a call, speaking to the operator only, or joining it. Audio is not proven.

Service level — the percentage of calls answered within service_level_seconds.

ASA — average speed of answer. AHT — average handle time.

IVR — the "press 1 for sales" menu. A published node graph, 16 node types.

Ring group — several operators rung together or in sequence.

Time condition — routing by weekly hours, holidays and a manual override.

Platform ​

Organization — the tenant. Every API key belongs to exactly one, and there is no organization_id parameter anywhere in the API to tamper with.

ULID — the id format: 26 Crockford base-32 characters, sortable by creation time. 01M1ZKWXMFRDX6TK3QYR2EV9VY.

Scope — a permission on an API key, resource.verb. assistant.read, recording.delete. resource.* grants the group. An empty scope list means everything.

Client token — a short-lived JWT a browser gets in exchange for a public key. Bounded to one organization, one assistant, one session.

Idempotency key — makes retrying a create safe. On POST /calls it is enforced by a unique index, so a retry returns the original call rather than dialling twice.

Event id — the stable identifier on a webhook delivery, repeated across retries and redeliveries. The thing to dedupe on. Not the delivery id.

Snapshot — the frozen configuration handed to the gateway at call setup. Nothing in it changes during the call.

Wire format — the camelCase contract shape the gateway receives, which is not the snake_case shape the REST API accepts. Converted between by the control plane.

Unpriced — a cost row with a real quantity, cost = 0 and priced: false, produced when the registry has no verified price. A visible gap rather than a guess.

Margin floor — a minimum platform margin per billable minute, topped up when the per-component margins do not reach it.

Ledger — the insert-only credit record. Balances are a cache of it; the ledger is authoritative by definition.

Zero data retention (ZDR) — nulling conversation content while keeping the call's identity, duration, costs and metrics.

Redaction — two different things. Secret redaction masks credential-shaped values in logs and webhook payloads. PII redaction masks card numbers and similar in transcripts, at finalisation, and never touches audio.

Words this documentation avoids ​

Agent — ambiguous between an AI assistant and a human operator. This documentation says assistant and operator.

Bot — not used.

Verified — used only in the provider SDK's narrow sense: a wire format reviewed against vendor documentation. It does not mean tested against a live vendor.

Documented against the code. Anything not yet implemented is labelled, never described as working.