diff --git a/pyrogram/methods/bots/send_inline_bot_result.py b/pyrogram/methods/bots/send_inline_bot_result.py index f7eb6f41..1b5b9404 100644 --- a/pyrogram/methods/bots/send_inline_bot_result.py +++ b/pyrogram/methods/bots/send_inline_bot_result.py @@ -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), ) ) diff --git a/pyrogram/methods/messages/copy_media_group.py b/pyrogram/methods/messages/copy_media_group.py index cdd75b6e..b5bb818f 100644 --- a/pyrogram/methods/messages/copy_media_group.py +++ b/pyrogram/methods/messages/copy_media_group.py @@ -169,20 +169,21 @@ class CopyMediaGroup: ) ) + reply_to = await utils.get_reply_to( + 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, schedule_date=utils.datetime_to_timestamp(schedule_date), noforwards=protect_content, invert_media=invert_media diff --git a/pyrogram/types/input_message_content/input_reply_to_message.py b/pyrogram/types/input_message_content/input_reply_to_message.py index 8d0b5667..8b74bd9b 100644 --- a/pyrogram/types/input_message_content/input_reply_to_message.py +++ b/pyrogram/types/input_message_content/input_reply_to_message.py @@ -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 diff --git a/pyrogram/utils.py b/pyrogram/utils.py index 054dd689..8223fc06 100644 --- a/pyrogram/utils.py +++ b/pyrogram/utils.py @@ -502,7 +502,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 +516,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)