private static void Bot_OnCallbackQuery(object sender, Telegram.Bot.Args.CallbackQueryEventArgs e) { try { Bot.HandleCallBackQuery(e.CallbackQuery).GetAwaiter().GetResult(); } catch (Exception exception) { if (exception is MessageIsNotModifiedException) { return; } if (exception is ApiRequestException) { return; } if (exception is WrongPageException) { Bot.AnswerCallbackQueryAsync(callbackQueryId: e.CallbackQuery.Id, exception.Message).GetAwaiter().GetResult(); return; } throw; } }
/// <summary> /// Обработчик телеграм кнопок /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void Bot_OnCallbackQuery(object sender, Telegram.Bot.Args.CallbackQueryEventArgs e) { var m = e.CallbackQuery; //аргументы события //Если в списке городов есть совпадение с сообщением польозвателя if (wc.citiesCollection.Contains(m.Data)) { w.Dispatcher.Invoke(new Action(async() => { //Получение погоду weatherString = await WeatherClient.GetWeather(m.Data); //Создание объекта wc.ow = JsonConvert.DeserializeObject <WeatherClient.OpenWeather>(weatherString); var weather = wc.ow; //Составление строки из данных объекта погоды для отправки string weatherMessage = $"City: {m.Data}\n" + $"Temp: {weather.main.Temp.ToString("0.##")} ℃\n" + $"{weather.weather[0].description}\n" + $"Humidity: {weather.main.humidity.ToString()}\n" + $"Pressure: {((int)weather.main.Pressure).ToString()}\n" + $"WindSpeed: {weather.wind.speed.ToString()}\n" + $"WindDeg: {weather.wind.deg.ToString()}"; await bot.SendTextMessageAsync(m.From.Id, weatherMessage); })); } }
// просмотр списка компьютерных комплектующих заданной категории static async public void ListComputerParts(Telegram.Bot.Args.CallbackQueryEventArgs e, string viewParts) { bool check = false; string sql = "SELECT * FROM ComputerParts"; SqlCommand sqlCommand = new SqlCommand(sql, connection); SqlDataReader reader = sqlCommand.ExecuteReader(); while (reader.Read()) { string product = reader.GetString(1); string description = reader.GetString(2); double price = reader.GetDouble(3); string producer = reader.GetString(4); string photo = reader.GetString(5); string link = reader.GetString(6); if (product.Contains($"{viewParts}")) { await Program.bot.SendPhotoAsync(e.CallbackQuery.Message.Chat.Id, photo : $"{photo}", caption : $"{product}\n\n<b>Описание товара: </b>{description}\n" + $"<b>Цена: </b>{price}р.\n<b>Производитель: </b>{producer}\n<a href=\"{link}\">Подробнее</a>", Telegram.Bot.Types.Enums.ParseMode.Html); check = true; } } if (!check) { await Program.bot.SendTextMessageAsync(e.CallbackQuery.Message.Chat.Id, "❗ Данного товара нет в списках!\n"); } await Program.bot.SendTextMessageAsync(e.CallbackQuery.Message.Chat.Id, $"❕ Вы просмотрели весь список наличия товаров данной категории! Я могу вам помочь подобрать товар по вашей цене.", replyMarkup : (IReplyMarkup)FrettiBot.Program.ComputerPartsInlineKeyboard()); // меню reader.Close(); }
private async void BotClient_OnCallbackQuery(object sender, Telegram.Bot.Args.CallbackQueryEventArgs callbackQueryEventArgs) { CallbackQuery callbackQuery = callbackQueryEventArgs.CallbackQuery; if (await IsCanAnswer(callbackQuery.From, callbackQuery.Message)) { await botClient.SendChatActionAsync(callbackQuery.Message.Chat.Id, ChatAction.Typing); await Task.Delay(500); string[] callbackData = callbackQuery.Data.Split('|'); if (callbackData.Length > 1) { Command command = commands.FirstOrDefault(c => c.Name == callbackData[0]); if (command != null) { if (command.Callback != null) { await command.Callback.Execute(callbackQuery, botClient); } } else { await botClient.SendTextMessageAsync(callbackQuery.Message.Chat.Id, "Unknown command").ConfigureAwait(false); } } } }
private static void Bot_OnCallbackQuery(object sender, Telegram.Bot.Args.CallbackQueryEventArgs e) { long chatID = e.CallbackQuery.Message.Chat.Id; DatabaseContext db = new DatabaseContext(); Subscribers sub = db.subscribers.Where(s => s.chatID == chatID).FirstOrDefault(); if (sub == null) { sub = new Subscribers(); sub.chatID = chatID; sub.wantsDlcInfo = false; sub.wantsGameInfo = false; db.subscribers.Add(sub); } switch (e.CallbackQuery.Data) { case gameOnly: sub.wantsDlcInfo = false; sub.wantsGameInfo = true; bot.SendTextMessageAsync( chatId: chatID, text: "Thank you, I will let you know when I find some free games!", replyMarkup: new ReplyKeyboardRemove() ); SendFreeGameMessage(sub); break; case gameanddlc: sub.wantsDlcInfo = true; sub.wantsGameInfo = true; bot.SendTextMessageAsync( chatId: chatID, text: "Thank you, I will let you know when I find some free games and dlcs!", replyMarkup: new ReplyKeyboardRemove() ); SendFreeGameMessage(sub); break; case dlcsOnly: sub.wantsDlcInfo = true; sub.wantsGameInfo = false; bot.SendTextMessageAsync( chatId: chatID, text: "Thank you, I will let you know when I find some free dlcs!", replyMarkup: new ReplyKeyboardRemove() ); SendFreeGameMessage(sub); break; } db.SaveChanges(); }
/// <summary> /// Обработчик событий нажатия от пользователя /// </summary> /// <param name="sender">Объект отправивший сигнал</param> /// <param name="e">Событие отправки сигнала</param> private static async void Bot_OnCallbackQuery(object sender, Telegram.Bot.Args.CallbackQueryEventArgs e) { string buttonText = e.CallbackQuery.Data; if (buttonText == menu["Story"]) { // Выбран рассказ сказки Console.WriteLine($"Сказка для пользователя username: '******', имя: '{e.CallbackQuery.From.FirstName}', фамилия: {e.CallbackQuery.From.LastName}, идентификатор: '{e.CallbackQuery.From.Id}'"); // логирование await Bot.SendTextMessageAsync(e.CallbackQuery.From.Id, returnFairyTale(@"C:\SKILLBOX_STUDY\C#\HOMEWORK\9\TelegramBot\Data_Files\FairyTales.json")); } if (buttonText == menu["Sities"]) { // Выбрана игра в города string answerText = "<b>ГОРОДА.</b>\n" + "<i>В игре учавствуют названия городов, состоящие из одного слова и не включающие в себя знак '-'.\n" + "Каждый игрок по очереди пишет название города, начинающееся с той буквы на которую заканчивалось название предыдущего города." + "Проигрывает тот, кто напишет 'конец'.</i>"; await Bot.SendTextMessageAsync(e.CallbackQuery.From.Id, answerText, parseMode : ParseMode.Html); await Bot.SendTextMessageAsync(e.CallbackQuery.From.Id, "Теперь можешь назвать город."); long chatId = e.CallbackQuery.Message.Chat.Id; List <string> copyCities = new List <string>(); copyCities.AddRange(cities); // делаем копию списка городов, чтобы источник не менялся Console.WriteLine($"Играет пользователь username: '******', имя: '{e.CallbackQuery.From.FirstName}', фамилия: {e.CallbackQuery.From.LastName}, идентификатор: '{e.CallbackQuery.From.Id}'"); // логирование games.addGame(new CitiesGame(chatId, copyCities)); // добавляет новую игру в города с ботом } }
private void _TBC_OnCallbackQuery(object sender, Telegram.Bot.Args.CallbackQueryEventArgs e) { var chat = e.CallbackQuery?.Message?.Chat; var user = e.CallbackQuery?.From; var data = e.CallbackQuery?.Data; if (chat == null || user == null || user.IsBot != false || data.IsNullOrEmpty()) { return; } var options = EnumEx.ToStringArray <OptionKeys>(); var args = data.Split(" "); if (!options.Any(x => x == args[0])) { return; //no options found } _logger.Log($"[info] => Chat: @{chat.Username ?? "undefined"}:{chat.Id.ToString()} => User: @{user.Username ?? "undefined"}:{user.Id.ToString()} => Callback ({e.CallbackQuery.Id}): '{data}'"); _ssCbqLocker.Lock(() => { _callbacks.Add(e.CallbackQuery); }); }
private async void OnCallbackQuery(object sender, Telegram.Bot.Args.CallbackQueryEventArgs e) { try { IQueryData queryData = _queryDataSerializer.DecodeBase64(e.CallbackQuery.Data); Group group = await _groupService.GetByChatTokenAsync(queryData.ChatToken); Customer[] customers = await _customerService.GetListAsync(group.Id); // Собираем всю информацию о пользователе и сообщении. UserMessageInfo userMessageInfo = new UserMessageInfo { Group = group, Customers = customers, UserName = e.CallbackQuery.From.Username, UserToken = e.CallbackQuery.From.Id.ToString(), MessageType = Models.MessageType.Query, Message = new MessageInfo { Token = e.CallbackQuery.Message.MessageId.ToString(), Text = e.CallbackQuery.Message.Text, QueryData = queryData } }; OnMessage?.Invoke(this, userMessageInfo); } catch (Exception ex) { _logger.Error($"{GetType().Name}: Произошла ошибка во время обработки query запроса ", ex); } }
private static void TBot_OnCallbackQuery(object sender, Telegram.Bot.Args.CallbackQueryEventArgs e) { var tBot = sender as TelegramBotClient; var ourBot = Bots[tBot]; ourBot.Scheme.Next(e); }
private async void _telegramBotClient_OnCallbackQuery(object sender, Telegram.Bot.Args.CallbackQueryEventArgs e) { await _telegramBotClient.SendChatActionAsync(e.CallbackQuery.Message.Chat.Id, ChatAction.Typing); var level = int.Parse(e.CallbackQuery.Data); await SendStartingMessage(e.CallbackQuery.Message); var story = await _storyRepository.GetAnyStoryAsync(level); if (story == null) { await _telegramBotClient.SendChatActionAsync(e.CallbackQuery.Message.Chat.Id, ChatAction.Typing); await _telegramBotClient.SendTextMessageAsync(e.CallbackQuery.Message.Chat.Id, $"Ops! We are so sorry. 😿 We don't have A1 level story."); return; } await SendImageWhenExists(e.CallbackQuery.Message, story); await SendStoryInformation(e.CallbackQuery.Message, story); await SendStoryContent(e.CallbackQuery.Message, story); await SendSoundWhenExists(e.CallbackQuery.Message, story); await _telegramBotClient.SendTextMessageAsync(e.CallbackQuery.Message.Chat.Id, $"Don't be a stranger! 💖"); }
private async void Client_OnCallbackQuery(object sender, Telegram.Bot.Args.CallbackQueryEventArgs e) { if (answer.DeleteQuestion(e.CallbackQuery.Data).Result) { await messageService.DeleteMessage(client, e.CallbackQuery.Message.Chat, e.CallbackQuery.Message.MessageId); } }
// просмотр производителей данного товара static public async void ProducerComputerParts(Telegram.Bot.Args.CallbackQueryEventArgs e, string viewParts, string productName) { bool check = false; string sql = "SELECT * FROM ComputerParts"; SqlCommand sqlCommand = new SqlCommand(sql, connection); SqlDataReader reader = sqlCommand.ExecuteReader(); while (reader.Read()) { string product = reader.GetString(1); string description = reader.GetString(2); double price = reader.GetDouble(3); string producer = reader.GetString(4); string photo = reader.GetString(5); string link = reader.GetString(6); if (producer == $"{viewParts}" && product.Contains($"{productName}") == true) { await FrettiBot.Program.bot.SendPhotoAsync(e.CallbackQuery.Message.Chat.Id, photo : $"{photo}", caption : $"{product}\n\n<b>Описание товара: </b>{description}\n" + $"<b>Цена: </b>{price} р.\n<b>Производитель: </b>{producer}\n<a href=\"{link}\">Подробнее</a>", parseMode : Telegram.Bot.Types.Enums.ParseMode.Html); check = true; } } if (!check) { await FrettiBot.Program.bot.SendTextMessageAsync(e.CallbackQuery.Message.Chat.Id, "❗ Такого производителя для данного товара нет в базе данных", replyMarkup : (IReplyMarkup)FrettiBot.Program.ComputerPartsInlineKeyboard()); } await FrettiBot.Program.bot.SendTextMessageAsync(e.CallbackQuery.Message.Chat.Id, $"❕ Вы только что просмотрели производителей, может вам что-то понравилось? Можете нажать на *Подробнее* и изучить более детально," + " а если нет, то мы всегда можем продолжить!", Telegram.Bot.Types.Enums.ParseMode.Markdown, replyMarkup : (IReplyMarkup)FrettiBot.Program.ComputerPartsInlineKeyboard()); reader.Close(); }
private static async void OnCallbackQueryReceived(object sender, Telegram.Bot.Args.CallbackQueryEventArgs e) { string data = e.CallbackQuery.Data; int chatId = e.CallbackQuery.From.Id; Event currentEvent = eventsInProccess[chatId]; if (Status == Status.WantToAdd) { if (Months.Any(o => string.Equals(o.Name, data, StringComparison.OrdinalIgnoreCase))) { Month month = Months.First(o => string.Equals(o.Name, data, StringComparison.OrdinalIgnoreCase)); currentEvent.Month = month; Status = Status.MonthSelected; await BotClient.DeleteMessageAsync(chatId, e.CallbackQuery.Message.MessageId); await BotClient.SendTextMessageAsync(chatId, $"Окей. Месяц - {month.Name}. Теперь выберите число:", replyMarkup : Keyboards.Days(month)); } } else if (Status == Status.MonthSelected) { currentEvent.Day = Int32.Parse(data); Status = Status.DaySelected; await BotClient.DeleteMessageAsync(chatId, e.CallbackQuery.Message.MessageId); await BotClient.SendTextMessageAsync(chatId, $"Отлично, {currentEvent.Month.Name} {currentEvent.Day}. Теперь напишите название события:"); //eventsInProccess[chatId] = currentEvent; } }
static async void Bot_OnCallbackQuery(object sender, Telegram.Bot.Args.CallbackQueryEventArgs e) { var buttonName = e.CallbackQuery.Data; var name = $"{e.CallbackQuery.From.FirstName} {e.CallbackQuery.From.LastName}"; Console.WriteLine($"{name} press on {buttonName}"); await Bot.AnswerCallbackQueryAsync(e.CallbackQuery.Id, "Hey!"); }
private static async void bot_OnCallbackQuery(object sender, Telegram.Bot.Args.CallbackQueryEventArgs e) { var callbackQuery = e.CallbackQuery; string messageBody = callbackQuery.Data; var chatId = callbackQuery.Message.Chat.Id; await bot.SendTextMessageAsync(chatId, messageBody); }
private void Bot_OnCallbackQuery(object sender, Telegram.Bot.Args.CallbackQueryEventArgs e) { Message m = e.CallbackQuery.Message; m.Text = e.CallbackQuery.Data; saveLogAndHandleMessage(m); }
private static async void BotOnCallbackQueryReceived(object sender, Telegram.Bot.Args.CallbackQueryEventArgs e) { string buttonText = e.CallbackQuery.Data; string name = $"{e.CallbackQuery.From.FirstName} {e.CallbackQuery.From.FirstName}"; Console.WriteLine($"{name} нажал кнопку {buttonText}"); await Bot.AnswerCallbackQueryAsync(e.CallbackQuery.Id, $"вы нажали кнопку {buttonText}"); }
private void OnCallbackQuery(Object sender, Telegram.Bot.Args.CallbackQueryEventArgs e) { //--- Обработчик команд. if (commands.Any(p => p.Equals(e.CallbackQuery.Data))) { ICommand command = commands.FirstOrDefault(p => p.Equals(e.CallbackQuery.Data)); command.Execute(BotClient, e.CallbackQuery); } }
static void TemperatureI(Telegram.Bot.Args.CallbackQueryEventArgs e) { var message = e.CallbackQuery.Data; float i = 0; switch (message) { case "-5": i = 1.29f; SendCurrent(i, e); break; case "0": i = 1.24f; SendCurrent(i, e); break; case "+5": i = 1.20f; SendCurrent(i, e); break; case "+10": i = 1.15f; SendCurrent(i, e); break; case "+15": i = 1.11f; SendCurrent(i, e); break; case "+20": i = 1.05f; SendCurrent(i, e); break; case "+25": i = 1.00f; SendCurrent(i, e); break; case "+30": i = 0.94f; SendCurrent(i, e); break; case "+35": i = 0.88f; SendCurrent(i, e); break; case "+40": i = 0.81f; SendCurrent(i, e); break; case "+45": i = 0.74f; SendCurrent(i, e); break; case "+50": i = 0.67f; SendCurrent(i, e); break; } }
private void CallBack(System.Object sender, Telegram.Bot.Args.CallbackQueryEventArgs e) { if (commands.Any(c => c.Equals(e.CallbackQuery.Data))) // проверка есть ли команда в списке { ICommand Command = commands.FirstOrDefault(c => c.Equals(e.CallbackQuery.Data)); // вытягиваем класс Command.Execute(BotClient, e.CallbackQuery, pairs, baseContext); } else if (calendars.Any(c => c.Equals(e.CallbackQuery.Data))) { if (!keyValues.Any(c => c.Key == e.CallbackQuery.From.Id) || keyValues.Count == 0) { keyValues.Add(e.CallbackQuery.From.Id, new Calendar()); } ICalendar Command = calendars.FirstOrDefault(c => c.Equals(e.CallbackQuery.Data)); // вытягиваем класс if (Command.Name == "BackToStart" || Command.Name == "BackToCalendar" || Command.Name == "Calendar" || Command.Name == "<" || Command.Name == ">") { Command.Execute(BotClient, e.CallbackQuery, keyValues, baseContext); } else { Command.Execute(BotClient, e.CallbackQuery, eventCals, baseContext); } } else if (commandSettings.Any(c => c.Equals(e.CallbackQuery.Data))) { ICommandSettings ISettings = commandSettings.FirstOrDefault(c => c.Equals(e.CallbackQuery.Data)); ISettings.Execute(BotClient, e.CallbackQuery, iSettings, baseContext); } else if (commandiOrganizer.Any(c => c.Equals(e.CallbackQuery.Data))) { IOrganizer iTOrganizer = commandiOrganizer.FirstOrDefault(c => c.Equals(e.CallbackQuery.Data)); iTOrganizer.Execute(BotClient, e.CallbackQuery, iOrganizer, baseContext); } else { User users = baseContext._User.Where(p => p.ID == e.CallbackQuery.From.Id).FirstOrDefault(); if (users.Work / 100 <= 22) { ChouseItem chouseItem = new ChouseItem(); chouseItem.Execute(BotClient, e.CallbackQuery, pairs, baseContext); } else if (users.Work / 100 == 30) { ChouseData chouseData = new ChouseData(); chouseData.Execute(BotClient, e.CallbackQuery, baseContext); } else if (users.Work % 100 >= 26 && users.Work % 100 <= 28) { ShowItemCalndar showItemCalnder = new ShowItemCalndar(); showItemCalnder.Execute(BotClient, e.CallbackQuery, eventCals, baseContext); } } }
private async void Bot_OnCallbackQuery(object sender, Telegram.Bot.Args.CallbackQueryEventArgs e) { if (bShouldIgnore) { bShouldIgnore = false; return; } var callback = e.CallbackQuery; await bot.AnswerCallbackQueryAsync(callback.Id); if (OfferDispatcher.GetSearch(callback.Data) is SearchBase search) { var sent = await bot.SendTextMessageAsync(callback.Message.Chat.Id, "Please wait, processing..."); Offers = search.GetLoaded() .Where(x => x.Space > 15) .Distinct() .OrderBy(x => x.Price) .ThenByDescending(x => x.Space) .ToList() // Force load ; CurrentOffer = Offers.First(); await bot.DeleteMessageAsync(sent.Chat.Id, sent.MessageId); SetOffer(callback.Message); } else if (callback.Data == "NextOffer") { Offers = Offers.Skip(1); CurrentOffer = Offers.FirstOrDefault(); if (CurrentOffer is null) { await bot.EditMessageTextAsync(callback.Message.Chat.Id, callback.Message.MessageId, "Hot damn, you just ran out of searches..."); } else { SetOffer(callback.Message); } } else if (callback.Data == "MapDist") { if (!(CurrentOffer is null || CurrentOffer.Location is null)) { if (CurrentOffer.Location.GetData() is MapLocation.DistanceInfo info) { await bot.SendTextMessageAsync(callback.Message.Chat.Id, $"Distance: {info.Distance}\nDuration: {info.Duration}"); } } } else if (callback.Data == "SaveOffer" && !(CurrentOffer is null)) { var path = Path.Combine(Program.GetDirectory(), "saved.log"); File.AppendAllText(path, CurrentOffer.Url.ToString() + Environment.NewLine); } }
private async void BotClient_OnCallbackQuery(object sender, Telegram.Bot.Args.CallbackQueryEventArgs e) { var messageID = e.CallbackQuery.Message.MessageId; if (_callbackActions.ContainsKey(messageID)) { await _callbackActions[messageID](e.CallbackQuery); _callbackActions.Remove(messageID); } }
private async void Bot_OnCallbackQuery(object sender, Telegram.Bot.Args.CallbackQueryEventArgs e) { if (_tweetUsers.ContainsKey(e.CallbackQuery.From.Id)) { var user = _tweetUsers[e.CallbackQuery.From.Id]; await ProccessUserCommand(e.CallbackQuery.Data, user, messageId : e.CallbackQuery.Message.MessageId); } }
private static void Bot_OnCallbackQuery(object sender, Telegram.Bot.Args.CallbackQueryEventArgs e) { try { } catch (Exception ex) { StaticUtils.Logger.Error("{0} {1}", ex.Message, ex.StackTrace); } }
private void TelegramService_OnCallbackQuery(object sender, Telegram.Bot.Args.CallbackQueryEventArgs e) { try { } catch (Exception ex) { Console.WriteLine(ex.Message); } }
private void Bot_OnCallBack(object sender, Telegram.Bot.Args.CallbackQueryEventArgs e) { string operation = e.CallbackQuery.Data.ToString().Substring(0, 6); string value = e.CallbackQuery.Data.ToString().Substring(7); string text; Telegram.Bot.Types.InputFiles.InputOnlineFile photo; switch (operation) { case "info_s": var species = _context.Species.Where(s => s.Name == value).FirstOrDefault(); text = "Назва породи: " + species.Name + "\n" + "Середня тривалість життя: " + species.Lifetime.ToString() + "\n" + "Розмір: " + species.Size.ToString() + " \n" + "Шерсть: " + species.Wool + "\n" + "Країна: " + species.Country; try { var imageFileS = System.IO.File.Open("C:/Users/Asus/source/repos/Cats/Web_Lab1_Cats/wwwroot/img/" + species.Photo, FileMode.Open); photo = new Telegram.Bot.Types.InputFiles.InputOnlineFile(imageFileS); Bot.SendPhotoAsync(e.CallbackQuery.From.Id, photo, caption: text).GetAwaiter().GetResult(); imageFileS.Close(); } catch { Bot.SendTextMessageAsync(e.CallbackQuery.From.Id, text); } break; case "info_c": var cats = _context.Cats.Where(a => a.Name == value).FirstOrDefault(); string info = cats.Info; //.Substring(0, 200); text = "Ім'я котика: " + cats.Name + "\n" + "Вік: " + cats.Age.ToString() + "\n" + "Порода: " + cats.Species.Name + "\n" + "Опис: " + info; try { // Console.WriteLine("/home/vasmax10/Документи/WebLab1ver2/WebLab1ver2/wwwroot" + actors.Photo); var imageFileC = System.IO.File.Open("C:/Users/Asus/source/repos/Cats/Web_Lab1_Cats/wwwroot/img/" + cats.Photo, FileMode.Open); photo = new Telegram.Bot.Types.InputFiles.InputOnlineFile(imageFileC); Bot.SendPhotoAsync(e.CallbackQuery.From.Id, photo).GetAwaiter().GetResult(); Bot.SendTextMessageAsync(e.CallbackQuery.From.Id, text); imageFileC.Close(); } catch { Bot.SendTextMessageAsync(e.CallbackQuery.From.Id, text); } break; default: Bot.SendTextMessageAsync(e.CallbackQuery.From.Id, e.CallbackQuery.Data + "\n" + "У мене лапки. Я не розумію. Спробуй /info"); break; } }
private async void TelegramClient_OnCallbackQuery(object sender, Telegram.Bot.Args.CallbackQueryEventArgs e) { try { var ar = new MessageResult(e); ar.Client = this; OnAction(ar); } catch { } }
private static void Client_OnCallbackQuery(object sender, Telegram.Bot.Args.CallbackQueryEventArgs e) { //TODO: use reflection to build callback commands var args = e.CallbackQuery.Data.Split('|'); switch (args[0]) { case "events": Helpers.SwitchEvent(e.CallbackQuery); break; } }
// добавление отзыва для суперадмина static public void AddRating(Telegram.Bot.Args.CallbackQueryEventArgs e) { var args = e.CallbackQuery; long messageId = args.Message.MessageId + 2; string text = args.Data; var sql = @"INSERT INTO Owner (MessageId, Text)" + $"VALUES({messageId}, N'{text}')"; SqlCommand sqlCommand = new SqlCommand(sql, connection); sqlCommand.ExecuteNonQuery(); }
private static async void Bot_OnCallbackQuery(object sender, Telegram.Bot.Args.CallbackQueryEventArgs e) { // chaton 1488228 if (e.CallbackQuery.Data.Split(' ').First() == "chaton") { Pizdezh = true; person = long.Parse(e.CallbackQuery.Data.Split(' ').Last()); } else if (e.CallbackQuery.Data.Split(' ').First() == "chatoff") { _ = await bot.SendTextMessageAsync(long.Parse(e.CallbackQuery.Data.Split(' ').Last()), "Выход"); } }