Session idle timeout
VoiceThere disconnects idle WebRTC peers after a configurable period with no qualifying activity. Idle timeout settings control how long a session stays connected when nobody is speaking, sending data-channel messages, or otherwise resetting the timer. Longer timeouts or disabling auto-idle increase billable session time.
Where to configure
- Dashboard: Project overview → Session settings → Auto idle timeout, voice/data timeouts, and reset toggles.
- CLI:
voicethere projects session-settings listandvoicethere projects session-settings set <key> <value> - API:
PATCH /projects/:projectId/session-settings— see Control plane API.
Settings are saved on the project immediately but apply to live sessions only after you Deploy to cloud (runner env is updated at deploy time).
idle_timeout_enabled
When true (default), idle peers are disconnected automatically. When false, sessions can remain connected and billable indefinitely until the client disconnects or another limit applies — use only when you understand the billing impact.
Voice vs data-only timeouts
| Key | Default | Applies when |
|---|---|---|
idle_timeout_seconds | 120 | Voice or voice+data projects — seconds without activity before disconnect. |
data_only_idle_timeout_seconds | 120 | Data-only projects — seconds without client→server data-channel traffic. |
Platform default maximum is 120 seconds; your organization may allow higher values via API on eligible plans. Minimum is 30 seconds.
What resets the idle timer
idle_timeout_voice_activity(defaulttrue) — user speech and agent TTS reset the countdown on voice / voice+data projects. When off, voice does not extend the session — a call can still hit idle timeout while people are talking. Ignored for data-only projects.idle_timeout_dc_inbound(defaulttrue) — client→server data-channel messages reset the timer. When off, inbound DC traffic does not extend the session.
Billing warning
Billable time is tied to connected WebRTC peers. Disabling auto-idle or raising timeout values keeps sessions open longer and increases usage credits consumed. See Billing & usage credits.
CLI examples
# List session settings (idle keys and defaults) voicethere projects session-settings list # Voice idle timeout — 90 seconds (redeploy to apply) voicethere projects session-settings set idle_timeout_seconds 90 voicethere deploy --wait # Disable auto idle (billing risk — sessions stay connected) voicethere projects session-settings set idle_timeout_enabled false # Data-only project: longer DC idle window voicethere projects session-settings set data_only_idle_timeout_seconds 60 # Voice activity does not reset timer (strict wall-clock idle) voicethere projects session-settings set idle_timeout_voice_activity false # Data-channel inbound does not reset timer voicethere projects session-settings set idle_timeout_dc_inbound false
Related
- Runner settings — idle scale-down (runner pool) vs per-session idle disconnect
- Billing & usage credits
- Control plane API — session settings