我正在开发一个不和谐的机器人,当用户对机器人消息作出反应时,首先它应该检查用户是否连接到语音通道,如果是,机器人应该加入语音通道,我正在使用awaitReactions它只返回反应和用户。如何获取会员语音频道的用户或反应?
1 回答
慕仙森
TA贡献1827条经验 获得超7个赞
首先,要从 a 获取GuildMember
a User
,有几种选择。
使用
Guild#member
. 该功能已经在master
分支中删除,并且可能不会包含在未来的版本中,但目前仍然非常有用。
const user = ... const guild = ... const member = guild.member(user);
从 获取会员
GuildMemberManager#cache
。如果该成员不在缓存中,您可能必须使用GuildMemberManager#fetch
const user = ... const guild = ... const member = guild.members.cache.get(user.id);
您可以通过他们的 找到该VoiceChannel
会员所在的位置VoiceState
。每个VoiceState
都有一个channel
属性引用他们当前所在的语音通道,或者null
如果没有找到通道。
const member = ... const channel = member.voice.channel; if (channel) channel.join();
添加回答
举报
0/150
提交
取消