列出对特定消息做出反应的人

时间:2021-05-26 02:54:04

标签: javascript node.js arrays discord discord.js

是否可以列出对不和谐的特定消息做出反应的人?

ID du message : '315274607072378891'

频道:'846414975156092979'

反应:

代码会在这里执行:

bot.on("ready", async () => {
}

结果:

Reaction_users: [
id_user1,
id_user2,
...]

预先感谢您提供的帮助。

3 个答案:

答案 0 :(得分:0)

首先,您需要获取消息 channel.fetchMessage();
可以使用 client.channels.cache.get('id') 获取频道。

所以总的来说你可以做一些类似的事情

bot.on("ready", async () => {
    const channel = client.channels.cache.get('846414975156092979');
    const message = channel.fetch('315274607072378891');
    const userReactions = message.reactions.cache.filter(reaction => reaction.users.id);
    console.log(userReactions)
}

答案 1 :(得分:0)

首先你需要先获取消息,然后你需要从消息中获得反应

解决方案:

bot.on("ready", async () => {
   let channel = bot.channels.cache.get('846414975156092979');
   let message = channel.fetch('315274607072378891');
   let reactions = messsage.reactions.cache.filter(reaction => reaction.users.id);
}

答案 2 :(得分:0)

非常感谢您的帮助,非常好。 问题没有解决。这是表:

users: ReactionUserManager {
    cacheType: [class Collection extends Collection],
    cache: Collection(0) [Map] {},
    reaction: [Circular *2]
},
let reactions = message.reactions.cache.get(EMOJI).users.cache.filter(reaction => reaction.users.id);

console.log(reactions)

结果:集合(0) [地图] {}