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.
| Variable | Default | Meaning |
|---|
DEFAULT_ENGINE | mock | Engine for agents that do not choose one |
TELEPHONY_MODE | mock | mock simulates numbers and dialling; live uses the provider |
OWN_AGENT_WS_URL | | Public WebSocket address of the voice engine |
ENGINE_PUBLIC_WS_URL | ws://127.0.0.1:9140/web | Address the browser voice test connects to |
ENGINE_SHARED_SECRET | | Shared by the platform and the engine |
ENGINE_HEALTH_URL | | The engine's capacity endpoint, so readiness and admission can see it |
PUBLIC_BASE_URL | | The API's public address, used in provider callbacks |
ALLOW_PRIVATE_URLS | false | Lets webhooks, tools and knowledge-base URLs reach private addresses. Development only. |
REQUIRE_VERIFIED_EMAIL | false | Blocks calling until the login's email is confirmed |
| Variable | Default | Meaning |
|---|
ASR_BACKEND, LLM_BACKEND, TTS_BACKEND | openai | Backend per stage |
ASR_BASE_URL, LLM_BASE_URL, TTS_BASE_URL | | Endpoints of OpenAI-style servers |
ASR_MODEL, LLM_MODEL, TTS_MODEL | whisper-1, gpt-4o-mini, tts-1 | Model names sent to them |
LLM_USE_AGENT_MODEL | true | false pins LLM_MODEL whatever the agent says |
LLM_TEMPERATURE, LLM_MAX_TOKENS | 0.3, 250 | Used when the agent sets none |
TTS_VOICE | | Default voice |
TTS_USE_AGENT_VOICE, TTS_VOICE_MAP | false | Pass the agent's voice through, or map it |
ASR_MAX_CONCURRENCY, LLM_MAX_CONCURRENCY, TTS_MAX_CONCURRENCY | 4, 4, 2 | Requests in flight across all calls |
| Variable | Default | Effect |
|---|
VAD_END_SILENCE_SHORT_MS, VAD_END_SILENCE_MS, VAD_END_SILENCE_LONG_MS | 450, 600, 800 | Silence that ends a turn. The largest part of response time. Lower answers sooner and cuts in on callers who pause. |
VAD_ADAPTIVE_END | true | false always uses the middle value |
VAD_START_MS | 100 | Speech needed to start an utterance |
BARGE_IN_MIN_SPEECH_MS | 260 | Speech needed to pause the agent |
INTERRUPTION_WORDS | 1 | Words needed to take the turn, when the agent sets none |
VAD_ENERGY_THRESHOLD, VAD_NOISE_RATIO | 500, 3 | Raise on noisy lines |
ECHO_GUARD | true | The echo guard |
NOISE_SUPPRESSION | off | light enables spectral suppression |
TURN_MERGE_GRACE_MS | 2000 | Window in which a resumed sentence is merged into the previous turn |
| Variable | Default | Meaning |
|---|
MAX_CALLS | 8 | Simultaneous calls per engine process; 0 means no limit |
SHUTDOWN_GRACE_SECONDS | 120 | Time calls in progress get to finish on shutdown |
HANGUP_AFTER_SILENCE | 10 | Seconds of silence before hanging up, when the agent sets none |
CALL_TERMINATE | 600 | Longest call in seconds, when the agent sets none |
MAX_CONSECUTIVE_FAILURES | 3 | Model failures in a row before the call is ended |
WEB_MAX_SECONDS | 300 | Longest browser test call |
TOOL_TIMEOUT | 10 | Seconds a function tool may take |
| Variable | Default | Meaning |
|---|
PII_REDACTION | mask | off, mask or strict, when neither the agent nor the workspace sets a policy |
RECORD_CALLS | | Empty records the calls the platform knows about |
KB_TOP_K, KB_TIMEOUT | 3, 1.5 | Passages per search and the time allowed |
DTMF_COLLECT_TIMEOUT, DTMF_INTER_DIGIT_TIMEOUT | 20, 5 | Keypad entry, in seconds |
VOICEMAIL_WINDOW | 12 | Seconds after answer in which voicemail is looked for |
WEB_ALLOWED_ORIGINS | the local dashboard | Pages allowed to open a browser test call |
EXOTEL_WS_USER, EXOTEL_WS_PASSWORD | | Credentials Exotel must present. Unset refuses every Exotel connection. |
| Variable | Meaning |
|---|
IDEMPOTENCY_TTL_HOURS | How long idempotency keys are remembered |
JOB_MAX_TRIES | Attempts before a background job goes to the dead-letter list |
RECORDING_RETENTION_DAYS | When recordings are deleted. By default they are kept. |
MAX_BODY_BYTES | Largest request body outside the upload routes |
DB_POOL_SIZE, DB_MAX_OVERFLOW | Database connections per process |
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.