Exemple #1
0
        public override async Task Execute(Message message, TelegramBotClient botClient, Client client)
        {
            var chatId = message.Chat.Id;
            // await botClient.SendTextMessageAsync(chatId, "", parseMode: Telegram.Bot.Types.Enums.ParseMode.Markdown);
            List <List <KeyboardButton> > buttonsList = new List <List <KeyboardButton> >();
            List <KeyboardButton>         buttons     = new List <KeyboardButton>();

            // int i = 0;
            foreach (Answer an in Quest.Answers)
            {
                buttons = new List <KeyboardButton>();
                var button = new Telegram.Bot.Types.ReplyMarkups.KeyboardButton();
                //button.RequestContact = true;
                button.Text = an.RightAnswer;
                buttons.Add(button);
                buttonsList.Add(buttons);
            }

            var keyboard = new Telegram.Bot.Types.ReplyMarkups.ReplyKeyboardMarkup(buttonsList);

            keyboard.ResizeKeyboard  = true;
            keyboard.OneTimeKeyboard = false;

            await botClient.SendTextMessageAsync(message.Chat.Id, Quest.Message, replyMarkup : keyboard, parseMode : Telegram.Bot.Types.Enums.ParseMode.Html);

            //    await botClient.SendTextMessageAsync(chatId, "Спс", parseMode: Telegram.Bot.Types.Enums.ParseMode.Markdown);
        }
Exemple #2
0
        private ReplyKeyboardMarkup createKeyboardbd(int buttonsCount)
        {
            int cols    = 4;                       // скільки кнопок в ряді
            int lastRow = buttonsCount % cols;     //скільки кнопок в останньому рядку
            int rows    = buttonsCount / cols + 1; // скільки рядів
            int num     = 1;                       // число текст кнопки

            Telegram.Bot.Types.ReplyMarkups.KeyboardButton[][] buttons = new Telegram.Bot.Types.ReplyMarkups.KeyboardButton[rows][];
            for (int i = 0; i < rows - 1; i++)
            {
                var btns = new Telegram.Bot.Types.ReplyMarkups.KeyboardButton[cols];
                for (int j = 0; j < cols; j++)
                {
                    btns[j] = new Telegram.Bot.Types.ReplyMarkups.KeyboardButton {
                        Text = (num++).ToString()
                    };
                }
                buttons[i] = btns;
            }
            var btn = new Telegram.Bot.Types.ReplyMarkups.KeyboardButton[lastRow];

            for (int i = 0; i < lastRow; i++)
            {
                btn[i] = new Telegram.Bot.Types.ReplyMarkups.KeyboardButton {
                    Text = (num++).ToString()
                };
            }
            buttons[rows - 1] = btn;
            var keybrd = new ReplyKeyboardMarkup(buttons);

            keybrd.OneTimeKeyboard = true;
            keybrd.ResizeKeyboard  = true;

            return(keybrd);
        }
Exemple #3
0
        private ReplyKeyboardMarkup createKeyboard()
        {
            int    cols = 1; // скільки кнопок в ряді
            int    rows = 3;
            string command;  // число текст кнопки

            Telegram.Bot.Types.ReplyMarkups.KeyboardButton[][] buttons = new Telegram.Bot.Types.ReplyMarkups.KeyboardButton[rows][];

            for (int i = 0; i < rows - 1; i++)
            {
                var btns = new Telegram.Bot.Types.ReplyMarkups.KeyboardButton[cols];


                btns[1] = new Telegram.Bot.Types.ReplyMarkups.KeyboardButton {
                    Text = ("/hello").ToString()
                };

                buttons[i] = btns;
            }
            var keybrd = new ReplyKeyboardMarkup(buttons);

            keybrd.OneTimeKeyboard = true;
            keybrd.ResizeKeyboard  = true;

            return(keybrd);
        }
 /// <summary>
 /// Initializes a new instance of <see cref="ReplyKeyboardMarkup"/> with one button
 /// </summary>
 /// <param name="button">Button on keyboard</param>
 public ReplyKeyboardMarkup(KeyboardButton button)
     : this(new[] { button })
 {
 }