waitForUser

View as MarkdownOpen in Claude

Control how the agent pauses and waits for the user to speak. The arguments are evaluated in priority order: answer_first takes precedence, then timeout, then enabled. If none are provided, waiting is enabled with no timeout.

Parameters

opts
object

Optional configuration object.

opts.enabled
boolean

Explicitly enable (true) or disable (false) waiting for user input.

opts.timeout
number

Number of seconds to wait for the user to speak before the agent continues.

opts.answerFirst
boolean

When true, activates the special "answer_first" mode. This answers the call and waits for the user to speak before the agent begins its greeting.

Returns

FunctionResultthis, for chaining.

Examples

Enable waiting (no timeout)

1import { FunctionResult } from '@signalwire/sdk';
2
3const result = new FunctionResult('Take your time.')
4 .waitForUser();

Wait with timeout

1import { FunctionResult } from '@signalwire/sdk';
2
3const result = new FunctionResult('Please respond within 30 seconds.')
4 .waitForUser({ timeout: 30 });

Disable waiting

1import { FunctionResult } from '@signalwire/sdk';
2
3const result = new FunctionResult('Continuing without waiting.')
4 .waitForUser({ enabled: false });