From 6bfc7fb4fac4c41453234a859431450e6c2f1745 Mon Sep 17 00:00:00 2001 From: minecraft1024a Date: Thu, 2 Oct 2025 17:16:10 +0800 Subject: [PATCH] =?UTF-8?q?refactor(napcat=5Fadapter):=20=E7=BB=9F?= =?UTF-8?q?=E4=B8=80=E5=91=BD=E4=BB=A4=E5=90=8D=E7=A7=B0=E4=B8=BA=E5=AD=97?= =?UTF-8?q?=E7=AC=A6=E4=B8=B2=E5=BD=A2=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 将 `napcat_adapter` 插件中 `set_emoji_like` 的命令类型从枚举值改为字符串 `"set_msg_emoji_like"`,以与其他命令格式保持一致。 同时,更新了 `social_toolkit_plugin` 中对 `set_emoji_like` 和 `send_poke` 命令的调用,将命令名称改为大写字符串形式,以适配新的命令处理机制。此举增强了命令调用的统一性和可读性。 --- .../napcat_adapter_plugin/src/send_handler.py | 2 +- .../built_in/social_toolkit_plugin/plugin.py | 13 ++++++------- 2 files changed, 7 insertions(+), 8 deletions(-) diff --git a/src/plugins/built_in/napcat_adapter_plugin/src/send_handler.py b/src/plugins/built_in/napcat_adapter_plugin/src/send_handler.py index 53d12578e..411b957dc 100644 --- a/src/plugins/built_in/napcat_adapter_plugin/src/send_handler.py +++ b/src/plugins/built_in/napcat_adapter_plugin/src/send_handler.py @@ -543,7 +543,7 @@ class SendHandler: raise ValueError(f"缺少必需参数或参数类型错误: {e}") return ( - CommandType.SET_EMOJI_LIKE.value, + "set_msg_emoji_like", {"message_id": message_id, "emoji_id": emoji_id, "set": set_like}, ) diff --git a/src/plugins/built_in/social_toolkit_plugin/plugin.py b/src/plugins/built_in/social_toolkit_plugin/plugin.py index 347c1c504..1dcd5c08e 100644 --- a/src/plugins/built_in/social_toolkit_plugin/plugin.py +++ b/src/plugins/built_in/social_toolkit_plugin/plugin.py @@ -193,16 +193,11 @@ class PokeAction(BaseAction): # 构建戳一戳的参数 poke_args = {"user_id": str(user_id)} - if self.is_group and self.chat_stream.group_info: - poke_args["group_id"] = self.chat_stream.group_info.group_id - logger.info(f"在群聊 {poke_args['group_id']} 中执行戳一戳") - else: - logger.info("在私聊中执行戳一戳") for i in range(times): logger.info(f"正在向 {display_name} ({user_id}) 发送第 {i + 1}/{times} 次戳一戳...") await self.send_command( - "send_poke", args=poke_args, display_message=f"戳了戳 {display_name} ({i + 1}/{times})" + "SEND_POKE", args=poke_args, display_message=f"戳了戳 {display_name} ({i + 1}/{times})" ) # 添加一个延迟,避免因发送过快导致后续戳一戳失败 await asyncio.sleep(1.5) @@ -302,6 +297,10 @@ class SetEmojiLikeAction(BaseAction): if not success or not response: logger.error("表情选择模型未能返回有效的表情名称。") + await self.store_action_info( + action_prompt_display="贴表情失败:表情选择模型未能返回有效的表情名称。", + action_done=False, + ) return False, "无法选择合适的表情。" chosen_emoji_name = response.strip() @@ -319,7 +318,7 @@ class SetEmojiLikeAction(BaseAction): try: success = await self.send_command( - command_name="set_emoji_like", + command_name="SET_EMOJI_LIKE", args={"message_id": message_id, "emoji_id": emoji_id, "set": set_like}, storage_message=False, )