Voice Conversation
Created by Maxime_48 · 1 week ago · Views: 20
Voice Conversation lets members talk to the bot out loud. It joins a voice channel, listens, and answers with speech - using the same model, lore and memory as AI Response.
Experimental. This feature is new and still settling in. Expect rough edges, and tell us what you find.
🎙️ How it works
The bot joins a voice channel, transcribes what it hears, sends it through AI Response exactly like a text message would go, and speaks the answer back with text-to-speech. It always posts a notice in a text channel before it starts listening, and it never listens without a channel it can write that notice in.
There are two ways for it to join, set with How the bot joins.
🙋 On demand
A member invites the bot into their own voice channel with /voice-chat start, and sends it away with /voice-chat stop.
| Setting | What it does |
|---|---|
| Minutes per conversation | The bot leaves once this is reached, or after a minute alone in the channel. |
| Role allowed to invite it | Restricts who can start a conversation. Leave empty to let everyone invite it. |
| Voice channels it may be invited to | Restricts which channels it can be called into. Leave empty to allow every voice channel. |
🏠 Resident
The bot stays parked in one voice channel of your choice, and anyone there can talk to it without inviting it first.
| Setting | What it does |
|---|---|
| Voice channel it stays in | The one channel it lives in. |
| Text channel for the notice | Used when the bot cannot write in the voice channel's own chat. Without a channel it can write in, it does not listen. |
| Listening minutes per day | How much it is allowed to listen, in total, per day. |
Once the daily allowance is reached, the bot stays in the channel but stops listening until midnight UTC - it does not leave and does not need re-inviting the next day.
🔊 Speech
| Setting | What it does |
|---|---|
| Use the server memory in answers | Reads the AI Response memory when it is enabled there. A voice conversation never writes to memory - only text conversations do. |
| OpenAI API key for listening and speaking | Powers transcription (speech to text) and speech (text to speech), separately from the AI Response API key that generates the reply itself. |
| Listening model / Speaking model | Which model transcribes and which one speaks, picked from your endpoint. |
| Voice | The voice the bot speaks with, picked from a fixed list (Alloy, Ash, Coral, Echo, Fable, Nova, Onyx, Sage, Shimmer). |
| Use your own speech endpoint | Off: api.openai.com. On: an OpenAI-compatible server of your own that offers both transcription and speech. |
| Voice name on that endpoint | Only needed if your own endpoint names its voices differently - it must know the voice you send it. Leave blank to send the voice picked above as-is. |
⌨️ Commands
/voice-chat is slash-only - it does not work as a text command, even with a prefix set.
| Subcommand | What it does |
|---|---|
/voice-chat start |
Invites the bot into your current voice channel (on-demand mode only). |
/voice-chat stop |
Sends the bot away. |
🔗 Works with
- AI Response - the model, lore and memory that answer a voice conversation are AI Response's own. Configure them there.
- Audio Recording - a server has one voice connection, so the bot cannot record a channel and hold a voice conversation in another one at the same time. The two features do not need to be configured together, but only one can hold the connection at once.
✅ Permissions
The bot needs View Channel, Connect and Speak in the voice channels it may join, and Send Messages in whichever text channel receives its notice - without that, it does not listen at all.
💡 Best practices
- Start with on-demand mode to see how your community actually uses it before committing a channel to resident mode.
- Keep Listening minutes per day modest at first - you can always raise it once you know the real usage.
- Review the AI Response lore and memory settings first; a voice conversation is only as good as what it can read.