Skip to content

Commit 044d7da

Browse files
committed
(fix): parsing entities present in the original message
Closes #71
1 parent c39545f commit 044d7da

File tree

2 files changed

+15
-9
lines changed

2 files changed

+15
-9
lines changed

pyrogram/methods/messages/copy_media_group.py

Lines changed: 14 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
from typing import Union, List
2222

2323
import pyrogram
24-
from pyrogram import types, utils, raw
24+
from pyrogram import enums, raw, types, utils
2525

2626
log = logging.getLogger(__name__)
2727

@@ -124,17 +124,23 @@ async def copy_media_group(
124124
raise ValueError("Message with this type can't be copied.")
125125

126126
media = utils.get_input_media_from_file_id(file_id=file_id)
127+
128+
sent_message, sent_entities = None, None
129+
if isinstance(captions, list) and i < len(captions) and isinstance(captions[i], str):
130+
sent_message, sent_entities = (await utils.parse_text_entities(self, captions[i], self.parse_mode, None)).values()
131+
elif isinstance(captions, str) and i == 0:
132+
sent_message, sent_entities = (await utils.parse_text_entities(self, captions, self.parse_mode, None)).values()
133+
elif message.caption and message.caption != "None" and not type(captions) is str: # TODO
134+
sent_message, sent_entities = (await utils.parse_text_entities(self, message.caption, None, message.caption_entities)).values()
135+
else:
136+
sent_message, sent_entities = "", None
137+
127138
multi_media.append(
128139
raw.types.InputSingleMedia(
129140
media=media,
130141
random_id=self.rnd_id(),
131-
# TODO
132-
**await self.parser.parse(
133-
captions[i] if isinstance(captions, list) and i < len(captions) and isinstance(captions[i], str) else
134-
captions if isinstance(captions, str) and i == 0 else
135-
message.caption if message.caption and message.caption != "None" and not type(
136-
captions) is str else ""
137-
)
142+
message=sent_message,
143+
entities=sent_entities
138144
)
139145
)
140146
show_caption_above_media.append(message.show_caption_above_media)

pyrogram/types/messages_and_media/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,7 @@
7575
"GiveawayCompleted",
7676
"GiveawayWinners",
7777
"Location",
78-
"Message",
78+
"Message", # TODO
7979
"MessageAutoDeleteTimerChanged",
8080
"MessageEffect",
8181
"MessageEntity",

0 commit comments

Comments
 (0)