Есть ли способ получить полное выражение с помощью ReplyKeyboard в python-telepot для бота telegram? - PullRequest
0 голосов
/ 02 июля 2019

Я работаю с ботом-телеграммой с python-telepot и хочу создать клавиатуру с ReplyKeyboardMarkup, эта клавиатура имеет функцию ввода математического выражения, которое я хочу вывести (применить функцию производных). Я покажу вамкод клавиатуры:

if data == 'resol_der':
        bot.answerCallbackQuery(query_id, text='Use the keyboard to insert')
        markup = ReplyKeyboardMarkup(
        keyboard=[
            [KeyboardButton(text='0'),KeyboardButton(text='1'),KeyboardButton(text='2'),KeyboardButton(text='3'),KeyboardButton(text='4'),
            KeyboardButton(text='5'),KeyboardButton(text='6'),KeyboardButton(text='7'),KeyboardButton(text='8'),KeyboardButton(text='9')],
            [KeyboardButton(text='+'),KeyboardButton(text='-'),KeyboardButton(text='*'),KeyboardButton(text='/'),KeyboardButton(text='='),
            KeyboardButton(text='('),KeyboardButton(text=')'),KeyboardButton(text=','),KeyboardButton(text='x**'),KeyboardButton(text='√')],
            [KeyboardButton(text='send'),KeyboardButton(text='/start')],
            ]
            )           
        bot.sendChatAction(from_id, 'typing')
        bot.sendMessage(from_id, 'OK! Give me the expression', reply_markup=markup)

выглядит так Сделайте ReplyKeyboardMarkup

Это работает хорошо, но я хочу решить одну сложность: мне нужна клавиатура, чтобы ждатьполное выражение, потому что когда я нажимаю на каждую кнопку созданной клавиатуры, персонаж переходит в чат ... и мне нужно загрузить все выражение в строку

Как мне сделать так, чтобы клавиатура позволялатот, кто взаимодействует с ботом, чтобы использовать кнопки и структурировать полное выражение, которое отправляется в чат, чтобы его можно было обработать с помощью другой функции?

Заранее благодарим вас за любые рекомендации, которые вам, возможно, придется комментировать...

1 Ответ

0 голосов
/ 08 июля 2019

Несмотря на то, что она называется «клавиатурой», эти кнопки являются просто шаблонами для сообщений.

Если вы действительно хотите создать математическую клавиатуру, используйте встроенную клавиатуру с on-the-Редактирование сообщений.Вы должны будете получать нажатия кнопок обратного вызова и соответственно обновлять сообщение вашего бота.Я не уверен, что это стоит делать, но все зависит от вас.

...