【问题标题】:discord.js How to obtain a "reactions user's" list from a fetchMessage event?discord.js 如何从 fetchMessage 事件中获取“反应用户”列表?
【发布时间】:2019-07-10 12:02:33
【问题描述】:

我试图弄清楚如何使用fetchMessage 事件获取对频道中的消息提供反应的用户列表。我成功地获得了用户数量或表情符号本身的计数,但是,实际的用户列表并没有显示出来。

我正在使用

message.channel.fetchMessage(MessageID).then(themessage => {

let MessageOBJ = themessage.reactions.find(r => r.name === "emoji Unicode");

console.log(MessageOBJ.users);

});

当我去调用 MessageOBJ.users 时,它是一个空对象或看起来是。其他一切都正确显示,包括做出反应的用户数。

任何帮助将不胜感激。

谢谢!

【问题讨论】:

  • 谢谢dpap!

标签: javascript discord


【解决方案1】:

因此,事实证明,您只能在机器人重新启动后才能获得此信息。方法是正确的。只有在机器人重新启动后创建消息并做出反应时才会向用户显示。如果您再次重新启动机器人,所有这些信息都将再次无法获取。

【讨论】:

  • 嗯,你是对的,它似乎只知道自机器人启动以来做出反应的用户。如果您进行扫描和 fetchMessage,它甚至不知道任何做出反应的用户。当然必须有一种方法来获取已做出反应的用户列表(即可能在另一个 API 中)
【解决方案2】:

您必须调用另一个 API 才能让用户做出反应

MessageOBJ.fetchUsers().then(users => {
        console.log(users); 
});

fetchUsers documentation

【讨论】:

    猜你喜欢
    • 2020-05-16
    • 2020-11-07
    • 2021-03-29
    • 2020-05-12
    • 2019-10-16
    • 1970-01-01
    • 2021-06-21
    • 2021-06-21
    • 2016-09-14
    相关资源
    最近更新 更多