从频道获取一系列消息

时间:2018-07-06 18:41:58

标签: javascript node.js discord discord.js

我试图让用户在键入!done之前向机器人提交一堆信息,并让该机器人转发init消息和!done消息之间的所有消息。换句话说,用户的消息日志可能如下所示:

tidyverse

我想在!init和!done之间提取所有消息,假设我已经将它们的ID存储在messageInitID和messageDoneID中。我不知道会有多少条消息。

我尝试过.fetchMessages([options]),但是[options]仅允许在特定消息之前的消息,特定消息之后的消息以及特定消息周围的消息。

有什么办法可以按时间顺序接收频道中的所有消息?还是已经按照时间顺序设计了ID?

编辑:我想我可以使用MessageCollector,并且只提取日期在!init的日期之后和!done的日期之前的消息,但这似乎效率很低,因为它将检查DM中的每条消息

1 个答案:

答案 0 :(得分:1)

  

还是已经按照时间顺序设计了ID?

ID的数据类型为“雪花”,定义为A Twitter snowflake, except the epoch is 2015-01-01T00:00:00.000Zdoc),是的,如果一个ID大于另一个ID,则会在以后发送。

  

我已经尝试过.fetchMessages([options]),但是[options]仅允许在特定消息之前的消息,特定消息之后的消息以及特定消息周围的消息。

但是您可以在!done消息之前检索消息,并过滤在!init之后发送的消息。