Как сделать так, чтобы исчезали фотографии в боте Телеграм, когда у меня есть Inline кнопки?
Как сделать так, чтобы исчезали фотографии в боте Телеграм?
Я создал простенького ТГ-бота для определения ID и Имени пользователя с Inline кнопками. Для красоты захотел добавить фотографию, что, естественно, получилось bot.send_photo(message.chat.id, file)
, и да выше у меня есть обработчик и сам старт.
Суть вопроса такова: Как сделать так, чтобы фотография тоже исчезала(У МЕНЯ ЕСТЬ INLINE КНОПКИ)? p.s. Сами сообщения у меня удаляются.
А, ну и сам код:
import telebot # Импортируем нужные библиотеки.
from telebot import types
bot = telebot.TeleBot('TOKEN HERE, BUT NOT FOR U') # Подключаем бота.
@bot.message_handler(commands = ['start']) # Делаем кнопку старт.
def handle_start(message): # Добавляем обработчика сообщения.
file = open('hi.jpg', 'rb')
keyboard = types.InlineKeyboardMarkup(row_width = 2) # Создаем клавиатуру на выбор ответа после сообщения "Привет! Хочешь узнать кое-что о себе??".
but_yes = types.InlineKeyboardButton('ДА!', callback_data = 'yes1')
but_no = types.InlineKeyboardButton('НЕТ!', callback_data = 'no1')
keyboard.add(but_yes, but_no)
bot.send_photo(message.chat.id, file)
bot.send_message(message.chat.id, 'Привет! Хочешь узнать кое-что о себе??', reply_markup = keyboard) # Посылаем сообщение.
@bot.callback_query_handler(func = lambda call: True) # Делаем еще одного обработчика, только на ответ на сообщения.
def handle_choice1(call):
if call.message:
if call.data == 'yes1':
keyboard1 = types.InlineKeyboardMarkup(row_width = 2) # Клавиатура на второе сообщение с ответом "ДА".
but_id = types.InlineKeyboardButton('УЗНАТЬ ID', callback_data = 'id')
but_nick = types.InlineKeyboardButton('УЗНАТЬ ИМЯ', callback_data = 'name')
but_back = types.InlineKeyboardButton('ВЕРНУТЬСЯ', callback_data = 'back')
keyboard1.add(but_id, but_nick, but_back)
bot.edit_message_text(chat_id = call.message.chat.id, message_id = call.message.id, text = 'Выбери, что ты хотел бы узнать:?', reply_markup = keyboard1)
elif call.data == 'no1':
keyboard2 = types.InlineKeyboardMarkup(row_width = 2) # Клавиатура на второе сообщение с ответом "НЕТ".
but_stay = types.InlineKeyboardButton('ОСТАТЬСЯ', callback_data = 'stay')
but_leave = types.InlineKeyboardButton('ВЫЙТИ', callback_data = 'leave')
keyboard2.add(but_stay, but_leave)
bot.edit_message_text(chat_id = call.message.chat.id, message_id = call.message.id, text = 'Ты точно хочешь уйти??', reply_markup = keyboard2)
elif call.data == 'id':
keyboard6 = types.InlineKeyboardMarkup(row_width = 2) # Клавиатура на сообщение с ответом на получение ID и кнопкой "ВЕРНУТЬСЯ".
b11 = types.InlineKeyboardButton('ВЕРНУТЬСЯ', callback_data = 'back')
keyboard6.add(b11)
bot.edit_message_text(chat_id = call.message.chat.id, message_id = call.message.id, text = f'Хорошо, Твой ID: {call.from_user.id}', reply_markup = keyboard6)
elif call.data == 'name':
keyboard7 = types.InlineKeyboardMarkup(row_width = 2) # Клавиатура на сообщение с ответом на получение имени и кнопкой "ВЕРНУТЬСЯ".
b110 = types.InlineKeyboardButton('ВЕРНУТЬСЯ', callback_data = 'back')
keyboard7.add(b110)
bot.edit_message_text(chat_id = call.message.chat.id, message_id = call.message.id, text = f'Хорошо, тебя зовут: {call.from_user.first_name} {call.from_user.last_name}', reply_markup = keyboard7)
elif call.data == 'back':
keyboard5 = types.InlineKeyboardMarkup(row_width = 2) # Клавиатура на кнопку "ВЕРНУТЬСЯ", если есть необходимость.
bb1 = types.InlineKeyboardButton('ДА!', callback_data = 'yes1')
bb2 = types.InlineKeyboardButton('НЕТ!', callback_data = 'no1')
keyboard5.add(bb1, bb2)
bot.edit_message_text(chat_id = call.message.chat.id, message_id = call.message.id, text = 'Хочешь узнать кое-что о себе??', reply_markup = keyboard5)
elif call.data == 'stay':
keyboard3 = types.InlineKeyboardMarkup(row_width = 2) # Клавиатура на кнопку "ОСТАТЬСЯ".
but_id1 = types.InlineKeyboardButton('ДА!', callback_data = 'yes1')
but_nick1 = types.InlineKeyboardButton('НЕТ!', callback_data = 'no1')
keyboard3.add(but_id1, but_nick1)
bot.edit_message_text(chat_id = call.message.chat.id, message_id = call.message.id, text = 'Ты вернулся в главное меню.\nХочешь узнать кое-что о себе??', reply_markup = keyboard3)
elif call.data == 'leave':
keyboard4 = types.InlineKeyboardMarkup(row_width = 2) # Клавиатура на кнопку "ВЫЙТИ".
bbb1 = types.InlineKeyboardButton('ДА!', callback_data = 'yes1')
b2 = types.InlineKeyboardButton('НЕТ!', callback_data = 'no1')
keyboard4.add(bbb1, b2)
bot.edit_message_text(chat_id = call.message.chat.id, message_id = call.message.id, text = 'Хорошо, удачного дня. Если хочешь - возвращайся. Ты хочешь продолжить?', reply_markup = keyboard4)
bot.polling(non_stop = True)