> ## Documentation Index
> Fetch the complete documentation index at: https://docs.voxworks.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# User Turn | Settled

> Wait until the caller has finished speaking and their words have been transcribed before the next step speaks or reads the transcript, so the assistant doesn't talk over them.

## Description

Tool steps and Code Steps run fast. If one reads what the caller just said and routes on it, it can run before the caller has finished speaking, or before their last words have been transcribed. The step then acts on half a sentence, and the next line talks over the rest.

**User Turn | Settled** waits until the caller's turn has landed. It takes no inputs and never speaks. It holds the flow while the caller is still speaking, or has just stopped and their words are still being transcribed. Then it routes:

* **true**: the caller has finished, and nothing new has arrived since the script last read the transcript. The next step can speak.
* **false**: new speech has been transcribed since the script last read it. Route back to the step that reads the transcript so it sees the new words, then come through this tool again.

Good places for it:

* Immediately before a word-for-word disclosure or other line that must not start over the caller
* At the top of a routing step that decides who speaks next based on what the caller said
* After a [classifier](/flows/steps#classifiers), LLM step or Code Step that reads the transcript

***

## How it waits

* There's no overall time limit. The tool waits while the caller is speaking, and gives up on a transcript that never comes after about a second of quiet.
* The [Silence Tolerance](/conversation-dynamics/silence-tolerance) timers keep running while it waits, so a line held open by background noise still reaches the usual re-prompt and, eventually, the silence hang-up.
* On an inbound or web call before the opening line, or on a call where the caller has never spoken, it routes true at once.

***

## Inputs

None.

***

## Outputs

| Name    | Data Type | Description                                                                                                                                                              |
| ------- | --------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| settled | bool      | `true` when the caller's turn has landed and nothing new has arrived since the script last read the transcript. `false` when new speech has been transcribed since then. |

## Variables this tool writes

None. The result routes the step: **true** follows the first condition, **false** follows **Otherwise**.

***

## Example

```text theme={null}
Step 20 (Tool)  LLM Data: classify what the caller just said
   → Step 21
Step 21 (Tool)  User Turn | Settled
   true      → Step 22
   otherwise → Step 20   (new words arrived, so classify again)
Step 22 (Voice) Verbatim disclosure
```

***

## Next Steps

* [Interruptions](/conversation-dynamics/interruptions) — protect a line from being talked over once it starts
* [Outbound Opening | Message Check](/tools/outbound-opening-check) — hold the opening line until the answerer has spoken
* [Tool Steps](/flows/steps-tool) — how tool results route a step
