diff --git a/jarvis/client.py b/jarvis/client.py index c08366f..6a530d4 100644 --- a/jarvis/client.py +++ b/jarvis/client.py @@ -511,7 +511,10 @@ class Jarvis(StatsClient): ) tracker.inc() embed = warning_embed(message.author, "Sent an invite link") - await message.channel.send(embeds=embed) + try: + await message.channel.send(embeds=embed) + except Exception: + self.logger.warn("Failed to send warning embed") async def massmention(self, message: Message) -> None: """Handle massmention events.""" @@ -547,7 +550,10 @@ class Jarvis(StatsClient): ) tracker.inc() embed = warning_embed(message.author, "Mass Mention") - await message.channel.send(embeds=embed) + try: + await message.channel.send(embeds=embed) + except Exception: + self.logger.warn("Failed to send warning embed") async def roleping(self, message: Message) -> None: """Handle roleping events.""" @@ -612,7 +618,10 @@ class Jarvis(StatsClient): ) tracker.inc() embed = warning_embed(message.author, "Pinged a blocked role/user with a blocked role") - await message.channel.send(embeds=embed) + try: + await message.channel.send(embeds=embed) + except Exception: + self.logger.warn("Failed to send warning embed") async def phishing(self, message: Message) -> None: """Check if the message contains any known phishing domains.""" @@ -636,7 +645,10 @@ class Jarvis(StatsClient): ) tracker.inc() embed = warning_embed(message.author, "Phishing URL") - await message.channel.send(embeds=embed) + try: + await message.channel.send(embeds=embed) + except Exception: + self.logger.warn("Failed to send warning embed") try: await message.delete() except Exception: @@ -679,7 +691,10 @@ class Jarvis(StatsClient): tracker.inc() reasons = ", ".join(item["not_safe_reasons"]) embed = warning_embed(message.author, reasons) - await message.channel.send(embeds=embed) + try: + await message.channel.send(embeds=embed) + except Exception: + self.logger.warn("Failed to send warning embed") try: await message.delete() except Exception: