From b7af64f0ba67fc1937612e221afe3db0ebcd4288 Mon Sep 17 00:00:00 2001 From: Lio Young Date: Sat, 10 Apr 2021 03:52:38 +0200 Subject: [PATCH] add usage logging for commands --- src/events/message.ts | 23 ++++++++++++++++++++++- src/events/update.message.ts | 3 +++ 2 files changed, 25 insertions(+), 1 deletion(-) diff --git a/src/events/message.ts b/src/events/message.ts index b35c06e..28fba05 100644 --- a/src/events/message.ts +++ b/src/events/message.ts @@ -66,6 +66,7 @@ export = { const ctx = { client, + args, guild: message.guild, message, channel: message.channel, author: message.author, @@ -73,7 +74,7 @@ export = { supabase, guildSettings: server_data[0], config, - isDeveloper: config.developers.find(dev => dev.id === message.author.id) + isDeveloper: config.variables.developers.find(dev => dev.id === message.author.id) } // ! Override Command Restrictions if Message Author is on list of Developers // if (ctx.isDeveloper) cmd.AuthorPermissions = "NONE" @@ -106,7 +107,27 @@ export = { setTimeout(() => timestamps.delete(ctx.author.id), cooldown) try { await cmd.command(ctx) + + // ? Check if Comnand exists in DB + let { data: usage_check_data, error: usage_check_error } = await supabase.from("usage").select().eq(`name`, cmd.name).limit(1) + if (usage_check_data?.length == 0) { + let { data: c, error: d } = await supabase.from('usage').insert({ + name: cmd.name, + type: "command", + // amount: 1 + }) + + } + + let { data: command_usage_data, command_usage_error } = await supabase.from('usage').update({ amount: (usage_check_data[0] || { amount: 0 }).amount + 1 }).select().eq("name", cmd.name) + Logger.info({ + type: "event:command", + command: cmd.name, + message: args.join(' ') || `${cmd.name} was executed` + }) } catch (error) { + // Logger.error(error) + console.log(error) let ErrorEmbed = new MessageEmbed().setTitle(replace(/COMMAND/g, cmd.name, lingua[server_data[0].locale].ON_ERROR)).setDescription(`\`${error.message}\`\n\n\`${error}\``).setColor("RED") ctx.channel.send(ErrorEmbed) } diff --git a/src/events/update.message.ts b/src/events/update.message.ts index be2a978..0b1c45f 100644 --- a/src/events/update.message.ts +++ b/src/events/update.message.ts @@ -6,6 +6,9 @@ export = { name: "messageUpdate", run: async (client: Client, old_message: Message, new_message: Message) => { if (new_message.author.bot || old_message.author.bot) return + + if (old_message.content === new_message.content) return; + Logger.info({ type: `event:messageUpdate`, message: "Emitting new message to event:message" }) await client.emit("message", new_message)