如何从 discord.js 中提取消息数据?

how to pull message data from discord.js?

Discord.js 是 Discord 的 API,允许开发人员为程序 discord 制作插件。这是在 js 中的 link 到 API 代码,https://github.com/hydrabolt/discord.js/

Discord 被设置为一个服务器,您可以在其中连接并在频道上聊天,我的问题是如何从频道中提取消息数据。

他们所做的是在 JSON 缓存中设置所有通道,在通道内,对象是另一个带有消息对象的缓存(如文档所述)。但是当我到达消息缓存时,我看到的只是 messages: Cache { limit: 1000 } }。如何从频道中提取所有消息对象?

对于使用 discord.js v8 或更低版本的用户。

如果你想从频道中提取所有消息对象,我建议忽略缓存,而是使用 getChannelLogs(channel, limit, options, callback) 这将允许你一次获取多达 100 条消息,但这些消息不必缓存在 discord.js 内。您可以很容易地创建一个递归函数,该函数在回调中获取更多消息以获取您想要的任意数量的消息。

也就是说 server.channel.messages 将是 discord.js 缓存的所有消息。如果显示为空白,则可能是自机器人激活以来没有人发送过消息。

来源:http://discordjs.readthedocs.io/en/latest/docs_client.html#getchannellogs-channel-limit-options-callback