在 Discord语音频道中与 Claude AI 进行实时语音对话
用于 Clawdbot. 的 Discord Voice 插件
功能概述
用于 Clawdbot. 的 Discord Voice 插件是一项面向实际任务的技能,主要用于重复时空的 Discord 语音频道中的语音对话;加入语音频道, 说话, 并让您的话被Claude 转写, 处理, 并回话。
核心要点
- 它将相关步骤、工具调用和结果整理方式集中到统一流程中,帮助使用者更快完成目标并减少重复操作。
- 使用时应结合输入条件选择合适的执行方式,核对必要参数、依赖环境与输出内容,并按原始要求处理异常情况。
- 该技能适合需要稳定复用相关能力的场景,可作为自动化工作流的一部分,也便于后续检查、调整和扩展。
使用与执行
从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;
结果检查与注意事项
若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。
Clawdbot 的 Discord 语音插件
在 Discord 语音频道中实现实时语音对话。加入语音频道,开口说话,你的语音将被实时转录、交由 Claude 处理,并以语音形式反馈给你。
功能特性
- 加入/退出语音频道:支持通过 Slash 命令、CLI 或 agent 工具操作
- 语音活动检测(VAD):自动识别用户是否正在讲话
- 语音转文字(STT):支持 Whisper API(OpenAI)、Deepgram 或本地 Whisper(离线)
- 流式 STT:基于 Deepgram WebSocket 的实时转录(端到端延迟降低约 1 秒)
- Agent 集成:转录后的文本将路由至 Clawdbot agent 进行处理
- 文字转语音(TTS):支持 OpenAI TTS、ElevenLabs 或 Kokoro(本地/离线)
- 音频播放:响应内容将以语音形式在语音频道中播放
- 抢占式中断(Barge-in)支持:当用户开始说话时,立即停止当前语音输出
- 自动重连:内置心跳监测机制,断连后自动重连
系统要求
- 具备语音权限的 Discord bot(Connect、Speak、Use Voice Activity)
- STT 和 TTS 服务商的 API 密钥
- 语音功能所需系统依赖:
ffmpeg(音频处理)@discordjs/opus和sodium-native的原生构建工具
安装步骤
1. 安装系统依赖
# Ubuntu/Debian sudo apt-get install ffmpeg build-essential python3 # Fedora/RHEL sudo dnf install ffmpeg gcc-c++ make python3 # macOS brew install ffmpeg
2. 通过 ClawdHub 安装
clawdhub install discord-voice
或手动安装:
cd ~/.clawdbot/extensions git clonediscord-voice cd discord-voice npm install
3. 在 clawdbot.json 中配置
{
plugins: {
entries: {
"discord-voice": {
enabled: true,
config: {
sttProvider: "local-whisper",
ttsProvider: "openai",
ttsVoice: "nova",
vadSensitivity: "medium",
allowedUsers: [], // 空数组 = 允许所有用户
silenceThresholdMs: 1500,
maxRecordingMs: 30000,
openai: {
apiKey: "sk-...", // 或使用 OPENAI_API_KEY 环境变量
},
},
},
},
},
}
4. Discord Bot 权限配置
请确保你的 Discord bot 具备以下权限:
- Connect — 加入语音频道
- Speak — 播放音频
- Use Voice Activity — 检测用户语音活动
请将上述权限添加至 bot 的 OAuth2 URL,或在 Discord Developer Portal 中完成配置。
配置项说明
| 配置项 | 类型 | 默认值 | 说明 |
|---|---|---|---|
enabled |
boolean | true |
启用或禁用该插件 |
sttProvider |
string | "local-whisper" |
可选值:"whisper"、"deepgram" 或 "local-whisper" |
streamingSTT |
boolean | true |
启用流式 STT(仅 Deepgram 支持,端到端延迟降低约 1 秒) |
ttsProvider |
string | "openai" |
可选值:"openai" 或 "elevenlabs" |
ttsVoice |
string | "nova" |
TTS 使用的语音 ID |
vadSensitivity |
string | "medium" |
可选值:"low"、"medium" 或 "high" |
bargeIn |
boolean | true |
用户开始说话时立即停止当前语音输出 |
allowedUsers |
string[] | [] |
允许使用的用户 ID 列表(空数组表示允许所有用户) |
silenceThresholdMs |
number | 1500 |
静音判定阈值(毫秒),即检测到静音后开始处理 |
maxRecordingMs |
number | 30000 |
单次录音最大时长(毫秒) |
heartbeatIntervalMs |
number | 30000 |
连接健康检查间隔(毫秒) |
autoJoinChannel |
string | undefined |
启动时自动加入的语音频道 ID |
服务商配置
OpenAI(Whisper + TTS)
{
openai: {
apiKey: "sk-...",
whisperModel: "whisper-1",
ttsModel: "tts-1",
},
}
ElevenLabs(仅 TTS)
{
elevenlabs: {
apiKey: "...",
voiceId: "21m00Tcm4TlvDq8ikWAM", // Rachel
modelId: "eleven_multilingual_v2",
},
}
Deepgram(仅 STT)
{
deepgram: {
apiKey: "...",
model: "nova-2",
},
}
使用方式
Slash 命令(Discord)
在 Discord 中完成注册后,可使用以下命令:
/discord_voice join— 加入指定语音频道/discord_voice leave— 退出当前语音频道/discord_voice status— 查看语音连接状态
CLI 命令
# 加入语音频道 clawdbot discord_voice join# 退出语音频道 clawdbot discord_voice leave --guild # 查看状态 clawdbot discord_voice status
Agent 工具
agent 可调用 discord_voice 工具:
Join voice channel 1234567890
该工具支持以下动作:
join— 加入语音频道(需提供 channelId)leave— 退出语音频道speak— 在语音频道中播报指定文本status— 获取当前语音状态
工作原理
- 加入:bot 加入指定语音频道
- 监听:VAD 检测用户何时开始/停止讲话
- 录音:在用户讲话期间持续缓存音频数据
- 转录:检测到静音后,将音频发送至 STT 服务商
- 处理:将转录所得文本传入 Clawdbot agent
- 合成:agent 的响应结果经 TTS 转为音频
- 播放:将生成的音频在语音频道中播放
流式 STT(Deepgram)
当选用 Deepgram 作为 STT 服务商时,流式模式默认启用。该模式提供以下优势:
- 端到端延迟降低约 1 秒
- 实时反馈:返回中间转录结果
- 自动保活:防止连接超时
- 故障回退:流式失败时自动降级为批量转录
启用流式 STT 的配置示例:
{
sttProvider: "deepgram",
streamingSTT: true, // 默认启用
deepgram: {
apiKey: "...",
model: "nova-2",
},
}
抢占式中断(Barge-in)支持
启用后(默认开启),当用户开始讲话时 bot 将立即停止当前语音输出,从而营造更自然的对话体验,支持随时打断 bot。
如需禁用该行为(等待 bot 完整播报完毕),请设置:
{
bargeIn: false,
}
自动重连
插件内置连接健康监测机制:
- 心跳检测:每 30 秒执行一次(可配置)
- 自动重连:断连后按指数退避策略重试
- 最大重试次数:最多尝试 3 次,之后放弃
若连接中断,日志中将显示类似如下信息:
[discord-voice] Disconnected from voice channel [discord-voice] Reconnection attempt 1/3 [discord-voice] Reconnected successfully
VAD 灵敏度
- low:可捕捉较轻声的语音,但可能受背景噪音干扰而误触发
- medium:平衡灵敏度(推荐)
- high:需更高音量和更清晰的发音才能触发
常见问题排查
“Discord client not available”
请确认已正确配置 Discord 频道,且 bot 已成功连接后再使用语音功能。
Opus/Sodium 构建错误
请安装构建工具:
npm install -g node-gyp npm rebuild @discordjs/opus sodium-native
听不到音频输出
- 检查 bot 是否拥有 Connect 和 Speak 权限
- 检查 bot 是否被服务器静音
- 确认 TTS API 密钥有效
语音转文字未生效
- 检查 STT API 密钥是否有效
- 确认音频正在正常录制(参阅调试日志)
- 尝试调整 VAD 灵敏度
启用调试日志
DEBUG=discord-voice clawdbot gateway start
环境变量
| 变量名 | 说明 |
|---|---|
DISCORD_TOKEN |
Discord bot token(必需) |
OPENAI_API_KEY |
OpenAI API 密钥(用于 Whisper + TTS) |
ELEVENLABS_API_KEY |
ElevenLabs API 密钥 |
DEEPGRAM_API_KEY |
Deepgram API 密钥 |
限制条件
- 每个 Guild 同时仅支持一个语音频道
- 单次录音最大时长:30 秒(可配置)
- 实时音频传输依赖稳定网络连接
- TTS 输出可能存在轻微延迟(由语音合成耗时导致)
许可证
MIT
热门AI工具
相关专题
DBeaver数据导入专题,整理Excel、CSV、SQL、TXT等常见文件的数据导入方法,涵盖目标数据库选择、数据表创建、字段映射、数据类型设置及导入参数配置等操作,帮助用户将本地文件中的数据写入数据库,并了解批量导入、重复数据处理和导入失败等常见问题的解决方法。
0
2026.11.05
DBeaver安全防护专题,围绕数据库连接安全、账号密码保护和访问权限管理展开,整理SSL/TLS加密连接、SSH隧道、数据库凭据保存及证书验证等配置方法,同时介绍敏感信息保护、远程连接风险和高权限账号使用等注意事项,帮助用户提高数据库日常管理的安全性。
0
2026.11.05
本专题聚焦DBeaver数据库连接配置与管理,覆盖从新建连接、选择数据库类型到填写连接参数和验证连接的完整流程。针对MySQL、PostgreSQL、SQL Server等常见数据库,整理相应的连接设置方法,并提供驱动缺失、认证失败和连接异常等问题的排查方向。
0
2026.11.04
本专题围绕XORM框架的结构体映射展开,说明表名与字段的命名策略、xorm标签常用属性、主键自增与时间字段自动填充,并演示Sync2自动建表、增量字段升级、索引声明与反向生成结构体的完整流程。
0
2026.11.04
本专题聚焦XORM框架的配置与连接环节,拆解MySQL、PostgreSQL、SQLite、SQL Server的DSN写法与驱动选择,讲清连接池参数、多数据源拆分、读写分离与超时重连的处理方式,并补充容器与兼容数据库的适配经验。
0
2026.11.04
本专题聚焦XORM框架的配置与连接环节,拆解MySQL、PostgreSQL、SQLite、SQL Server的DSN写法与驱动选择,讲清连接池参数、多数据源拆分、读写分离与超时重连的处理方式,并补充容器与兼容数据库的适配经验。
0
2026.11.04
本专题聚焦XORM框架的配置与连接环节,拆解MySQL、PostgreSQL、SQLite、SQL Server的DSN写法与驱动选择,讲清连接池参数、多数据源拆分、读写分离与超时重连的处理方式,并补充容器与兼容数据库的适配经验。
0
2026.11.04
本专题梳理XORM框架的入门路径,从框架定位、依赖安装、连接数据库到跑通第一个增删改查示例,讲清Engine初始化、日志开启与项目目录规划,并对比GORM等同类ORM的差异,帮助Go开发者建立整体认知。
0
2026.11.04
本专题聚焦Docker Desktop容器端口映射与访问配置,整理从创建容器、设置端口绑定到验证本地服务访问的操作流程。针对端口被占用、映射配置错误、容器服务无法访问等情况,也提供相应的检查方向,方便用户完成端口配置。
0
2026.11.03
热门下载
相关下载
精品课程
共6课时 | 12.1万人学习
共79课时 | 161.7万人学习
共6课时 | 54.7万人学习
最新文章