diff --git a/src/bot.ts b/src/bot.ts index 563cc31b98defdb2741267c453bcf800ad5c2c79..3f55abc122ff34429a9105275c69fa8c80bd9df4 100644 --- a/src/bot.ts +++ b/src/bot.ts @@ -213,6 +213,24 @@ export class DiscordBot { log.error("Exception thrown while handling \"messageDelete\" event", err); } }); + client.on("messageDeleteBulk", async (msgs: Discord.Collection<Discord.Snowflake, Discord.Message>) => { + try { + await Util.DelayedPromise(this.config.limits.discordSendDelay); + const promiseArr: (() => Promise<void>)[] = []; + msgs.forEach((msg) => { + promiseArr.push(async () => { + try { + await this.DeleteDiscordMessage(msg); + } catch (err) { + log.error("Caught while handling 'messageDeleteBulk'", err); + } + }); + }); + await Promise.all(promiseArr); + } catch (err) { + log.error("Exception thrown while handling \"messageDeleteBulk\" event", err); + } + }); client.on("messageUpdate", async (oldMessage: Discord.Message, newMessage: Discord.Message) => { try { await Util.DelayedPromise(this.config.limits.discordSendDelay);