Я использую python-telegram-bot (python-telegram-bot.org) для связи с Telegram из Python3
Я хочу обновить последний отправленный мной ответ. В настоящее время приведенный ниже код отправляет сообщение, а затем отправляет другое сообщение через 5 секунд.
def echo(bot, update):
update.message.reply_text("Sorry, you're on your own, kiddo.")
time.sleep(5)
update.message.reply_text("Seriously, you're on your own, kiddo.")
Вместо этого я бы хотел обновить последнее сообщение.
Я пытался
bot.editMessageText("Seriously, you're on your own, kiddo.",
chat_id=update.message.chat_id,
message_id=update.message.message_id)
который работает в примерах для обновления, заменяет встроенную клавиатуру сообщением, но это дает сбой (и не обновляет последнее сообщение, которое я отправил как бот).






Я считаю, что порядок ваших аргументов в edit_message_text() неправильный. Посмотрите документы для этого:
def echo(bot, update):
# Any send_* methods return the sent message object
msg = update.message.reply_text("Sorry, you're on your own, kiddo.")
time.sleep(5)
# you can explicitly enter the details
bot.edit_message_text(chat_id=update.message.chat_id,
message_id=msg.message_id,
text = "Seriously, you're on your own, kiddo.")
# or use the shortcut (which pre-enters the chat_id and message_id behind)
msg.edit_text("Seriously, you're on your own, kiddo.")
Документы для ярлыка message.edit_text() - здесь.
у тебя получилось? @ 576i
Спасибо. Я попробую это и прокомментирую успех.