From 7c94fc800943aee4fd3e190d882feeb03914c025 Mon Sep 17 00:00:00 2001 From: wulan17 Date: Mon, 9 Jun 2025 19:57:41 +0700 Subject: [PATCH] pyrofork: Refactor Message.link Signed-off-by: wulan17 --- pyrogram/types/messages_and_media/message.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/pyrogram/types/messages_and_media/message.py b/pyrogram/types/messages_and_media/message.py index 4776410d..e91d915c 100644 --- a/pyrogram/types/messages_and_media/message.py +++ b/pyrogram/types/messages_and_media/message.py @@ -1314,9 +1314,14 @@ class Message(Object, Update): self.chat.type in (enums.ChatType.GROUP, enums.ChatType.SUPERGROUP, enums.ChatType.CHANNEL) and self.chat.username ): + if self.chat.type == enums.ChatType.SUPERGROUP and self.message_thread_id: + return f"https://t.me/{self.chat.username}/{self.message_thread_id}/{self.id}" return f"https://t.me/{self.chat.username}/{self.id}" - else: - return f"https://t.me/c/{utils.get_channel_id(self.chat.id)}/{self.id}" + if self.chat.type == enums.ChatType.PRIVATE: + return f"tg://openmessage?user_id={self.from_user.id}&message_id={self.id}" + if self.message_thread_id: + return f"https://t.me/c/{utils.get_channel_id(self.chat.id)}/{self.message_thread_id}/{self.id}" + return f"https://t.me/c/{utils.get_channel_id(self.chat.id)}/{self.id}" @property def content(self) -> str: