Node.js 用户玩游戏时的事件处理程序

Node.js 用户玩游戏时的事件处理程序,node.js,discord,discord.js,Node.js,Discord,Discord.js,我找不到一个使用discord.js的事件处理程序,当用户开始流媒体或玩游戏时,它会触发 我曾尝试使用userUpdate(我知道这不起作用,因为它属于当前用户,即bot),以及guildMemberUpdate事件 client.on("guildMemberUpdate", (oldUser, newUser) => { if(oldUser.user.username === "Test"){ if(newUser.user.game.streaming){

我找不到一个使用discord.js的事件处理程序,当用户开始流媒体或玩游戏时,它会触发

我曾尝试使用userUpdate(我知道这不起作用,因为它属于当前用户,即bot),以及guildMemberUpdate事件

client.on("guildMemberUpdate", (oldUser, newUser) => {
    if(oldUser.user.username === "Test"){
        if(newUser.user.game.streaming){
            //find the channel and post a message
        }
    }
});

在添加断点时,我从未命中第一个if语句。该事件似乎不是由于用户的“活动”或“状态”改变而触发的。有这样的活动吗

为清晰起见进行编辑:我一直在discord服务器上使用我自己的用户。我将从不玩游戏变为玩游戏或流媒体,事件处理程序永远不会被击中。包括图片,以确保您可以看到我试图触发事件的状态

客户的活动就是您要寻找的。它将在用户的游戏状态更改时发出

client.on('presenceUpdate',(旧成员,新成员)=>{
//做你的事
});

A.“…[
userUpdate
]属于当前用户,即bot…”当用户更新与其用户配置文件有关的内容而不是其特定于服务器的设置时,将发出事件。例如,它将由任何用户更改其用户名或鉴别器触发。B.您正在显示的侦听器是否嵌套在另一个侦听器中?如果是这种情况,则在发出外部事件之前不会附加它。C.您能否通过添加
console.log('emissed')
(或类似内容)作为侦听器函数的第一行来调试代码,并共享结果?a.userUpdate和GuidMemberUpdate均未处理此问题。不,不是。C.它从来没有击中侦听器,但我使用VSCode运行它,这样我也可以使用断点。您使用的是Discord.js的哪个版本?这些活动对我来说就像预期的一样。最新版本,11.5.1。我添加了一张图片,以确保我们与我所说的“玩游戏”的意思相同。比如说,当我添加许可时,它被解雇了。但不是为了玩游戏。