Skip to content

Commit 03ea05f

Browse files
authored
Add override owner config and try catch to log DM (#1220)
* Add override owner config and try catch to log DM * Formatting * Formatting 2 * Update config.default.yml
1 parent 9a16c51 commit 03ea05f

File tree

2 files changed

+15
-2
lines changed

2 files changed

+15
-2
lines changed

config.default.yml

+1
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ bot_config:
66
disabled_extensions: ["kanye"]
77
default_prefix: "."
88
global_alerts_channel: ""
9+
override_owner: ""
910
modmail_config:
1011
enable_modmail: False
1112
disable_thread_creation: False

techsupport_bot/bot.py

+14-2
Original file line numberDiff line numberDiff line change
@@ -243,7 +243,14 @@ async def log_DM(self: Self, sent_from: str, source: str, content: str) -> None:
243243
f"{source} recieved a PM", f"PM from: {sent_from}\n{content}"
244244
)
245245
embed.timestamp = datetime.datetime.utcnow()
246-
await owner.send(embed=embed)
246+
try:
247+
await owner.send(embed=embed)
248+
except discord.Forbidden as exception:
249+
await self.logger.send_log(
250+
message="Could not DM discord bot owner",
251+
level=LogLevel.ERROR,
252+
exception=exception,
253+
)
247254

248255
async def on_message(self: Self, message: discord.Message) -> None:
249256
"""Logs DMs and ensure that commands are processed
@@ -763,7 +770,6 @@ async def is_bot_admin(self: Self, member: discord.Member) -> bool:
763770
context=LogContext(guild=member.guild),
764771
console_only=True,
765772
)
766-
767773
owner = await self.get_owner()
768774
if getattr(owner, "id", None) == member.id:
769775
return True
@@ -787,6 +793,12 @@ async def get_owner(self: Self) -> discord.User | None:
787793
Returns:
788794
discord.User | None: The User object of the owner of the application on discords side
789795
"""
796+
if self.file_config.bot_config.override_owner:
797+
self.owner = await self.fetch_user(
798+
int(self.file_config.bot_config.override_owner)
799+
)
800+
return self.owner
801+
790802
if not self.owner:
791803
try:
792804
# If this isn't console only, it is a forever recursion

0 commit comments

Comments
 (0)