From c597c6482a6e7ee376f9324e60e5f961c70f6f9c Mon Sep 17 00:00:00 2001 From: Dong_master <2213070223@qq.com> Date: Wed, 19 Mar 2025 20:46:56 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E5=B0=8F=E7=A8=8B=E5=BA=8F?= =?UTF-8?q?=E8=BD=AC=E5=8F=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pkg/platform/sources/gewechat.py | 4 ++++ pkg/platform/types/message.py | 8 ++++++++ 2 files changed, 12 insertions(+) diff --git a/pkg/platform/sources/gewechat.py b/pkg/platform/sources/gewechat.py index 869e05c6..0fb00fa9 100644 --- a/pkg/platform/sources/gewechat.py +++ b/pkg/platform/sources/gewechat.py @@ -47,6 +47,8 @@ class GewechatMessageConverter(adapter.MessageConverter): if not component.url: pass content_list.append({"type": "image", "image": component.url}) + elif isinstance(component, platform_message.MiniPrograms): + content_list.append({"type": 'MiniPrograms', 'xml_data': component.xml_data, 'image_url': component.image_url}) elif isinstance(component, platform_message.Voice): @@ -361,6 +363,8 @@ class GeWeChatAdapter(adapter.MessagePlatformAdapter): elif msg['type'] == 'image': self.bot.post_image(app_id=self.config['app_id'], to_wxid=target_id, img_url=msg["image"]) + elif msg['type'] == 'MiniPrograms': + self.bot.forward_mini_app(app_id=self.config['app_id'], to_wxid=target_id, xml=msg['xml_data'], cover_img_url=msg['image_url']) diff --git a/pkg/platform/types/message.py b/pkg/platform/types/message.py index b99a28b3..ad519481 100644 --- a/pkg/platform/types/message.py +++ b/pkg/platform/types/message.py @@ -643,6 +643,14 @@ class Unknown(MessageComponent): text: str """文本。""" +class MiniPrograms(MessageComponent): + """小程序?""" + type: str = 'MiniPrograms' + """xml数据""" + xml_data: str + """首页图片""" + image_url: typing.Optional[str] = None + class Voice(MessageComponent): """语音。"""