Fix error handling replies in some cases

This commit is contained in:
Tulir Asokan
2024-03-19 12:00:32 +02:00
parent 6166173376
commit dbfbf12862
@@ -53,6 +53,7 @@ from telethon.tl.types import (
MessageMediaWebPage, MessageMediaWebPage,
MessageReplyStoryHeader, MessageReplyStoryHeader,
PeerChannel, PeerChannel,
PeerChat,
PeerUser, PeerUser,
Photo, Photo,
PhotoCachedSize, PhotoCachedSize,
@@ -63,6 +64,8 @@ from telethon.tl.types import (
Poll, Poll,
TypeDocumentAttribute, TypeDocumentAttribute,
TypePhotoSize, TypePhotoSize,
UpdateShortChatMessage,
UpdateShortMessage,
WebPage, WebPage,
) )
from telethon.utils import decode_waveform from telethon.utils import decode_waveform
@@ -278,7 +281,15 @@ class TelegramMessageConverter:
if isinstance(evt, Message) and isinstance(evt.peer_id, PeerChannel) if isinstance(evt, Message) and isinstance(evt.peer_id, PeerChannel)
else source.tgid else source.tgid
) )
if evt.reply_to.reply_to_peer_id and evt.reply_to.reply_to_peer_id != evt.peer_id: if isinstance(evt, Message):
evt_peer_id = evt.peer_id
elif isinstance(evt, UpdateShortMessage):
evt_peer_id = PeerUser(evt.user_id)
elif isinstance(evt, UpdateShortChatMessage):
evt_peer_id = PeerChat(evt.chat_id)
else:
evt_peer_id = None
if evt.reply_to.reply_to_peer_id and evt.reply_to.reply_to_peer_id != evt_peer_id:
if not self.config["bridge.cross_room_replies"]: if not self.config["bridge.cross_room_replies"]:
return return
space = ( space = (