Skip to content

[Feature] 【qq_official适配器】支持MessageChain转Markdown,增加ARK卡片封装,解决图文顺序颠倒 #10019

Description

@Jian11323

功能描述

qq_official QQ 官方开放平台适配器增加能力:支持将包含图文的 MessageChain 打包为 QQ Markdown 消息发送,同时评估 ARK 结构化卡片消息的封装。

当前现象:当插件返回顺序为【Plain 文字 + Image 图片】的 MessageChain 时,qq_official 适配器会拆分成两条独立消息发送。图片消息会优先送达 QQ 服务器,最终图片显示在消息最上方,文字全部在图片下方,排版颠倒(参考截图,地震预警推送示例)。

原因:QQ 开放平台普通消息接口不支持单条消息混合图文,只能纯文本或单张图片。Markdown 消息可以在同一条卡片内自定义图文顺序,解决这个问题。查阅现有 issue #5845,适配器已有底层发送 Markdown 的基础能力,希望可以增加标记,让插件主动选择把整条 MessageChain 以 Markdown 模式发出。

Image

附加需求:QQ 开放平台没有 MergeMessage 合并转发接口,适配器无法支持聚合消息。希望封装 ARK 卡片接口,作为长消息的替代方案,实现类似折叠效果,避免多条消息刷屏。

环境:AstrBot v4.28.0,qq_official 适配器(QQ 官方机器人)

查阅现有 issue #5845,了解到适配器已有 Markdown 底层支持。希望可以暴露接口,让插件可以将包含图文的 MessageChain 直接打包为 Markdown 消息发送,解决图文顺序颠倒问题。同时希望评估 ARK 卡片的适配,用来替代无法实现的 MergeMessage 聚合消息。

使用场景

使用 AstrBot 搭配 qq_official 适配器,插件推送图文类通知(地震预警、消息播报等)到 QQ 群。
预期:消息链里文字在前、图片在后,在 QQ 客户端保持这个上下顺序展示。
现状:适配器拆分消息,图片置顶,阅读顺序颠倒。
多条连续通知会产生大量刷屏消息,希望使用 ARK/Markdown 卡片聚合展示长内容。

Image Image

检查清单

  • 我已在 Issue 列表中搜索过相关功能,确认该功能想法从未被提出过。
  • 我建议的功能与 AstrBot 本体相关,而非在建议某一插件的功能。
  • 我已阅读并同意本项目的贡献者行为准则
  • (可选)我愿意提交 PR 以帮助实现该功能。

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions