diff --git a/KfChatDotNetBot/ChatBot.cs b/KfChatDotNetBot/ChatBot.cs index 64c2844..82fc2a1 100644 --- a/KfChatDotNetBot/ChatBot.cs +++ b/KfChatDotNetBot/ChatBot.cs @@ -238,6 +238,15 @@ public class ChatBot { _logger.Info($"KF ({message.MessageDate.ToLocalTime():HH:mm:ss}) <{message.Author.Username}> {message.Message}"); } + // Update last edit timestamp + if (message.Author.Username == settings[BuiltIn.Keys.KiwiFarmsUsername].Value && message.MessageEditDate != null) + { + var sentMessage = SentMessages.FirstOrDefault(x => x.ChatMessageId == message.MessageId); + if (sentMessage != null) + { + sentMessage.LastEdited = message.MessageEditDate.Value; + } + } if (message.Author.Username == settings[BuiltIn.Keys.KiwiFarmsUsername].Value && message.MessageEditDate == null) { // MessageRaw is not actually REAL and RAW. The messages are still HTML encoded diff --git a/KfChatDotNetBot/Models/SentMessageTrackerModel.cs b/KfChatDotNetBot/Models/SentMessageTrackerModel.cs index f964621..71be709 100644 --- a/KfChatDotNetBot/Models/SentMessageTrackerModel.cs +++ b/KfChatDotNetBot/Models/SentMessageTrackerModel.cs @@ -10,6 +10,11 @@ public class SentMessageTrackerModel // Timespan from when the message was sent until we saw it come back public TimeSpan? Delay { get; set; } public DateTimeOffset? SentAt { get; set; } + /// + /// If the message was edited, this is the last edit time that Sneedchat sent us + /// When edited multiple times, it'll be the most recent edit + /// + public DateTimeOffset? LastEdited { get; set; } = null; } public enum SentMessageTrackerStatus