как удалить сообщение отправленное ботом в процессе использования функции register_next_step_handler
Как удалить сообщение "Введите Ваше имя:", которое было отправлено ботом
bot.send_message(message.chat.id, "Введите Ваше имя: ")
bot.register_next_step_handler(message, next_func)
bot.delete_message(message.chat.id, message.message_id)
- не работает(
Ответы (2 шт):
Автор решения: Andrey Dolgopolov
→ Ссылка
Не знаю на сколько правильно с точки зрения профессионалов, но вот рабочий код. Вы на следующем шаге (после вопроса про имя) удаляете сообщение с id-1
@bot.message_handler(commands=["start"])
def first(message):
bot.send_message(message.chat.id, "Введите ваше имя: ")
bot.register_next_step_handler(message, second)
def second(message):
bot.delete_message(message.chat.id, message.message_id-1)
bot.send_message(message.chat.id, "Следующий вопрос: ")
Автор решения: Kiril Naumchenko
→ Ссылка
Так же можно присвоить отправляемому сообщению идентификатор, и сообщение в последствии можно будет удалить с любого места:
message_id_to_del = bot.send_message(message.chat.id, "Введите имя: ").message_id
...
bot.delete_message(message.chat.id, message_id_to_del)