Engine & deployment

Settings

The engine and platform settings an operator is most likely to change.

These are environment variables, read once at start. This page lists the ones that shape call behaviour. The complete tables, generated from the code, ship with the backend in its deployment guide.

Choosing engines and modes (platform)

VariableDefaultMeaning
DEFAULT_ENGINEmockEngine for agents that do not choose one
TELEPHONY_MODEmockmock simulates numbers and dialling; live uses the provider
OWN_AGENT_WS_URLPublic WebSocket address of the voice engine
ENGINE_PUBLIC_WS_URLws://127.0.0.1:9140/webAddress the browser voice test connects to
ENGINE_SHARED_SECRETShared by the platform and the engine
ENGINE_HEALTH_URLThe engine's capacity endpoint, so readiness and admission can see it
PUBLIC_BASE_URLThe API's public address, used in provider callbacks
ALLOW_PRIVATE_URLSfalseLets webhooks, tools and knowledge-base URLs reach private addresses. Development only.
REQUIRE_VERIFIED_EMAILfalseBlocks calling until the login's email is confirmed

Models (engine)

VariableDefaultMeaning
ASR_BACKEND, LLM_BACKEND, TTS_BACKENDopenaiBackend per stage
ASR_BASE_URL, LLM_BASE_URL, TTS_BASE_URLEndpoints of OpenAI-style servers
ASR_MODEL, LLM_MODEL, TTS_MODELwhisper-1, gpt-4o-mini, tts-1Model names sent to them
LLM_USE_AGENT_MODELtruefalse pins LLM_MODEL whatever the agent says
LLM_TEMPERATURE, LLM_MAX_TOKENS0.3, 250Used when the agent sets none
TTS_VOICEDefault voice
TTS_USE_AGENT_VOICE, TTS_VOICE_MAPfalsePass the agent's voice through, or map it
ASR_MAX_CONCURRENCY, LLM_MAX_CONCURRENCY, TTS_MAX_CONCURRENCY4, 4, 2Requests in flight across all calls

Turn-taking (engine)

VariableDefaultEffect
VAD_END_SILENCE_SHORT_MS, VAD_END_SILENCE_MS, VAD_END_SILENCE_LONG_MS450, 600, 800Silence that ends a turn. The largest part of response time. Lower answers sooner and cuts in on callers who pause.
VAD_ADAPTIVE_ENDtruefalse always uses the middle value
VAD_START_MS100Speech needed to start an utterance
BARGE_IN_MIN_SPEECH_MS260Speech needed to pause the agent
INTERRUPTION_WORDS1Words needed to take the turn, when the agent sets none
VAD_ENERGY_THRESHOLD, VAD_NOISE_RATIO500, 3Raise on noisy lines
ECHO_GUARDtrueThe echo guard
NOISE_SUPPRESSIONofflight enables spectral suppression
TURN_MERGE_GRACE_MS2000Window in which a resumed sentence is merged into the previous turn

Call limits (engine)

VariableDefaultMeaning
MAX_CALLS8Simultaneous calls per engine process; 0 means no limit
SHUTDOWN_GRACE_SECONDS120Time calls in progress get to finish on shutdown
HANGUP_AFTER_SILENCE10Seconds of silence before hanging up, when the agent sets none
CALL_TERMINATE600Longest call in seconds, when the agent sets none
MAX_CONSECUTIVE_FAILURES3Model failures in a row before the call is ended
WEB_MAX_SECONDS300Longest browser test call
TOOL_TIMEOUT10Seconds a function tool may take

Features (engine)

VariableDefaultMeaning
PII_REDACTIONmaskoff, mask or strict, when neither the agent nor the workspace sets a policy
RECORD_CALLSEmpty records the calls the platform knows about
KB_TOP_K, KB_TIMEOUT3, 1.5Passages per search and the time allowed
DTMF_COLLECT_TIMEOUT, DTMF_INTER_DIGIT_TIMEOUT20, 5Keypad entry, in seconds
VOICEMAIL_WINDOW12Seconds after answer in which voicemail is looked for
WEB_ALLOWED_ORIGINSthe local dashboardPages allowed to open a browser test call
EXOTEL_WS_USER, EXOTEL_WS_PASSWORDCredentials Exotel must present. Unset refuses every Exotel connection.

Reliability (platform)

VariableMeaning
IDEMPOTENCY_TTL_HOURSHow long idempotency keys are remembered
JOB_MAX_TRIESAttempts before a background job goes to the dead-letter list
RECORDING_RETENTION_DAYSWhen recordings are deleted. By default they are kept.
MAX_BODY_BYTESLargest request body outside the upload routes
DB_POOL_SIZE, DB_MAX_OVERFLOWDatabase connections per process

Billing, messaging and email (platform)

The price book file, tax settings, the payment provider, the SMS and WhatsApp providers and the email backend each have their own settings. See Billing and the deployment summary.