@victos5546

Как отключить обработку инлайн-кнопок в телеграм-боте?

Использую библиотеку pyTelegramBotAPI. Бот отсылает пользователю сообщения с инлайн-кнопкой снизу. Мне нужно, чтобы бот давал реакцию(при нажатии пользователем) только на те инлайн-кнопки, которые прикреплены к последнему сообщению бота.
  • Вопрос задан
  • 279 просмотров
Пригласить эксперта
Ответы на вопрос 2
@PapaStifflera
Родился, вырос...
Ну так удаляйте кнопки после нажатия. Методы все есть в BotAPI.
Ответ написан
@wintreist
Не работал с данной библиотекой, но могу предложить решение, если его возможно реализовать.
После того, как бот отправил последнее сообщение с его инлайн-кнопками, получите ID сообщения\ID инлайн кнопок из последнего сообщения или т.п.
И сохраните в переменную (если это ID инлайн-кнопок, то в массив)
При нажатии на инлайн-кнопку вашему боту должен идти запрос от кнопки, а значит и её Id, проверьте есть ли такой ID в списке последнего
сообщения
buttons_ID = [11,52,65]
button_pressed_ID = 11
if button_pressed_ID in buttons_ID:
    print("Кнопка нажата в последнем сообщении")
else:
    print('Кнопка нажата не из последнего сообщения. Игнорим')

Если при нажатии кнопки присылается ID сообщения, то проделываете ~тоже самое.
~тоже самое
last_message_ID = 114415
button_pressed_message_ID = 11
if button_pressed_message_ID == last_message_ID:
    print("Кнопка нажата в последнем сообщении")
else:
    print('Кнопка нажата не из последнего сообщения. Игнорим')
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы