我正在尝试让我的机器人删除特定数量的消息,我认为if
会是最好的选择,但是我不知道该怎么做...
这是应该如何工作的:频道中有我的机器人发出的消息,它始终是聊天中的最后一条消息。我的机器人将检查消息是否确实存在,如果存在,它将与命令一起删除消息,然后发送新消息。如果消息不存在,它将删除该命令并发送新消息。
这是我的代码供参考:
if(/* message is there */) const fetched = await message.channel.fetchMessages({limit: 2});
else const fetched = await message.channel.fetchMessages({limit: 1});
// Deletes stuff
message.channel.bulkDelete(fetched)
.catch(error => message.reply(`There was an error: ${error}`));
message.channel.send("```Open```");
如何检查上一条消息是否存在?
答案 0 :(得分:0)
我会检查最后一条消息的作者是否是您的机器人:
let lastTwo = await message.channel.fetchMessages({limit: 2}), // Get the last 2 messages
last = lastTwo.last(); // The last in the collection will be the last message
if (last.author.id == client.user.id) await message.channel.bulkDelete(lastTwo);
else await last.delete();
message.channel.send("```Open```");