From bc7bea0d31fe0b79b8758df9d267b86495dd649a Mon Sep 17 00:00:00 2001 From: Cyberboss Date: Thu, 19 Jul 2018 15:44:07 -0400 Subject: [PATCH] Ignore post chat address punctuation --- src/Tgstation.Server.Host/Components/Chat/Chat.cs | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/Tgstation.Server.Host/Components/Chat/Chat.cs b/src/Tgstation.Server.Host/Components/Chat/Chat.cs index 04f5c5ac68..7febaa1f3b 100644 --- a/src/Tgstation.Server.Host/Components/Chat/Chat.cs +++ b/src/Tgstation.Server.Host/Components/Chat/Chat.cs @@ -148,11 +148,17 @@ namespace Tgstation.Server.Host.Components.Chat { logger.LogTrace("Chat message: {0}. User (Note unconverted provider Id): {1}", message.Content, JsonConvert.SerializeObject(message.User)); - if (!(message.Content.StartsWith(CommonMention, StringComparison.InvariantCultureIgnoreCase) || message.Content.StartsWith(provider.BotMention, StringComparison.Ordinal))) + var splits = new List(message.Content.Split(' ')); + var address = splits[0]; + if (address.Length > 1 && (address[address.Length - 1] == ':' || address[address.Length - 1] == ',')) + address = address.Substring(0, address.Length - 1); + + address = address.ToUpperInvariant(); + + if (address != CommonMention.ToUpperInvariant() && address != provider.BotMention.ToUpperInvariant()) //no mention return; - var splits = new List(message.Content.Split(' ')); if (splits.Count == 1) { //just a mention