From b64e1c609f3d33df8293c2f09a0f94f348b3ed62 Mon Sep 17 00:00:00 2001 From: Junyan Qin Date: Sat, 12 Apr 2025 22:19:18 +0800 Subject: [PATCH] refactor: remove adapter-qq-botpy.json metadata --- pkg/core/app.py | 2 -- pkg/core/stages/load_config.py | 3 -- pkg/platform/sources/qqbotpy.py | 45 ++++++------------------ templates/metadata/adapter-qq-botpy.json | 6 ---- 4 files changed, 11 insertions(+), 45 deletions(-) delete mode 100644 templates/metadata/adapter-qq-botpy.json diff --git a/pkg/core/app.py b/pkg/core/app.py index fc01d9f3..43d124a4 100644 --- a/pkg/core/app.py +++ b/pkg/core/app.py @@ -72,8 +72,6 @@ class Application: sensitive_meta: config_mgr.ConfigManager = None - adapter_qq_botpy_meta: config_mgr.ConfigManager = None - llm_models_meta: config_mgr.ConfigManager = None instance_secret_meta: config_mgr.ConfigManager = None diff --git a/pkg/core/stages/load_config.py b/pkg/core/stages/load_config.py index a1767654..dc4e5edb 100644 --- a/pkg/core/stages/load_config.py +++ b/pkg/core/stages/load_config.py @@ -69,9 +69,6 @@ class LoadConfigStage(stage.BootingStage): ap.sensitive_meta = await config.load_json_config("data/metadata/sensitive-words.json", "templates/metadata/sensitive-words.json") await ap.sensitive_meta.dump_config() - ap.adapter_qq_botpy_meta = await config.load_json_config("data/metadata/adapter-qq-botpy.json", "templates/metadata/adapter-qq-botpy.json") - await ap.adapter_qq_botpy_meta.dump_config() - ap.instance_secret_meta = await config.load_json_config("data/metadata/instance-secret.json", template_data={ 'jwt_secret': secrets.token_hex(16) }) diff --git a/pkg/platform/sources/qqbotpy.py b/pkg/platform/sources/qqbotpy.py index 9f407b7f..716da80f 100644 --- a/pkg/platform/sources/qqbotpy.py +++ b/pkg/platform/sources/qqbotpy.py @@ -237,12 +237,8 @@ class OfficialMessageConverter(adapter_model.MessageConverter): class OfficialEventConverter(adapter_model.EventConverter): """事件转换器""" - member_openid_mapping: OpenIDMapping[str, int] - group_openid_mapping: OpenIDMapping[str, int] - - def __init__(self, member_openid_mapping: OpenIDMapping[str, int], group_openid_mapping: OpenIDMapping[str, int]): - self.member_openid_mapping = member_openid_mapping - self.group_openid_mapping = group_openid_mapping + def __init__(self): + pass def yiri2target(self, event: typing.Type[platform_events.Event]): if event == platform_events.GroupMessage: @@ -313,16 +309,16 @@ class OfficialEventConverter(adapter_model.EventConverter): ) elif type(event) == botpy_message.GroupMessage: # 群聊,转群聊事件 - replacing_member_id = self.member_openid_mapping.save_openid(event.author.member_openid) + author_member_id = event.author.member_openid return OfficialGroupMessage( sender=platform_entities.GroupMember( - id=replacing_member_id, - member_name=replacing_member_id, + id=author_member_id, + member_name=author_member_id, permission="MEMBER", group=platform_entities.Group( - id=self.group_openid_mapping.save_openid(event.group_openid), - name=replacing_member_id, + id=event.group_openid, + name=author_member_id, permission=platform_entities.Permission.Member, ), special_title="", @@ -341,7 +337,7 @@ class OfficialEventConverter(adapter_model.EventConverter): ) elif type(event) == botpy_message.C2CMessage: # 私聊,转私聊事件 - user_id_alter = self.member_openid_mapping.save_openid(event.author.user_openid) # 实测这里的user_openid与group的member_openid是一样的 + user_id_alter = event.author.user_openid return OfficialFriendMessage( sender=platform_entities.Friend( @@ -382,9 +378,6 @@ class OfficialAdapter(adapter_model.MessagePlatformAdapter): metadata: cfg_mgr.ConfigManager = None - member_openid_mapping: OpenIDMapping[str, int] = None - group_openid_mapping: OpenIDMapping[str, int] = None - group_msg_seq = None c2c_msg_seq = None @@ -478,9 +471,7 @@ class OfficialAdapter(adapter_model.MessagePlatformAdapter): if "file_image" in args: # 暂不支持发送文件图片 continue - args["group_openid"] = self.group_openid_mapping.getkey( - message_source.sender.group.id - ) + args["group_openid"] = message_source.sender.group.id if "image" in args: uploadMedia = await self.bot.api.post_group_file( @@ -503,9 +494,7 @@ class OfficialAdapter(adapter_model.MessagePlatformAdapter): elif type(message_source) == OfficialFriendMessage: if "file_image" in args: continue - args["openid"] = self.member_openid_mapping.getkey( - message_source.sender.id - ) + args["openid"] = message_source.sender.id if "image" in args: uploadMedia = await self.bot.api.post_c2c_file( @@ -569,20 +558,8 @@ class OfficialAdapter(adapter_model.MessagePlatformAdapter): self.metadata = self.ap.adapter_qq_botpy_meta - self.member_openid_mapping = OpenIDMapping( - map=self.metadata.data["mapping"]["members"], - dump_func=self.metadata.dump_config_sync, - ) - - self.group_openid_mapping = OpenIDMapping( - map=self.metadata.data["mapping"]["groups"], - dump_func=self.metadata.dump_config_sync, - ) - self.message_converter = OfficialMessageConverter() - self.event_converter = OfficialEventConverter( - self.member_openid_mapping, self.group_openid_mapping - ) + self.event_converter = OfficialEventConverter() self.cfg['ret_coro'] = True diff --git a/templates/metadata/adapter-qq-botpy.json b/templates/metadata/adapter-qq-botpy.json deleted file mode 100644 index 765f12c9..00000000 --- a/templates/metadata/adapter-qq-botpy.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "mapping": { - "groups": {}, - "members": {} - } -} \ No newline at end of file