From 50975a87d4b3f91075709a2442a849a73ee6815a Mon Sep 17 00:00:00 2001 From: Soulter <905617992@qq.com> Date: Tue, 25 Mar 2025 12:34:43 +0800 Subject: [PATCH] =?UTF-8?q?=F0=9F=90=9B=20fix:=20handle=20message=20sendin?= =?UTF-8?q?g=20failures=20with=20error=20logging?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- astrbot/core/pipeline/respond/stage.py | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/astrbot/core/pipeline/respond/stage.py b/astrbot/core/pipeline/respond/stage.py index 54d319de0..a43f0b32d 100644 --- a/astrbot/core/pipeline/respond/stage.py +++ b/astrbot/core/pipeline/respond/stage.py @@ -103,9 +103,16 @@ class RespondStage(Stage): for comp in result.chain: i = await self._calc_comp_interval(comp) await asyncio.sleep(i) - await event.send(MessageChain([*decorated_comps, comp])) + try: + await event.send(MessageChain([*decorated_comps, comp])) + except Exception as e: + logger.error(f"发送消息失败: {e} chain: {result.chain}") + break else: - await event.send(result) + try: + await event.send(result) + except Exception as e: + logger.error(f"发送消息失败: {e} chain: {result.chain}") await event._post_send() logger.info( f"AstrBot -> {event.get_sender_name()}/{event.get_sender_id()}: {event._outline_chain(result.chain)}"