我正在尝试为我的机器人制造一个不和谐的系统,它将清除最后发布的10张图片&在聊天中上传(链接和上传),是否有人知道如何编写此代码?这是我的想法(有点)
if (message.channel.type == 'general') {
if (*the last 10 messages that have been sent are images*) {
message.delete(); // delete last 10 images
}
}
答案 0 :(得分:1)
通过将limit
设置为<Collection>.size
,您可以使用fetchMessages
方法检索包含过去10 promise的collection的messages 10使用ChannelLogsQueryOptions。
使用这些消息集合,正如@Chris Satchell在评论中提到的那样,您可以遍历它并检查所有消息是否存在message.attatchments
。或者,您可以检查整个邮件集合的attachments
的{{1}}是否等于10,如果是,您可以继续执行下一步。
现在您有一组要删除的邮件,只需将此集合传递到方法bulkDelete
的messages
参数中。
因此,您在TextChannel中获取最后10条消息,然后检查所获取的消息集合的attachments
属性,然后在此处调用bulkDelete
方法集合。