big-controller-60015
04/08/2026, 11:23 AMtall-airline-16756
04/08/2026, 11:23 AMtall-airline-16756
04/08/2026, 11:23 AMturn_handling instead of a TurnHandlingOptions instance.
Yes — you can pass a dictionary with keys like endpointing, turn_detection, and interruption in place of the TurnHandlingOptions class. The dict may contain nested objects, for example:
• `turn_detection`: "vad", "stt", or a model instance
• `endpointing`: { "min_delay": 0.5, "max_delay": 3.0 }
• `interruption`: { "mode": "...", "false_interruption_timeout": 2.0, "resume_false_interruption": true }
Note the units difference by language: Python uses seconds (e.g., 2.0), Node.js uses milliseconds (e.g., 2000).
If you’d like, paste the dict you’re planning to use and I’ll confirm it’s structured correctly.
Sources: Adaptive interruption handling | LiveKit Documentation | Turns overview | LiveKit Documentation | LiveKit turn detector plugin | LiveKit Documentation, with interactive elementsbig-controller-60015
04/08/2026, 11:27 AMTurnHandlingOptions is passed to turn_handling if we pass a dict it will still work u mean?tall-airline-16756
04/08/2026, 11:27 AMTurnHandlingOptions instance or a plain dictionary. When you pass a dict, the code converts/consumes those keys the same way as the class fields (nested keys like endpointing, turn_detection, and interruption are supported). Behavior and accepted keys are the same; just ensure the dict uses the expected key names and value types.
One important detail: time units differ by language — Python expects seconds (e.g., 2.0), Node.js expects milliseconds (e.g., 2000).
If you want, paste the exact dict you saw or plan to use and I’ll verify it against the expected structure.
, with interactive elements