@alextimson

Как перейти на команду через кнопку в боте Telegram?

Привет! Учусь делать ботов телеграм, но появился один вопрос.
Я хочу сделать так, чтобы при нажатии по кнопке использовалась команда ниже ('url'), но при этом текст кнопки был какой-то особый. Например:
Кнопка 'Сайт', а использовалась команда '/url'

@bot.message_handler(commands=['start'])
def start_message(message):
    keyboard = telebot.types.ReplyKeyboardMarkup(True)
    keyboard.row('/test', '/test2')
    bot.send_message(message.chat.id, 'Привет!', reply_markup=keyboard)

@bot.message_handler(commands = ['url'])
def url(message):
    markup = types.InlineKeyboardMarkup()
    btn_my_site= types.InlineKeyboardButton(text='Наш сайт', url='https://habrahabr.ru')
    markup.add(btn_my_site)
    bot.send_message(message.chat.id, "Нажми на кнопку и перейди на наш сайт.", reply_markup = markup)
  • Вопрос задан
  • 465 просмотров
Пригласить эксперта
Ответы на вопрос 1
SoreMix
@SoreMix Куратор тега Python
yellow
Кнопка 'Сайт', а использовалась команда '/url'

/url - это текст, который пожизненно останется текстом.

Просто сделать обычную кнопку с текстом Сайт и все

@bot.message_handler(commands=['start'])
def send_start(message):
    markup = types.ReplyKeyboardMarkup(True)
    btn = types.KeyboardButton('Сайт')
    markup.add(btn)

    bot.send_message(message.chat.id, 'Сообщение', reply_markup=markup)

@bot.message_handler(func = lambda m: m.text and m.text == 'Сайт')
def send_site(message):
    markup = types.InlineKeyboardMarkup()
    btn_my_site= types.InlineKeyboardButton(text='Наш сайт', url='https://habrahabr.ru')
    markup.add(btn_my_site)
    bot.send_message(message.chat.id, "Нажми на кнопку и перейди на наш сайт.", reply_markup = markup)
Ответ написан
Ваш ответ на вопрос

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

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