June 15, 2026

UpdateListen: On-the-Fly Listen Configuration

You can now update the Listen configuration during a conversation without restarting the session. Send an UpdateListen message to tune:

  • eot_threshold — end-of-turn confidence threshold
  • eager_eot_threshold — eager end-of-turn confidence threshold
  • eot_timeout_ms — hard timeout for turn completion
  • keyterms — keyword boost list
  • language_hints — language bias for multilingual models

The payload nests tunable fields under listen.provider, matching the shape used in the Settings message. The provider identity (type, version, model) is required and must match the current session.

1{
2 "type": "UpdateListen",
3 "listen": {
4 "provider": {
5 "type": "deepgram",
6 "version": "v2",
7 "model": "flux-general-multi",
8 "eot_threshold": 0.8,
9 "eager_eot_threshold": 0.5,
10 "eot_timeout_ms": 3000,
11 "keyterms": ["Deepgram", "speech-to-text"],
12 "language_hints": ["en", "es"]
13 }
14 }
15}

UpdateListen is a partial update — omitted tunable fields keep their current value, except language_hints which resets to empty when omitted. Always re-send language_hints if you want to preserve language biasing.

The server responds with a ListenUpdated acknowledgement once the changes are applied.

Model changes (e.g., switching from flux-general-en to flux-general-multi) are not supported with UpdateListen — this is on our roadmap.

For details, see the UpdateListen documentation.