当他们使用discord.js自静音/ selfdeafen / selfunmute / selfundeafen时,如何记录成员?

时间:2020-06-21 12:53:42

标签: javascript discord discord.js

所以最近我感到困惑,我该如何将更新其语音状态(例如使自己静音/使自己耳聋)的成员登录到文本通道中。当成员在语音通道之间加入/离开/移动时,我已经创建了日志。但是我不知道如何使语音状态更新有关自静音等。有人可以告诉我如何做到这一点吗?

1 个答案:

答案 0 :(得分:1)

阅读文档具有此功能:

voiceStateUpdate

它说:每当成员更改语音状态时发出-例如加入/离开频道,静音/取消静音。

并接受以下参数:

oldState    VoiceState  The voice state before the update
newState    VoiceState  The voice state after the update

您可以通过以下方式检测到这一点:

client.on('voiceStateUpdate', (oldState,newState) => {
    if(oldState.selfMute === true && newState.selfMute === false)
        console.log("unmuted")
    if(oldState.selfMute === false && newState.selfMute === true)
        console.log("muted")
    if(oldState.selfDeaf === true && newState.selfDeaf === false)
        console.log("undeaf")
    if(oldState.selfDeaf === false && newState.selfDeaf === true)
        console.log("deaf")
});