MessageAwaiter
MessageAwaiter позволяет создавать сообщение заглушку перед обработкой данных и автоматически удалять его после.
using(var messageAwaiter = new MessageAwaiter(botClient, update.GetChatId()))
{
// Обработка...
}
using(var messageAwaiter = new MessageAwaiter(botClient, update.GetChatId(), "Текст сообщения"))
{
// Обработка...
}
Пример использования
using PRTelegramBot.Attributes;
using PRTelegramBot.Extensions;
using PRTelegramBot.Utils;
using Telegram.Bot;
using Telegram.Bot.Types;
namespace ConsoleExample.Examples
{
internal class ExampleUtils
{
/// <summary>
/// Команда отработает для бота с botId 0.
/// Команда отработает при написание в чат "Awaiter message".
/// Сначало будет отправлено сообщение о генерации данных, после двух секунд старое сообщение будет удалено и сразу появится новое.
/// </summary>
[ReplyMenuHandler("Awaiter message")]
public static async Task AdminExample(ITelegramBotClient botClient, Update update)
{
using(var messageAwaiter = new MessageAwaiter(botClient, update.GetChatId()))
{
// Симуляция тяжелой операции.
await Task.Delay(2000);
await PRTelegramBot.Helpers.Message.Send(botClient, update, $"Генерация данных завершена.");
}
}
}
}
Результат выполнения


Last updated