Discord. js v12 проверьте, транслирует ли пользователь - PullRequest
3 голосов
/ 14 июля 2020

Я использую 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; 
    }
  }
});

1 Ответ

3 голосов
/ 14 июля 2020
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

...