@Urchulka

Как сделать, чтобы бот отвечал на текстовые сообщения Inline кнопками?

Раннее я уже задавала данный вопрос, но ответ на него меня не совсем устроил.
В общем мне надо отправить боту, например, название города, а он чтобы в ответ присылал мне для каждого города свое меню с Inline кнопками и т.д.
Мне раннее скинули код:
import telebot
from telebot import types

bot = telebot.TeleBot('TOKKEN') #здесь должен быть токкен вашего бота

@bot.message_handler(commands=['start', 'menu'])
def Welcom(message):
 mesg = bot.send_message(message.chat.id, f"Привет, {message.from_user.first_name}. Введите Ваш город")
 bot.register_next_step_handler(mesg, city) #здесь бот ждёт пока пользователь введёт что либо в чат
 
def city(message):
  if message.text == 'Москва': #здесь мы указываем то что должен ввести пользователь
    bot.send_message(message.chat.id, 'Москва ваш город') #если пользователь ввёл нужное слово или фразу то бот отправит это сообщение
  else:
     bot.send_message(message.chat.id, 'Мне не удалось ничего найти') #если пользователь ввел что-то не то бот отправит это сообщение 
 
bot.polling(none_stop=True)

и сказали, что чтобы Inline кнопки в ответ добавить, их нужно прописать после "if message.text == 'Москва':" , я это делаю, выглядит это вот так:
def city(message):
  if message.text == 'Москва':
      markup = types.InlineKeyboardMarkup()
      button1 = types.InlineKeyboardButton('Кнопка 1', callback_data='1')
      button2 = types.InlineKeyboardButton('Кнопка 2', callback_data='2')
      markup.row(button1)
      markup.row(button2)
      bot.send_message(message.chat.id, 'Москва ваш город')
  else:
      bot.send_message(message.chat.id, 'Мне не удалось ничего найти')


но после запуска бота кнопки все равно не отображаются. Что мне делать и как вывести Inline кнопки?
  • Вопрос задан
  • 123 просмотра
Пригласить эксперта
Ответы на вопрос 1
nki
@nki
bezkart.ru готовая система лояльности
bot.send_message(message.chat.id, 'Москва ваш город')

И где тут передается клавиатура в параметрах?
replay_markup = markup
добавляете в параметры и все должно заработать.

P.S. все это можно нагуглить за пару минут. А дальше только чуток внимательности и сообразительности.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
07 мая 2024, в 13:28
20000 руб./за проект
07 мая 2024, в 13:07
7000 руб./за проект
07 мая 2024, в 12:59
500 руб./за проект