Example #1
0
        internal static async Task UntrackMessage(TrackedMessage msg)
        {
            if (TrackedLogChannelMessages.Contains(msg))
            {
                TrackedLogChannelMessages.Remove(msg);
            }
            else if (TrackedSettingsMessages.Contains(msg))
            {
                TrackedSettingsMessages.Remove(msg);
            }
            else if (RandomMessages.Contains(msg))
            {
                RandomMessages.Remove(msg);
            }


            if (!msg.IsDeleted)
            {
                try
                {
                    await msg.SourceMessage.DeleteAsync();
                }
                catch { }
                msg.IsDeleted = true;
            }
        }
Example #2
0
        internal static void AddRandomTracker(RestUserMessage msg, ulong time = 15)
        {
            var   tMsg = new TrackedMessage(msg, 0);
            Timer t    = new Timer();

            async void handler(object sender, ElapsedEventArgs e)
            {
                t.Stop();
                await UntrackMessage(tMsg);
            }

            t.StartTimer(handler, time * 1000);
            RandomMessages.Add(tMsg);
        }
Example #3
0
        internal static void AddSettingsTracker(RestUserMessage msg, ulong authorID)
        {
            var   tMsg = new TrackedMessage(msg, authorID);
            Timer t    = new Timer();

            async void handler(object sender, ElapsedEventArgs e)
            {
                t.Stop();
                await UntrackMessage(tMsg);
            }

            t.StartTimer(handler, 60000);
            TrackedSettingsMessages.Add(tMsg);
        }