You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何让JDA-Discord机器人主动退出Discord语音频道?

让Discord机器人主动退出语音频道的正确方法

你之前用kick()方法的思路完全错误——这个方法是用来把指定用户踢出服务器的,并非让机器人退出语音频道,而且这种方式也不符合你的需求场景。

要让机器人主动退出语音频道,直接调用对应语音频道的leave()方法即可,以下是两种常见实现方式:

  • 获取机器人当前所在的语音频道并退出:
VoiceChannel currentVoiceChannel = event.getJDA().getSelfUser().getVoiceState().getChannel();
if (currentVoiceChannel != null) {
    currentVoiceChannel.getManager().leave().queue();
}
  • 如果已经有目标语音频道的实例(比如你代码中通过event获取的频道),直接调用退出方法:
event.getChannel().asVoiceChannel().getManager().leave().queue();

注意:调用queue()是异步执行操作,能确保Discord API请求被正确处理,避免阻塞主线程。

内容的提问来源于stack exchange,提问作者Mine Cheater

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.01 06:09:53