client.on('voiceStateUpdate', (oldMember, newMember) => {
//do stuffs
})
我有此代码,但效果不佳。一旦用户离开VC,oldMember
和newMember
都将变得不确定。因此,我需要另一个代码来检查。必须由退出VC的人触发,并将检查VC中是否没有剩余的人并运行一些代码。
答案 0 :(得分:0)
您可以使用VoiceChannel.members
集合(link to documentation)。得到它的大小,然后,如果频道中唯一的成员是您的客户(因此大小等于1),那么您将知道其他所有人都离开了频道。
答案 1 :(得分:0)
原来我需要改用newState.channel
client.on('voiceStateUpdate', (oldState, newState) => {
if (!newState.channel) return console.log(Left);
if (!oldState.channel) return console.log(Joined);
});