@@ -243,7 +243,14 @@ async def log_DM(self: Self, sent_from: str, source: str, content: str) -> None:
243
243
f"{ source } recieved a PM" , f"PM from: { sent_from } \n { content } "
244
244
)
245
245
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
+ )
247
254
248
255
async def on_message (self : Self , message : discord .Message ) -> None :
249
256
"""Logs DMs and ensure that commands are processed
@@ -763,7 +770,6 @@ async def is_bot_admin(self: Self, member: discord.Member) -> bool:
763
770
context = LogContext (guild = member .guild ),
764
771
console_only = True ,
765
772
)
766
-
767
773
owner = await self .get_owner ()
768
774
if getattr (owner , "id" , None ) == member .id :
769
775
return True
@@ -787,6 +793,12 @@ async def get_owner(self: Self) -> discord.User | None:
787
793
Returns:
788
794
discord.User | None: The User object of the owner of the application on discords side
789
795
"""
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
+
790
802
if not self .owner :
791
803
try :
792
804
# If this isn't console only, it is a forever recursion
0 commit comments