discord.js v12 检查用户是否在流式传输
我正在使用 discord.js v12,我希望在用户流式传输时使用 PresenceUpdate 方法.我在这里找到了这个,但显然它不起作用.这个有更新版本吗?
i'm using discord.js v12 and i wanted to have an PresenceUpdate method for when the user is streaming it says. I found this here but obviously it doesn't work. Is there any updated version to this?
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
相关文章