首页 > 解决方案 > 显示连接到语音通道的用户?

问题描述

我想知道是否有可能知道是否有任何成员连接到 discord.js v12.2.0 中的任何语音通道。如果您对此有任何线索,请告诉我。

标签: javascriptdiscord.js

解决方案


使用VoiceChannel.members

const vc = <message>.guild.channels.cache.get('VC Id')
const members = vc.members //COLLECTION

要检查成员是否在 vc 中,请使用GuildMember.voice

const vc = <member>.voice.channel //VOICE CHANNEL
//if you want, you can check the vc name, id, etc with vc.name, vc.id, etc

编辑
这是您在评论中所说的示例

//MAKE SURE IT IS ASYNC CALLBACK
await client.guilds.fetch();
const VCs = [];
client.guilds.cache.forEach(async guild => {
await guild.channels.fetch();
let VCs = guild.channels.cache.filter(c => c.type === 'voice');
VCs.forEach(vc => {
if(vc.members) {
VCs.push(vc)
}
})
})

我希望这是你想要的(VCs是一个包含所有 VC 和成员的数组)


推荐阅读