我正在研究一个不和谐的机器人,当用户对一条bot消息做出反应时,首先它应该检查用户是否连接到一个语音通道,如果是的话,机器人应该加入语音通道,我使用的是awaitReactions,它只返回reaction和user。
如何获得用户或用户的成员语音频道?
发布于 2020-11-30 13:07:55
首先,要从一个GuildMember获得一个User,有几个选项。
Guild#member。这个函数已经在master分支中删除了,并且可能不会包含在未来的版本中,但是它目前仍然非常有用。const user = ...
const guild = ...
const member = guild.member(user);GuildMemberManager#cache获得成员。如果成员不在缓存中,则可能必须使用GuildMemberManager#fetchconst 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();https://stackoverflow.com/questions/65074119
复制相似问题