Как сделать обработку нажатия кнопок в телеграм?

artsmm

Client
Регистрация
03.10.2018
Сообщения
1 114
Благодарностей
196
Баллы
63
Всем привет
Можете подсказать, как обработать нажатие кнопки?

пробую сделать так:

C#:
using System;
using System.Collections.Generic;
using System.Text.RegularExpressions;
using System.Linq;
using Telegram.BotAPI;
using Telegram.BotAPI.GettingUpdates;
using Telegram.BotAPI.AvailableMethods;
using Telegram.BotAPI.AvailableTypes;
using Telegram.BotAPI.InlineMode;
using Telegram.BotAPI.Payments;
using CalculationEfficiency.Engine;
using Telegram.BotAPI.UpdatingMessages;
 
namespace ReplyKeyboardMarkup_01
{
    class Program
    {
        static void Main()
        {
            DbHelper connect = new DbHelper();
 
            Console.WriteLine("Start!");
            var bot = new BotClient("5176495431:AAHeb2Nq21BaS-97ExG1AqSc-ShqnEPyJxg");
            var updates = bot.GetUpdates();
            bot.SetMyCommands(new BotCommand("reply", "ReplyMarkup"), new BotCommand("del", "Delete"));
            while (true)
            {
                if (updates.Length > 0)
                {
                    foreach (var update in updates)
                    {
                        switch (update.Type)
                        {
                            case UpdateType.Message:
                                if (update.Message.Text.Contains("/reply"))
                                {
                                    var ReplyMarkup = new InlineKeyboardMarkup
                                    {
                                        InlineKeyboard = new InlineKeyboardButton[][]{
                                            new InlineKeyboardButton[]{
                                                InlineKeyboardButton.SetCallbackData("Выкупы", "callback1"),
                                                InlineKeyboardButton.SetCallbackData("Выгрузка в БД", "callback2"),
                                                InlineKeyboardButton.SetCallbackData("Позиции", "callback3"),
                                                InlineKeyboardButton.SetCallbackData("Ключевое слово", "callback4")
                                                },
                                        },
                                    }; ;
                                    bot.SendMessage(update.Message.Chat.Id, "Клавиатура загружена", replyMarkup: ReplyMarkup);
                                }
                                if (update.Message.Text.Contains("/del"))
                                {
                                    bot.SendMessage(update.Message.Chat.Id, "remove reply keyboard", replyMarkup: new ReplyKeyboardRemove());
                                }
 
                                break;
                            case UpdateType.CallbackQuery:
                                var query = update.CallbackQuery;
 
                                bot.AnswerCallbackQuery(query.Id, "Hello");
                                bot.EditMessageText(new EditMessageTextArgs
                                {
                                    ChatId = query.Message.Chat.Id,
                                    MessageId = query.Message.MessageId,
                                    Text = $"Click!\n\n{query.Data}"
                                });
                                break;
                        }
                    }
                    updates = bot.GetUpdates(offset: updates.Max(u => u.UpdateId) + 1);
                }
                else
                {
                    updates = bot.GetUpdates();
                }
            }
        }
    }
}
на строчке, где hello написано у меня выбрасывается исключение: Bad Request: URL_INVALID, не понятно почему?

вопрос2 - можно ли при нажатии кнопки, отправлять запросу к базе данных? если да, то как?
 

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)