diff --git a/compiler/api/source/pyrogram.tl b/compiler/api/source/pyrogram.tl index e8da6789..dd5c290a 100644 --- a/compiler/api/source/pyrogram.tl +++ b/compiler/api/source/pyrogram.tl @@ -8,7 +8,7 @@ pyrogram.chat#b0700002 flags:# id:int type:string title:flags.0?string username: pyrogram.message#b0700003 flags:# message_id:int from_user:flags.0?User date:int chat:Chat forward_from:flags.1?User forward_from_chat:flags.2?Chat forward_from_message_id:flags.3?int forward_signature:flags.4?string forward_date:flags.5?int reply_to_message:flags.6?Message edit_date:flags.7?int media_group_id:flags.8?string author_signature:flags.9?string text:flags.10?string entities:flags.11?Vector caption_entities:flags.12?Vector audio:flags.13?Audio document:flags.14?Document game:flags.15?Game photo:flags.16?Vector sticker:flags.17?Sticker video:flags.18?Video voice:flags.19?Voice video_note:flags.20?VideoNote caption:flags.21?string contact:flags.22?Contact location:flags.23?Location venue:flags.24?Venue new_chat_members:flags.25?Vector left_chat_member:flags.26?User new_chat_title:flags.27?string new_chat_photo:flags.28?Vector delete_chat_photo:flags.29?true group_chat_created:flags.30?true supergroup_chat_created:flags.31?true channel_chat_created:flags.32?true migrate_to_chat_id:flags.33?int migrate_from_chat_id:flags.34?int pinned_message:flags.35?Message invoice:flags.36?Invoice successful_payment:flags.37?SuccessfulPayment connected_website:flags.38?string views:flags.39?int via_bot:flags.40?User = pyrogram.Message; pyrogram.messageEntity#b0700004 flags:# type:string offset:int length:int url:flags.0?string user:flags.1?User = pyrogram.MessageEntity; pyrogram.photoSize#b0700005 flags:# file_id:string width:int height:int file_size:flags.0?int date:flags.1?int = pyrogram.PhotoSize; -pyrogram.audio#b0700006 flags:# file_id:string duration:int performer:flags.0?string title:flags.1?string mime_type:flags.2?string file_size:flags.3?int = pyrogram.Audio; +pyrogram.audio#b0700006 flags:# file_id:string thumb:flags.0?PhotoSize file_name:flags.1?string mime_type:flags.2?string file_size:flags.3?int date:flags.4?int duration:int performer:flags.5?string title:flags.6?string = pyrogram.Audio; pyrogram.document#b0700007 flags:# file_id:string thumb:flags.0?PhotoSize file_name:flags.1?string mime_type:flags.2?string file_size:flags.3?int = pyrogram.Document; pyrogram.video#b0700008 flags:# file_id:string width:int height:int duration:int thumb:flags.0?PhotoSize mime_type:flags.1?string file_size:flags.2?int = pyrogram.Video; pyrogram.voice#b0700009 flags:# file_id:string duration:int mime_type:flags.0?string file_size:flags.1?int = pyrogram.Voice; diff --git a/pyrogram/client/message_parser.py b/pyrogram/client/message_parser.py index 204d3b77..82031d6b 100644 --- a/pyrogram/client/message_parser.py +++ b/pyrogram/client/message_parser.py @@ -285,6 +285,12 @@ def parse_message( if isinstance(doc, types.Document): attributes = {type(i): i for i in doc.attributes} + file_name = getattr( + attributes.get( + types.DocumentAttributeFilename, None + ), "file_name", None + ) + if types.DocumentAttributeAudio in attributes: audio_attributes = attributes[types.DocumentAttributeAudio] @@ -318,7 +324,10 @@ def parse_message( performer=audio_attributes.performer, title=audio_attributes.title, mime_type=doc.mime_type, - file_size=doc.size + file_size=doc.size, + thumb=parse_thumb(doc.thumb), + file_name=file_name, + date=doc.date ) elif types.DocumentAttributeAnimated in attributes: document = pyrogram.Document( @@ -332,11 +341,7 @@ def parse_message( ) ), thumb=parse_thumb(doc.thumb), - file_name=getattr( - attributes.get( - types.DocumentAttributeFilename, None - ), "file_name", None - ), + file_name=file_name, mime_type=doc.mime_type, file_size=doc.size ) @@ -408,11 +413,7 @@ def parse_message( ) ), thumb=parse_thumb(doc.thumb), - file_name=getattr( - attributes.get( - types.DocumentAttributeFilename, None - ), "file_name", None - ), + file_name=file_name, mime_type=doc.mime_type, file_size=doc.size )