> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.nvidia.com/nemo/guardrails/llms.txt.
> For full documentation content, see https://docs.nvidia.com/nemo/guardrails/llms-full.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.nvidia.com/nemo/guardrails/_mcp/server.

# Timing Flows

> Flows related to timing and reacting to periods of silence.

Flows related to timing and reacting to periods of silence.

### `wait $time_s $timer_id="wait_timer_{uid()}"`

Wait the specified number of seconds before continuing

Example:

```text
import timing
import core

flow delayed bot say $text
    wait 0.5
    bot say $text

flow main
    user said something
    start delayed bot say "I say this later"
    start bot say "I say this first"

    wait indefinitely

```

```text
> hello
I say this first
I say this later
```

### `repeating timer $timer_id $interval_s`

Start a repeating timer

Example:

```text
import timing
import core


flow reacting to my timer
    match TimerBotAction.Finished(timer_name="my_timer")
    bot say "tick"

flow main
    activate reacting to my timer

    user said something
    repeating timer "my_timer" 0.4 or wait 1.0
    wait indefinitely

```

```text
> test
tick
tick
```

### `user was silent $time_s`

Wait for when the user was silent for \$time\_s seconds

Example:

```text
import timing
import core


flow reacting to user silence
    user was silent 5.0
    bot say "Can I help you with anything else?"

flow main
    activate reacting to user silence

    while True
        user said something
        bot say "sounds interesting"

```

```text
> I am going to the zoo
sounds interesting
# (Wait for more than 5 seconds)
Can I help you with anything else?
```

### `user didnt respond $time_s`

Wait for when the user was silent for \$time\_s seconds while the bot was silent

Example:

```text
import timing
import core


flow repeating if no user response
    global $last_bot_script
    user didnt respond 5.0
    bot say $last_bot_script


flow main
    activate tracking bot talking state
    activate repeating if no user response

    user said something
    bot say "How can I help you today?"
    user said something

```

```text
> hi
How can I help you today?
# (Wait for more than 5 seconds)
How can I help you today?
```

### `bot was silent $time_s`

Wait for the bot to be silent (no utterance) for given time

Example:

```text
import timing
import core

flow inform processing time
    user said something
    bot was silent 2.0
    bot say "This is taking a bit longer"

flow processing user request
    user said "place the order"
    wait 4.0
    bot say "order was placed successfully"

flow main
    activate inform processing time
    activate processing user request

```

```text
> place the order
# After about 2 seconds:
This is taking a bit longer
# After and additional 2 seconds:
order was placed successfully
```