mirror of
https://github.com/Mayuri-Chan/pyrofork.git
synced 2025-12-29 12:04:51 +00:00
Merge pull request #110 from peerids/main
fix(pyrogram.utils.get_reply_to): function parameters
This commit is contained in:
commit
03c2f5ff8c
4 changed files with 58 additions and 25 deletions
|
|
@ -102,6 +102,17 @@ class SendInlineBotResult:
|
|||
"""
|
||||
quote_text, quote_entities = (await utils.parse_text_entities(self, quote_text, parse_mode, quote_entities)).values()
|
||||
|
||||
reply_to = await utils.get_reply_to(
|
||||
client=self,
|
||||
reply_to_message_id=reply_to_message_id,
|
||||
reply_to_chat_id=reply_to_chat_id,
|
||||
reply_to_story_id=reply_to_story_id,
|
||||
message_thread_id=message_thread_id,
|
||||
quote_text=quote_text,
|
||||
quote_entities=quote_entities,
|
||||
quote_offset=quote_offset,
|
||||
parse_mode=parse_mode,
|
||||
)
|
||||
r = await self.invoke(
|
||||
raw.functions.messages.SendInlineBotResult(
|
||||
peer=await self.resolve_peer(chat_id),
|
||||
|
|
@ -109,15 +120,7 @@ class SendInlineBotResult:
|
|||
id=result_id,
|
||||
random_id=self.rnd_id(),
|
||||
silent=disable_notification or None,
|
||||
reply_to=utils.get_reply_to(
|
||||
reply_to_message_id=reply_to_message_id,
|
||||
reply_to_peer=await self.resolve_peer(reply_to_chat_id) if reply_to_chat_id else None,
|
||||
reply_to_story_id=reply_to_story_id,
|
||||
message_thread_id=message_thread_id,
|
||||
quote_text=quote_text,
|
||||
quote_entities=quote_entities,
|
||||
quote_offset=quote_offset,
|
||||
),
|
||||
reply_to=reply_to,
|
||||
schedule_date=utils.datetime_to_timestamp(schedule_date),
|
||||
)
|
||||
)
|
||||
|
|
|
|||
|
|
@ -34,6 +34,7 @@ class CopyMediaGroup:
|
|||
has_spoilers: Union[List[bool], bool] = None,
|
||||
disable_notification: bool = None,
|
||||
message_thread_id: int = None,
|
||||
send_as: Union[int, str] = None,
|
||||
reply_to_message_id: int = None,
|
||||
reply_to_chat_id: Union[int, str] = None,
|
||||
reply_to_story_id: int = None,
|
||||
|
|
@ -44,6 +45,8 @@ class CopyMediaGroup:
|
|||
schedule_date: datetime = None,
|
||||
invert_media: bool = None,
|
||||
protect_content: bool = None,
|
||||
allow_paid_broadcast: bool = None,
|
||||
message_effect_id: int = None,
|
||||
) -> List["types.Message"]:
|
||||
"""Copy a media group by providing one of the message ids.
|
||||
|
||||
|
|
@ -73,6 +76,9 @@ class CopyMediaGroup:
|
|||
If a ``string`` is passed, it becomes a caption only for the first media.
|
||||
If a list of ``string`` passed, each element becomes caption for each media element.
|
||||
You can pass ``None`` in list to keep the original caption (see examples below).
|
||||
|
||||
has_spoilers (``bool``, *optional*):
|
||||
Pass True if the photo needs to be covered with a spoiler animation.
|
||||
|
||||
disable_notification (``bool``, *optional*):
|
||||
Sends the message silently.
|
||||
|
|
@ -82,6 +88,10 @@ class CopyMediaGroup:
|
|||
Unique identifier for the target message thread (topic) of the forum.
|
||||
For supergroups only.
|
||||
|
||||
send_as (``int`` | ``str``):
|
||||
Unique identifier (int) or username (str) of the chat or channel to send the message as.
|
||||
You can use this to send the message on behalf of a chat or channel where you have appropriate permissions.
|
||||
|
||||
reply_to_message_id (``int``, *optional*):
|
||||
If the message is a reply, ID of the original message.
|
||||
|
||||
|
|
@ -113,6 +123,12 @@ class CopyMediaGroup:
|
|||
protect_content (``bool``, *optional*):
|
||||
Protects the contents of the sent message from forwarding and saving
|
||||
|
||||
allow_paid_broadcast (``bool``, *optional*):
|
||||
Pass True to allow the message to ignore regular broadcast limits for a small fee; for bots only
|
||||
|
||||
message_effect_id (``int`` ``64-bit``, *optional*):
|
||||
Unique identifier of the message effect to be added to the message; for private chats only.
|
||||
|
||||
Returns:
|
||||
List of :obj:`~pyrogram.types.Message`: On success, a list of copied messages is returned.
|
||||
|
||||
|
|
@ -169,23 +185,29 @@ class CopyMediaGroup:
|
|||
)
|
||||
)
|
||||
|
||||
reply_to = await utils.get_reply_to(
|
||||
client=self,
|
||||
reply_to_message_id=reply_to_message_id,
|
||||
message_thread_id=message_thread_id,
|
||||
reply_to_chat_id=reply_to_chat_id,
|
||||
reply_to_story_id=reply_to_story_id,
|
||||
quote_text=quote_text,
|
||||
quote_entities=quote_entities,
|
||||
quote_offset=quote_offset,
|
||||
)
|
||||
|
||||
r = await self.invoke(
|
||||
raw.functions.messages.SendMultiMedia(
|
||||
peer=await self.resolve_peer(chat_id),
|
||||
multi_media=multi_media,
|
||||
silent=disable_notification or None,
|
||||
reply_to=utils.get_reply_to(
|
||||
reply_to_message_id=reply_to_message_id,
|
||||
message_thread_id=message_thread_id,
|
||||
reply_to_peer=await self.resolve_peer(reply_to_chat_id) if reply_to_chat_id else None,
|
||||
reply_to_story_id=reply_to_story_id,
|
||||
quote_text=quote_text,
|
||||
quote_entities=quote_entities,
|
||||
quote_offset=quote_offset,
|
||||
),
|
||||
reply_to=reply_to,
|
||||
send_as=await self.resolve_peer(send_as) if send_as else None,
|
||||
schedule_date=utils.datetime_to_timestamp(schedule_date),
|
||||
noforwards=protect_content,
|
||||
invert_media=invert_media
|
||||
invert_media=invert_media,
|
||||
allow_paid_floodskip=allow_paid_broadcast,
|
||||
effect=message_effect_id,
|
||||
),
|
||||
sleep_threshold=60
|
||||
)
|
||||
|
|
@ -202,4 +224,4 @@ class CopyMediaGroup:
|
|||
users=r.users,
|
||||
chats=r.chats
|
||||
)
|
||||
)
|
||||
)
|
||||
|
|
|
|||
|
|
@ -55,7 +55,8 @@ class InputReplyToMessage(Object):
|
|||
"raw.types.InputPeerUser"
|
||||
] = None,
|
||||
quote_text: str = None,
|
||||
quote_entities: List["raw.base.MessageEntity"] = None
|
||||
quote_entities: List["raw.base.MessageEntity"] = None,
|
||||
quote_offset: int = None,
|
||||
):
|
||||
super().__init__()
|
||||
|
||||
|
|
@ -64,6 +65,7 @@ class InputReplyToMessage(Object):
|
|||
self.reply_to_chat = reply_to_chat
|
||||
self.quote_text = quote_text
|
||||
self.quote_entities = quote_entities
|
||||
self.quote_offset = quote_offset
|
||||
|
||||
def write(self):
|
||||
reply_to_msg_id = None
|
||||
|
|
@ -82,6 +84,7 @@ class InputReplyToMessage(Object):
|
|||
top_msg_id=top_msg_id,
|
||||
reply_to_peer_id=self.reply_to_chat,
|
||||
quote_text=self.quote_text,
|
||||
quote_entities=self.quote_entities
|
||||
quote_entities=self.quote_entities,
|
||||
quote_offset=self.quote_offset,
|
||||
).write()
|
||||
return None
|
||||
|
|
|
|||
|
|
@ -54,7 +54,8 @@ async def ainput(prompt: str = "", *, hide: bool = False):
|
|||
def get_input_media_from_file_id(
|
||||
file_id: str,
|
||||
expected_file_type: FileType = None,
|
||||
ttl_seconds: int = None
|
||||
ttl_seconds: int = None,
|
||||
has_spoiler: bool = None
|
||||
) -> Union["raw.types.InputMediaPhoto", "raw.types.InputMediaDocument"]:
|
||||
try:
|
||||
decoded = FileId.decode(file_id)
|
||||
|
|
@ -79,6 +80,7 @@ def get_input_media_from_file_id(
|
|||
access_hash=decoded.access_hash,
|
||||
file_reference=decoded.file_reference
|
||||
),
|
||||
spoiler=has_spoiler,
|
||||
ttl_seconds=ttl_seconds
|
||||
)
|
||||
|
||||
|
|
@ -89,6 +91,7 @@ def get_input_media_from_file_id(
|
|||
access_hash=decoded.access_hash,
|
||||
file_reference=decoded.file_reference
|
||||
),
|
||||
spoiler=has_spoiler,
|
||||
ttl_seconds=ttl_seconds
|
||||
)
|
||||
|
||||
|
|
@ -502,7 +505,8 @@ async def get_reply_to(
|
|||
reply_to_chat_id: Union[int,str] = None,
|
||||
quote_text: str = None,
|
||||
quote_entities: List["types.MessageEntity"] = None,
|
||||
parse_mode: "enums.ParseMode" = None
|
||||
quote_offset: int = None,
|
||||
parse_mode: "enums.ParseMode" = None,
|
||||
):
|
||||
reply_to = None
|
||||
reply_to_chat = None
|
||||
|
|
@ -515,7 +519,8 @@ async def get_reply_to(
|
|||
message_thread_id=message_thread_id,
|
||||
reply_to_chat=reply_to_chat,
|
||||
quote_text=text,
|
||||
quote_entities=entities
|
||||
quote_entities=entities,
|
||||
quote_offset=quote_offset,
|
||||
)
|
||||
if reply_to_story_id:
|
||||
peer = await client.resolve_peer(chat_id)
|
||||
|
|
|
|||
Loading…
Reference in a new issue