From bc26acda2cc053d85dadb7380a74ba55ac55bd08 Mon Sep 17 00:00:00 2001 From: nexy7574 Date: Sun, 5 May 2024 13:19:16 +0100 Subject: [PATCH 1/3] Reduce uptime kuma ping interval to 58s, not 60s. --- src/main.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main.py b/src/main.py index 452129b..1fa558b 100644 --- a/src/main.py +++ b/src/main.py @@ -116,7 +116,7 @@ class Client(commands.Bot): async def start(self, token: str, *, reconnect: bool = True) -> None: if CONFIG["jimmy"].get("uptime_kuma_url"): self.uptime_thread = KumaThread( - CONFIG["jimmy"]["uptime_kuma_url"], CONFIG["jimmy"].get("uptime_kuma_interval", 60.0) + CONFIG["jimmy"]["uptime_kuma_url"], CONFIG["jimmy"].get("uptime_kuma_interval", 58.0) ) self.uptime_thread.start() await super().start(token, reconnect=reconnect) From 64b2045d63be92ea4a742cd18948c387095caf8a Mon Sep 17 00:00:00 2001 From: nexy7574 Date: Sun, 5 May 2024 13:30:39 +0100 Subject: [PATCH 2/3] handle interaction and replies in starboard --- src/cogs/starboard.py | 39 +++++++++++++++++++++++++++++++++++++++ src/main.py | 2 +- 2 files changed, 40 insertions(+), 1 deletion(-) diff --git a/src/cogs/starboard.py b/src/cogs/starboard.py index b11a9be..91db9fa 100644 --- a/src/cogs/starboard.py +++ b/src/cogs/starboard.py @@ -1,4 +1,5 @@ import logging +import textwrap import discord import json @@ -62,6 +63,44 @@ class Starboard(commands.Cog): ) ] ) + if message.reference: + try: + ref_message = await self.get_or_fetch_message(message.reference.channel_id, message.reference.message_id) + except discord.HTTPException: + pass + else: + text = message.content.splitlines()[0] + v = f"[{ref_message.author.mention}'s message: ]({ref_message.jump_url})" + l = 1024 - len(v) + t = textwrap.shorten(text, l, placeholder="...") + v = f"[{ref_message.author.display_name}'s message: {t}]({ref_message.jump_url})" + embed.add_field( + name="Replying to", + value=v + ) + elif message.interaction: + if message.interaction.type == discord.InteractionType.application_command: + real_author: discord.User = await discord.utils.get_or_fetch( + self.bot, + "user", + int(message.interaction.data["user"]["id"]) + ) + real_author = await discord.utils.get_or_fetch( + message.guild, + "member", + real_author.id, + default=real_author + ) or message.author + embed.set_author( + name=real_author.display_name, + icon_url=real_author.display_avatar.url, + url=real_author.jump_url + ) + embed.add_field( + name="Interaction", + value=f"Command `/{message.interaction.data['name']}` of {message.author.mention}" + ) + if message.content: embed.description = message.content elif message.embeds: diff --git a/src/main.py b/src/main.py index 1fa558b..0f8b938 100644 --- a/src/main.py +++ b/src/main.py @@ -99,7 +99,7 @@ logging.basicConfig( markup=True, console=Console(width=cols, height=lns), ), - FileHandler(filename=CONFIG["logging"].get("file", "jimmy.log"), mode="a", encoding="utf-8", errors="replace"), + FileHandler(filename=CONFIG["logging"].get("file", "jimmy.log"), encoding="utf-8", errors="replace"), ], ) for logger in CONFIG["logging"].get("suppress", []): From 318057a585557835ef873a8d0f2de446fdf30230 Mon Sep 17 00:00:00 2001 From: nexy7574 Date: Sun, 5 May 2024 13:36:54 +0100 Subject: [PATCH 3/3] Input correct reference content --- src/cogs/starboard.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/cogs/starboard.py b/src/cogs/starboard.py index 91db9fa..021619c 100644 --- a/src/cogs/starboard.py +++ b/src/cogs/starboard.py @@ -69,10 +69,10 @@ class Starboard(commands.Cog): except discord.HTTPException: pass else: - text = message.content.splitlines()[0] + text = ref_message.content.splitlines()[0] v = f"[{ref_message.author.mention}'s message: ]({ref_message.jump_url})" - l = 1024 - len(v) - t = textwrap.shorten(text, l, placeholder="...") + remaining = 1024 - len(v) + t = textwrap.shorten(text, remaining, placeholder="...") v = f"[{ref_message.author.display_name}'s message: {t}]({ref_message.jump_url})" embed.add_field( name="Replying to",