Как пропустить старые сообщения в Telegram.Bot?

Использую c# библиотеку Telegram.Bot. При старте бота в обработку попадают все пришедшие до запуска сообщения. Можно ли обрабатывать только новые обновления? (Например в aiogram можно указать skip_updates=True)


Ответы (2 шт):

Автор решения: User12351259599491

Я получал дату сообщения

var date = update.Message!.Date;

Далее сравниваю время.

               var datemes = DateTime.Now - (date.AddHours(3));
                if (datemes.Seconds > 5) 
                {
                    Console.WriteLine("Старое сообщение");

                }
Если сообщение написали больше 5 секунд назад то просто вывожу в консоль "Старое сообщение", бот юзеру ничего не отвечает.

→ Ссылка
Автор решения: LanceMinecraft
TimeSpan times = DateTime.UtcNow - update.Message.Date;
if(times.TotalMinutes > 3)
{
     Console.WriteLine("skipping old update");
}

Вот так вот должны мы пропускать старое обновление, получая дату отправки сообщения, делаем переменную times (update.Message.Date в формате UTC), а дальше, если итоговое кол-во минут превышают 3 - скипается старый апдейт

→ Ссылка