# AI Voice Agent (Stream)

> The AI Voice Agent node streams the call's audio to your voice bot over a WebSocket and plays the bot's audio back.

Source: https://edesy.in/docs/ivr/nodes/stream-to-ai

The AI Voice Agent node hands the call to your own voice bot. It streams the call's audio to your bot's WebSocket URL and plays the bot's audio back to the caller in both directions, for example to a Pipecat or other LLM voice agent. The bot takes over the rest of the call, so this node ends the flow.

## Settings

| Field | Required | Default | Notes |
|---|---|---|---|
| Bot WebSocket URL | Yes | | `wss://your-bot.example.com/voice` (`ws://` or `wss://`) |
| Sample rate | No | 16 kHz | 16 kHz (recommended) or 8 kHz |

Exits: none. The bot owns the call from here.

## How it works

1. The call reaches the node, often after a greeting or a menu.
2. The platform opens a WebSocket to your URL.
3. The caller's audio is streamed to your bot, and audio your bot sends back is played to the caller.
4. The call ends when your bot or the caller hangs up.

Audio is raw L16 PCM, mono, at the sample rate you choose.

## Flow checks

- "AI Voice Agent needs a ws:// or wss:// bot URL." (error)

## Templates

- **AI voice assistant:** a greeting, then the AI Voice Agent.
- **AI assistant, with a human option:** talk to the AI, or press 0 to reach a person.

See [Templates](https://edesy.in/docs/ivr/templates).

## Over SIP instead

If your agent runs on a platform that takes SIP calls (LiveKit Cloud, Vapi, Retell, Bolna), use a [Dial](https://edesy.in/docs/ivr/nodes/dial) node with a SIP address. See [SIP trunking](https://edesy.in/docs/sip-trunking) and [SIP trunk for AI voice agents](https://edesy.in/docs/sip-trunk-for-ai-voice-agents).
