diff --git a/astrbot/core/pipeline/respond/stage.py b/astrbot/core/pipeline/respond/stage.py index 275926ba..ad0a62c8 100644 --- a/astrbot/core/pipeline/respond/stage.py +++ b/astrbot/core/pipeline/respond/stage.py @@ -211,6 +211,10 @@ class RespondStage(Stage): logger.info( f"AstrBot -> {event.get_sender_name()}/{event.get_sender_id()}: {event._outline_chain(result.chain)}" ) + else: + # 对使用 qq_official 适配器的会话控制器发送消息的特殊处理 + if event.get_platform_name() == "qq_official": + await event._post_send() handlers = star_handlers_registry.get_handlers_by_event_type( EventType.OnAfterMessageSentEvent, platform_id=event.get_platform_id() diff --git a/astrbot/core/platform/sources/qqofficial/qqofficial_message_event.py b/astrbot/core/platform/sources/qqofficial/qqofficial_message_event.py index afb84880..d55c2671 100644 --- a/astrbot/core/platform/sources/qqofficial/qqofficial_message_event.py +++ b/astrbot/core/platform/sources/qqofficial/qqofficial_message_event.py @@ -32,7 +32,6 @@ class QQOfficialMessageEvent(AstrMessageEvent): self.send_buffer = message else: self.send_buffer.chain.extend(message.chain) - await self._post_send() async def send_streaming(self, generator, use_fallback: bool = False): """流式输出仅支持消息列表私聊"""