using Telegram.Bot;
using Telegram.Bot.Polling;
using Telegram.Bot.Types;
using Telegram.Bot.Types.Enums;
using Telegram.Bot.Types.ReplyMarkups;
using Telegram.Bots.Http;
namespace TelegramBot
{
class Program
{
private static TelegramBotClient bot = new TelegramBotClient("-");
static void Main(string[] args)
{
Console.WriteLine("Запущен бот " + bot.GetMeAsync().Result.FirstName);
var cts = new CancellationTokenSource();
var cancellationToken = cts.Token;
var receiverOptions = new ReceiverOptions
{
AllowedUpdates = { }, // receive all update types
};
bot.StartReceiving(
HandleUpdateAsync,
HandleErrorAsync,
receiverOptions,
cancellationToken
);
Console.ReadLine();
}
public static async Task HandleUpdateAsync(ITelegramBotClient botClient, Update update, CancellationToken cancellationToken)
{
List<Message> messages = new List<Message>();
if (update.Type == UpdateType.Message)
{
var message = update.Message;
if (message.Text.ToLower() == "/start")
{
var inlineKeyboard = new InlineKeyboardMarkup(new[]
{
InlineKeyboardButton.WithCallbackData("Проверить условие", "check_condition")
});
await botClient.SendTextMessageAsync(
message.Chat,
"Привет! Я - ваш бот-помощник, разработанный специально для управления вашим аккаунтом в игре LimeMP RolePlay. Мною вы сможете отслеживать активность на вашем аккаунте, замораживать его, изменять пароль и многое другое!\n\nМоя работа облегчит вам управление аккаунтом и сделает его более безопасным и удобным. Чтобы начать использование бота, вам необходимо подписаться на канал новостник t.me/limemp.",
replyMarkup: inlineKeyboard
);
}
}
}
public static async Task HandleErrorAsync(ITelegramBotClient botClient, Exception exception, CancellationToken cancellationToken)
{
Console.WriteLine(Newtonsoft.Json.JsonConvert.SerializeObject(exception));
}
private static async Task HandleCallbackQueryAsync(ITelegramBotClient botClient, Update update, CancellationToken cancellationToken)
{
var callbackQuery = update.CallbackQuery;
var user = callbackQuery.From;
Console.WriteLine($"{user.FirstName} ({user.Id}) нажал на кнопку: {callbackQuery.Data}");
switch (callbackQuery.Data)
{
case "check_condition":
{
return;
}
}
}
}
}