fix:删除消息能力

This commit is contained in:
jxxghp
2025-06-22 10:04:21 +08:00
parent bd241a5164
commit 269ab9adfc
4 changed files with 12 additions and 21 deletions
+7 -16
View File
@@ -275,7 +275,8 @@ class MessageChain(ChainBase):
# 保存缓存 # 保存缓存
self.save_cache(user_cache, self._cache_file) self.save_cache(user_cache, self._cache_file)
# 删除原消息 # 删除原消息
if ChannelCapabilityManager.supports_deletion(channel): if (original_message_id and original_chat_id and
ChannelCapabilityManager.supports_deletion(channel)):
self.delete_message( self.delete_message(
channel=channel, channel=channel,
source=source, source=source,
@@ -289,9 +290,7 @@ class MessageChain(ChainBase):
title=mediainfo.title, title=mediainfo.title,
items=contexts[:self._page_size], items=contexts[:self._page_size],
userid=userid, userid=userid,
total=len(contexts), total=len(contexts))
original_message_id=original_message_id,
original_chat_id=original_chat_id)
elif cache_type in ["Subscribe", "ReSubscribe"]: elif cache_type in ["Subscribe", "ReSubscribe"]:
# 订阅或洗版媒体 # 订阅或洗版媒体
@@ -490,9 +489,7 @@ class MessageChain(ChainBase):
source=source, source=source,
title=meta.name, title=meta.name,
items=medias[:self._page_size], items=medias[:self._page_size],
userid=userid, total=len(medias), userid=userid, total=len(medias))
original_message_id=original_message_id,
original_chat_id=original_chat_id)
else: else:
# 广播事件 # 广播事件
self.eventmanager.send_event( self.eventmanager.send_event(
@@ -541,15 +538,9 @@ class MessageChain(ChainBase):
# 解析系统回调数据 # 解析系统回调数据
try: try:
page_text = callback_data.split("_", 1)[1] page_text = callback_data.split("_", 1)[1]
if callback_data.startswith('page_'): self.handle_message(channel=channel, source=source, userid=userid, username=username,
# 翻页操作原位更新消息 text=page_text,
self.handle_message(channel=channel, source=source, userid=userid, username=username, original_message_id=original_message_id, original_chat_id=original_chat_id)
text=page_text,
original_message_id=original_message_id, original_chat_id=original_chat_id)
else:
# 处理新消息
self.handle_message(channel=channel, source=source, userid=userid, username=username,
text=page_text)
except IndexError: except IndexError:
logger.error(f"回调数据格式错误:{callback_data}") logger.error(f"回调数据格式错误:{callback_data}")
self.post_message(Notification( self.post_message(Notification(
+1 -1
View File
@@ -334,7 +334,7 @@ class SlackModule(_ModuleBase, _MessageBase[Slack]):
success = False success = False
for conf in self.get_configs().values(): for conf in self.get_configs().values():
if channel != self._channel: if channel != self._channel:
continue break
if source != conf.name: if source != conf.name:
continue continue
client: Slack = self.get_instance(conf.name) client: Slack = self.get_instance(conf.name)
+3 -3
View File
@@ -158,7 +158,7 @@ class Slack:
"emoji": True "emoji": True
}, },
"url": button["url"], "url": button["url"],
"action_id": f"actionId-url-{len(elements)}" "action_id": f"actionId-url-{button.get('text', 'url')}-{len(elements)}"
}) })
else: else:
# 回调按钮 # 回调按钮
@@ -300,7 +300,7 @@ class Slack:
"emoji": True "emoji": True
}, },
"url": button["url"], "url": button["url"],
"action_id": f"actionId-url-{len(elements)}" "action_id": f"actionId-url-{button.get('text', 'url')}-{len(elements)}"
}) })
else: else:
elements.append({ elements.append({
@@ -465,7 +465,7 @@ class Slack:
"emoji": True "emoji": True
}, },
"url": button["url"], "url": button["url"],
"action_id": f"actionId-url-{len(elements)}" "action_id": f"actionId-url-{button.get('text', 'url')}-{len(elements)}"
}) })
else: else:
elements.append({ elements.append({
+1 -1
View File
@@ -299,7 +299,7 @@ class TelegramModule(_ModuleBase, _MessageBase[Telegram]):
success = False success = False
for conf in self.get_configs().values(): for conf in self.get_configs().values():
if channel != self._channel: if channel != self._channel:
continue break
if source != conf.name: if source != conf.name:
continue continue
client: Telegram = self.get_instance(conf.name) client: Telegram = self.get_instance(conf.name)