From eb9954a5cf28acd0c40dc439db00a8a428955633 Mon Sep 17 00:00:00 2001 From: uNickz <52837683+uNickz@users.noreply.github.com> Date: Mon, 7 Oct 2024 11:45:46 +0200 Subject: [PATCH] pyrofork: Add file_name param on InputMedia * Add file_name param on InputMedia Add file_name param on: - InputMediaVideo - InputMediaAudio - InputMediaDocument --------- Co-authored-by: KurimuzonAkuma <31959970+KurimuzonAkuma@users.noreply.github.com> Signed-off-by: wulan17 --- pyrogram/methods/messages/send_media_group.py | 12 ++++++------ pyrogram/types/input_media/input_media_audio.py | 8 +++++++- pyrogram/types/input_media/input_media_document.py | 8 +++++++- pyrogram/types/input_media/input_media_video.py | 6 ++++++ 4 files changed, 26 insertions(+), 8 deletions(-) diff --git a/pyrogram/methods/messages/send_media_group.py b/pyrogram/methods/messages/send_media_group.py index ca66cab6..a6a14021 100644 --- a/pyrogram/methods/messages/send_media_group.py +++ b/pyrogram/methods/messages/send_media_group.py @@ -271,7 +271,7 @@ class SendMediaGroup: w=i.width, h=i.height ), - raw.types.DocumentAttributeFilename(file_name=os.path.basename(i.media)), + raw.types.DocumentAttributeFilename(file_name=i.file_name or os.path.basename(i.media)), ] if is_animation: attributes.append(raw.types.DocumentAttributeAnimated()) @@ -339,7 +339,7 @@ class SendMediaGroup: w=i.width, h=i.height ), - raw.types.DocumentAttributeFilename(file_name=getattr(i.media, "name", "video.mp4")), + raw.types.DocumentAttributeFilename(file_name=i.file_name or getattr(i.media, "name", "video.mp4")), ], ), ), @@ -371,7 +371,7 @@ class SendMediaGroup: performer=i.performer, title=i.title ), - raw.types.DocumentAttributeFilename(file_name=os.path.basename(i.media)), + raw.types.DocumentAttributeFilename(file_name=i.file_name or os.path.basename(i.media)), ], ), ), @@ -419,7 +419,7 @@ class SendMediaGroup: performer=i.performer, title=i.title ), - raw.types.DocumentAttributeFilename(file_name=getattr(i.media, "name", "audio.mp3")), + raw.types.DocumentAttributeFilename(file_name=i.file_name or getattr(i.media, "name", "audio.mp3")), ], ), ), @@ -445,7 +445,7 @@ class SendMediaGroup: file=file, thumb=thumb, attributes=[ - raw.types.DocumentAttributeFilename(file_name=os.path.basename(i.media)), + raw.types.DocumentAttributeFilename(file_name=i.file_name or os.path.basename(i.media)), ], ), ), @@ -490,7 +490,7 @@ class SendMediaGroup: file=file, thumb=thumb, attributes=[ - raw.types.DocumentAttributeFilename(file_name=getattr(i.media, "name", "file.zip")), + raw.types.DocumentAttributeFilename(file_name=i.file_name or getattr(i.media, "name", "file.zip")), ], ), ), diff --git a/pyrogram/types/input_media/input_media_audio.py b/pyrogram/types/input_media/input_media_audio.py index ffd5d70d..24feac1f 100644 --- a/pyrogram/types/input_media/input_media_audio.py +++ b/pyrogram/types/input_media/input_media_audio.py @@ -62,6 +62,10 @@ class InputMediaAudio(InputMedia): title (``str``, *optional*): Title of the audio + + file_name (``str``, *optional*): + File name of the audio sent. + Defaults to file's path basename. """ def __init__( @@ -73,7 +77,8 @@ class InputMediaAudio(InputMedia): caption_entities: List[MessageEntity] = None, duration: int = 0, performer: str = "", - title: str = "" + title: str = "", + file_name: str = None ): super().__init__(media, caption, parse_mode, caption_entities) @@ -81,3 +86,4 @@ class InputMediaAudio(InputMedia): self.duration = duration self.performer = performer self.title = title + self.file_name = file_name diff --git a/pyrogram/types/input_media/input_media_document.py b/pyrogram/types/input_media/input_media_document.py index 766d17f2..feca4953 100644 --- a/pyrogram/types/input_media/input_media_document.py +++ b/pyrogram/types/input_media/input_media_document.py @@ -51,6 +51,10 @@ class InputMediaDocument(InputMedia): caption_entities (List of :obj:`~pyrogram.types.MessageEntity`): List of special entities that appear in the caption, which can be specified instead of *parse_mode*. + + file_name (``str``, *optional*): + File name of the document sent. + Defaults to file's path basename. """ def __init__( @@ -59,8 +63,10 @@ class InputMediaDocument(InputMedia): thumb: str = None, caption: str = "", parse_mode: Optional["enums.ParseMode"] = None, - caption_entities: List[MessageEntity] = None + caption_entities: List[MessageEntity] = None, + file_name: str = None ): super().__init__(media, caption, parse_mode, caption_entities) self.thumb = thumb + self.file_name = file_name diff --git a/pyrogram/types/input_media/input_media_video.py b/pyrogram/types/input_media/input_media_video.py index 0b4c6aa8..bc7a716b 100644 --- a/pyrogram/types/input_media/input_media_video.py +++ b/pyrogram/types/input_media/input_media_video.py @@ -62,6 +62,10 @@ class InputMediaVideo(InputMedia): duration (``int``, *optional*): Video duration. + file_name (``str``, *optional*): + File name of the video sent. + Defaults to file's path basename. + supports_streaming (``bool``, *optional*): Pass True, if the uploaded video is suitable for streaming. @@ -79,6 +83,7 @@ class InputMediaVideo(InputMedia): width: int = 0, height: int = 0, duration: int = 0, + file_name: str = None, supports_streaming: bool = True, has_spoiler: bool = None, ): @@ -88,5 +93,6 @@ class InputMediaVideo(InputMedia): self.width = width self.height = height self.duration = duration + self.file_name = file_name self.supports_streaming = supports_streaming self.has_spoiler = has_spoiler