From 8d32758918e0d511b55aed3bb5489ca2a7d1a7ff Mon Sep 17 00:00:00 2001 From: benbierens Date: Fri, 28 Jun 2024 13:11:31 +0200 Subject: [PATCH] Add option to delete app commands on startup to discord bot --- Tools/BiblioTech/CommandHandler.cs | 7 +++++++ Tools/BiblioTech/Configuration.cs | 3 +++ 2 files changed, 10 insertions(+) diff --git a/Tools/BiblioTech/CommandHandler.cs b/Tools/BiblioTech/CommandHandler.cs index 29a17774..93b0ac59 100644 --- a/Tools/BiblioTech/CommandHandler.cs +++ b/Tools/BiblioTech/CommandHandler.cs @@ -35,6 +35,12 @@ namespace BiblioTech Program.AdminChecker.SetAdminChannel(adminChannels.First()); Program.RoleDriver = new RoleDriver(client, log, replacement); + if (Program.Config.DeleteCommandsAtStartup > 0) + { + log.Log("Deleting all application commands..."); + await guild.DeleteApplicationCommandsAsync(); + } + var builders = commands.Select(c => { var msg = $"Building command '{c.Name}' with options: "; @@ -54,6 +60,7 @@ namespace BiblioTech try { + log.Log("Creating application commands..."); foreach (var builder in builders) { await guild.CreateApplicationCommandAsync(builder.Build()); diff --git a/Tools/BiblioTech/Configuration.cs b/Tools/BiblioTech/Configuration.cs index 6f27fd1f..b896eb1f 100644 --- a/Tools/BiblioTech/Configuration.cs +++ b/Tools/BiblioTech/Configuration.cs @@ -38,6 +38,9 @@ namespace BiblioTech [Uniform("no-discord", "nd", "NODISCORD", false, "For debugging: Bypasses all Discord API calls.")] public int NoDiscord { get; set; } = 0; + [Uniform("delete-commands-at-startup", "dcas", "DELETECMDSATSTARTUP", false, "If > 0, deletes all app commands at startup.")] + public int DeleteCommandsAtStartup { get; set; } = 0; + public string EndpointsPath => Path.Combine(DataPath, "endpoints"); public string UserDataPath => Path.Combine(DataPath, "users"); public string LogPath => Path.Combine(DataPath, "logs");