首页 > 解决方案 > 使用用户 ID discord.js 断开用户与 VC 的连接

问题描述

我很难理解 discord.js 文档。我希望我的机器人根据用户的用户 ID 断开用户的连接。

理想情况下,我的代码看起来像这样:

function disconnectUser(userID){
   userID.disconnect();
   return;
}

我尝试过的代码是:

function disconnectUser(userID){
   userID.VoiceState.disconnect();
   return;
}

我得到了错误:

TypeError: Cannot read properties of undefined (reading 'disconnect')

任何帮助将不胜感激 :)

标签: javascriptdiscord.js

解决方案


Voice 不是“users”的属性,它只是“guild.members”的成员。“guild.members”是在用户加入 VC 时创建的,并通过消息或交互访问。在我使用斜杠命令的情况下,我通过将交互传递给 disconnectUser() 函数来获得公会。工作断开功能的工作原理如下:

async function disconnectUser(userID, interaction){
    let user = await interaction.guild.members.fetch(userID);
    user.voice.disconnect();
}

交互本质上与消息相同。


推荐阅读