From 18e1748c4f701bbcca6b0405895329c9d7579db0 Mon Sep 17 00:00:00 2001 From: Noikoio Date: Sat, 26 Aug 2017 10:05:29 -0700 Subject: [PATCH] Fixed all autoresponses triggering on every message --- Feature/AutoRespond/AutoRespond_Process.cs | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/Feature/AutoRespond/AutoRespond_Process.cs b/Feature/AutoRespond/AutoRespond_Process.cs index 3e773de..8ae411a 100644 --- a/Feature/AutoRespond/AutoRespond_Process.cs +++ b/Feature/AutoRespond/AutoRespond_Process.cs @@ -8,13 +8,17 @@ namespace Noikoio.RegexBot.Feature.AutoRespond { private async Task ProcessMessage(SocketMessage msg, ResponseDefinition def) { - // Checks before executing + // Check filters if (def.Filter.IsFiltered(msg)) return; + + // Check rate limit if (!def.RateLimit.AddUsage(msg.Channel.Id)) return; + + // Check if the trigger is a match, of course + if (!def.Trigger.IsMatch(msg.Content)) return; await Log($"'{def.Label}' triggered in #{msg.Channel.Name} by {msg.Author}"); var (type, text) = def.Response; - if (type == ResponseDefinition.ResponseType.Reply) await ProcessReply(msg, text); else if (type == ResponseDefinition.ResponseType.Exec) await ProcessExec(msg, text); }