@Zailox

Как узнать message id?

Допустим, есть канал, в этом канале есть комментарии, в комментариях есть сообщения, как получить его message id, chat id?
  • Вопрос задан
  • 137 просмотров
Пригласить эксперта
Ответы на вопрос 2
EPIDEMIASH
@EPIDEMIASH
Человек швейцарский нож
Комментарии на посты канала фактически создаются в отдельной группе, связанной с этим каналом. Там и получайте.

async def main():
    # получите канал
    channel = await client.get_entity(channel_username)
    
    # получите привязанную группу
    linked_chat = await client.get_entity(channel.linked_chat_id)
    
    # перебирите сообщения
    async for message in client.iter_messages(linked_chat):
        print(f"Message ID: {message.id}, Text: {message.text}")
Ответ написан
Комментировать
@StockholmSyndrome
если в канале есть комментарии, значит к нему прикреплён чат, идентификатор которого можно получить в объекте ChatFullInfo в поле linked_chat_id, например через getChat

когда выкладывается пост в канале, сообщение перенаправляется в прикреплённый чат, при этом идентификаторы поста в канале и этого перенаправленного сообщения различаются, так как это разные чаты

если сообщение пересылает перенаправленное сообщение, то оно отображается как комментарий
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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