@Cenzor

Как получить текст собственного сообщения из telegram, которое отправлялось ранее ботом?

Здравствуйте.
У каждого сообщения, отправляемого ботом есть свой message_id.
Например, бот отправил подряд 4 сообщения:
aaa (message_id = 1)
bbb (message_id = 2)
ccc (message_id = 3)
ddd (message_id = 4)

Как мне в переменную получить текст сообщения с номером message_id = 2 - "bbb"?
Спасибо.

pyTelegramBot
  • Вопрос задан
  • 2376 просмотров
Решения вопроса 1
К сожалению в Bot API нет метода получения истории сообщений, обновления обрабатываются "здесь и сейчас". Но выйти из положения можно, как минимум, двумя способами:

1. Использовать telegram-cli и парсить вывод.
2. Использовать Telegram API, например, для простоты работы, обвязку Telethon:
https://lonamiwebs.github.io/Telethon/
from telethon import TelegramClient

api_id = 000000     # integer
api_hash = ''       # string
phone_number = ''   # strings

if __name__ == '__main__':
    client = TelegramClient('history_lurker', api_id=api_id, api_hash=api_hash)
    client.connect()
    
    if not client.is_user_authorized():
        client.send_code_request(phone_number)
        client.sign_in(phone_number, input('Enter code: '))
    
    chat = InputPeerChat(chat_id)

    count, messages, senders = client.get_message_history('Stickers', limit=5)
    for message in messages:
        print(message.id, message.message)
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы