javascript - discord.js v12 检查用户是否正在流式传输

标签 javascript discord discord.js

我正在使用 discord.js v12,我想在用户进行流式传输时使用 PresenceUpdate 方法。我在这里找到了这个,但显然它不起作用。这个有更新的版本吗?

    client.on('presenceUpdate', (oldMember, newMember) => {
    const channel = oldMember.guild.channels.find(x => x.name === "channel name");
    if (!channel) return;
        let oldStreamingStatus = oldMember.presence.game ? oldMember.presence.game.streaming : false;
        let newStreamingStatus = newMember.presence.game ? newMember.presence.game.streaming : false;

  if(oldStreamingStatus == newStreamingStatus){
    return;
  }

  if(newStreamingStatus){
    if (newMember.presence.game && newMember.presence.game.name === 'game name' || newMember.presence.game.details.match(/keywords in stream/gi)) {
        channel.send(`${newMember.user}, is live URL: ${newMember.presence.game.url}`);
    return; 
    }
  }
});

最佳答案

client.on("presenceUpdate", (oldPresence, newPresence) => {
    if (!newPresence.activities) return false;
    newPresence.activities.forEach(activity => {
        if (activity.type == "STREAMING") {
            console.log(`${newPresence.user.tag} is streaming at ${activity.url}.`);
        };
    });
});

https://discord.js.org/#/docs/main/stable/class/Presence

https://discord.js.org/#/docs/main/stable/class/Activity

https://discord.js.org/#/docs/main/stable/typedef/ActivityType

关于javascript - discord.js v12 检查用户是否正在流式传输,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62886871/

相关文章:

javascript - 防止用户在 Discord 的昵称前加点 (discord.js/Discord Bot)

javascript - 将文件下载到本地计算机并以邮件附件的形式发送

javascript - 使用哈希 url 卡在 Angular ui-router State.go 上?

javascript - 在 jQuery 悬停时移动 div 背景位置

javascript - 将多个字符串传递给 stringByEvaluatingJavaScriptFromString 时出现问题

javascript - 禁止在第三方 channel 使用emojireact-role

javascript - 更改div的背景图片url

javascript - findByPrimary 不是函数

python - 我收到 KeyError : '563690668808208423' when i'm trying to add exp to user

javascript - 我将如何使用正则表达式将字符串拆分为两个括号?