Improve edit_message message type hint

This also allows utils.get_message_id to get the ID of InputMessageID.
This commit is contained in:
Nick80835 2025-01-18 17:43:06 -05:00
parent 792adb78b3
commit 94471c149e
2 changed files with 5 additions and 2 deletions

View File

@ -1066,7 +1066,7 @@ class MessageMethods:
async def edit_message( async def edit_message(
self: 'TelegramClient', self: 'TelegramClient',
entity: 'typing.Union[hints.EntityLike, types.Message]', entity: 'typing.Union[hints.EntityLike, types.Message]',
message: 'hints.MessageLike' = None, message: 'typing.Union[int, types.Message, types.InputMessageID, str]' = None,
text: str = None, text: str = None,
*, *,
parse_mode: str = (), parse_mode: str = (),
@ -1096,7 +1096,7 @@ class MessageMethods:
which is the only way to edit messages that were sent which is the only way to edit messages that were sent
after the user selects an inline query result. after the user selects an inline query result.
message (`int` | `Message <telethon.tl.custom.message.Message>` | `str`): message (`int` | `Message <telethon.tl.custom.message.Message>` | :tl:`InputMessageID` | `str`):
The ID of the message (or `Message The ID of the message (or `Message
<telethon.tl.custom.message.Message>` itself) to be edited. <telethon.tl.custom.message.Message>` itself) to be edited.
If the `entity` was a `Message If the `entity` was a `Message

View File

@ -600,6 +600,9 @@ def get_message_id(message):
if isinstance(message, int): if isinstance(message, int):
return message return message
if isinstance(message, types.InputMessageID):
return message.id
try: try:
if message.SUBCLASS_OF_ID == 0x790009e3: if message.SUBCLASS_OF_ID == 0x790009e3:
# hex(crc32(b'Message')) = 0x790009e3 # hex(crc32(b'Message')) = 0x790009e3