From 0a990dc1312fd70a9895d680f43365dec4debf11 Mon Sep 17 00:00:00 2001 From: ajax146 <31014239+ajax146@users.noreply.github.com> Date: Mon, 5 May 2025 14:22:13 -0400 Subject: [PATCH 1/3] Add support for making errors ephemeral for certain slash commands --- techsupport_bot/bot.py | 8 ++++++-- techsupport_bot/commands/whois.py | 6 +++++- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/techsupport_bot/bot.py b/techsupport_bot/bot.py index 4daf24d6..07d61e88 100644 --- a/techsupport_bot/bot.py +++ b/techsupport_bot/bot.py @@ -498,10 +498,14 @@ async def on_app_command_error( embed = auxiliary.prepare_deny_embed(message=error_message) + ephemeral_errors = interaction.command.extras.get("ephemeral_error", False) + if interaction.response.is_done(): - await interaction.followup.send(embed=embed) + await interaction.followup.send(embed=embed, ephemeral=ephemeral_errors) else: - await interaction.response.send_message(embed=embed) + await interaction.response.send_message( + embed=embed, ephemeral=ephemeral_errors + ) async def handle_error( self: Self, diff --git a/techsupport_bot/commands/whois.py b/techsupport_bot/commands/whois.py index 26f0008c..e6462a9e 100644 --- a/techsupport_bot/commands/whois.py +++ b/techsupport_bot/commands/whois.py @@ -30,7 +30,11 @@ class Whois(cogs.BaseCog): @app_commands.command( name="whois", description="Gets Discord user information", - extras={"brief": "Gets user data", "usage": "@user", "module": "whois"}, + extras={ + "usage": "@user", + "module": "whois", + "ephemeral_error": True, + }, ) async def whois_command( self: Self, interaction: discord.Interaction, member: discord.Member From b103c0fd13928015bcb9c27965bd34b1752eb517 Mon Sep 17 00:00:00 2001 From: ajax146 <31014239+ajax146@users.noreply.github.com> Date: Mon, 5 Jan 2026 09:44:07 -0500 Subject: [PATCH 2/3] Follows debug_mode now --- techsupport_bot/bot.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/techsupport_bot/bot.py b/techsupport_bot/bot.py index 98bbe380..67bd5db4 100644 --- a/techsupport_bot/bot.py +++ b/techsupport_bot/bot.py @@ -498,7 +498,9 @@ async def on_app_command_error( embed = auxiliary.prepare_deny_embed(message=error_message) - ephemeral_errors = interaction.command.extras.get("ephemeral_error", False) + ephemeral_errors_parameter = interaction.command.extras.get("ephemeral_error", False) + debug_mode = bool(int(os.environ.get("DEBUG", 0))) + ephemeral_errors = ephemeral_errors_parameter and not debug_mode if interaction.response.is_done(): await interaction.followup.send(embed=embed, ephemeral=ephemeral_errors) From ed5d7058eebb05728351a22623cb9658e9524d3c Mon Sep 17 00:00:00 2001 From: ajax146 <31014239+ajax146@users.noreply.github.com> Date: Mon, 5 Jan 2026 09:44:30 -0500 Subject: [PATCH 3/3] Formatting --- techsupport_bot/bot.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/techsupport_bot/bot.py b/techsupport_bot/bot.py index 67bd5db4..76e35da4 100644 --- a/techsupport_bot/bot.py +++ b/techsupport_bot/bot.py @@ -498,7 +498,9 @@ async def on_app_command_error( embed = auxiliary.prepare_deny_embed(message=error_message) - ephemeral_errors_parameter = interaction.command.extras.get("ephemeral_error", False) + ephemeral_errors_parameter = interaction.command.extras.get( + "ephemeral_error", False + ) debug_mode = bool(int(os.environ.get("DEBUG", 0))) ephemeral_errors = ephemeral_errors_parameter and not debug_mode