Handle replies to deleted messages (maybe this case is only given from history)
patch 35206dbcb8c561df88e525160e5d6a50dad07481
Author: E. Bosch <presidev@AT@gmail.com>
Date: Thu Aug 15 01:30:54 CEST 2024
* Handle replies to deleted messages (maybe this case is only given from history)
diff -rN -u old-irgramd/telegram.py new-irgramd/telegram.py
--- old-irgramd/telegram.py 2024-10-23 02:37:06.430899665 +0200
+++ new-irgramd/telegram.py 2024-10-23 02:37:06.430899665 +0200
@@ -693,18 +693,33 @@
space = ' '
trunc = ''
replied = await message.get_reply_message()
- replied_msg = replied.message
- cid = self.mid.num_to_id_offset(replied.peer_id, replied.id)
+ if replied:
+ replied_msg = replied.message
+ cid = self.mid.num_to_id_offset(replied.peer_id, replied.id)
+ replied_user = self.get_irc_user_from_telegram(replied.sender_id)
+ else:
+ replied_id = message.reply_to.reply_to_msg_id
+ cid = self.mid.num_to_id_offset(message.peer_id, replied_id)
+ if replied_id in self.cache:
+ text = self.cache[replied_id]['text']
+ replied_user = self.cache[replied_id]['user']
+ sp = ' '
+ else:
+ text = ''
+ replied_user = ''
+ sp = ''
+ replied_msg = '|Deleted|{}{}'.format(sp, text)
if not replied_msg:
replied_msg = ''
space = ''
elif len(replied_msg) > self.quote_len:
replied_msg = replied_msg[:self.quote_len]
trunc = '...'
- replied_user = self.get_irc_user_from_telegram(replied.sender_id)
if replied_user is None:
replied_nick = '{}'
self.refwd_me = True
+ elif replied_user == '':
+ replied_nick = ''
else:
replied_nick = replied_user.irc_nick