Skip to content

VAD (Voice Activity Detection) Configuration

Optional advanced setting that lets you tune how long the system waits in silence before treating the caller's turn as finished. When omitted, the system default applies.

Optional advanced setting

Only set vad when you have a concrete use case where the system's default end-of-turn timing is too eager or too patient.

Type

typescript
interface VadConfig {
  /**
   * Milliseconds of silence after the caller stops speaking before their turn
   * is considered finished. Recommended range 150–2000.
   * Lower values yield faster turn-taking; higher values tolerate longer pauses.
   */
  end_of_turn_silence_ms?: number;
}

Where to set it

VadConfig is accepted on two action types:

  • speak.vad — applies to the caller's reply that follows. Persists until overridden.
  • configure_transcription.vad — applies for the rest of the session.

Lenient validation

If you send an out-of-range, non-integer, or otherwise invalid value, the field is silently ignored — the system default takes over. Your action still runs normally; only the bad VAD value is dropped. This avoids breaking call flows over a typo.

Example: tolerate long pauses (e.g. spelling)

typescript
return {
  type: "speak",
  session_id: event.session.id,
  text: "Please spell your last name, letter by letter.",
  vad: {
    end_of_turn_silence_ms: 1500,
  },
};

Example: snappy back-and-forth

typescript
return {
  type: "speak",
  session_id: event.session.id,
  text: "Did you mean account number 1234?",
  vad: {
    end_of_turn_silence_ms: 250,
  },
};

Example: set once for the whole session

typescript
return {
  type: "configure_transcription",
  session_id: event.session.id,
  vad: {
    end_of_turn_silence_ms: 1000,
  },
};

VAD vs Barge-In

vad and barge_in are related but distinct:

  • vad governs when the caller's turn is considered finished.
  • barge_in governs whether and how the caller may interrupt the assistant while it is speaking.

Both can be set on the same speak action.

Next Steps