我试图让用户在键入!done之前向机器人提交一堆信息,并让机器人在init消息和!done消息之间转发所有消息 . 换句话说,用户的消息日志可能如下所示:
!init
MessageA
MessageB
MessageC
!done
我想在!init和!done之间提取所有消息,假设我已将它们的ID存储在messageInitID和messageDoneID中 . 我不知道可能有多少消息 .
我尝试了.fetchMessages([options])但是[options]只允许在某个消息之前发送消息,在某个消息之后发送消息,并且在某个消息周围发送消息 .
有没有办法在 Channels 中按时间顺序接收所有消息?或者ID是否已按时间顺序设计?
编辑:我想我可以使用MessageCollector,并且只拉取日期晚于!init 's date and before !done' s日期的消息,但这似乎效率很低,因为它会检查DM中的每条消息
1 回答
ID的数据类型是"Snowflake",定义为
A Twitter snowflake, except the epoch is 2015-01-01T00:00:00.000Z
(doc),所以是的,如果一个id大于另一个,则稍后发送 .但您可以在
!done
消息之前检索消息,并过滤!init
之后发送的消息 .