@artem20152000

Как сделать обработку события в telegram keyboard на python?

В общем в python есть библиотека для работы с telegram api https://pypi.python.org/pypi/python-telegram-bot/1.5 (это она). Там есть функция для добавления кастомной клавиатуры. Мне нужно сделать, чтобы при нажатии на кнопку выполнялась функция, как это сделать?

P.S код добавления клавиатуры:
custom_keyboard = [[ self.do_function(command, message), 'aasd']]
                reply_markup = telegram.ReplyKeyboardMarkup(custom_keyboard)

                self.todo.sendMessage(chat_id = self.chat_id, text = 'Hello', reply_markup=reply_markup)
  • Вопрос задан
  • 28165 просмотров
Пригласить эксперта
Ответы на вопрос 2
Как сделать в вашей библиотеке, я не знаю, а в этой это делается так:

import telebot
from telebot import types

API_TOKEN = '<api_token>'

bot = telebot.TeleBot(API_TOKEN)
@bot.message_handler(commands=['help', 'start'])
def send_welcome(message):
    markup = types.ReplyKeyboardMarkup(one_time_keyboard=True)
    markup.add('1', '2') #Имена кнопок
    msg = bot.reply_to(message, 'Test text', reply_markup=markup)
    bot.register_next_step_handler(msg, process_step)

def process_step(message):
    chat_id = message.chat.id
    if message.text=='1':
        func1()
    else:
        func2()


Cуть в том, что кастомная клавиатура просто позволяет набирать слова или символы не по буквам, а сразу.
Ответ написан
@black443
Возможно ли организовать на подобие, как в картинке, к примеру кнопка называется
yes it is

, при нажатии на кнопку выполняется команда

\yes
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы