ICQQ 适配器
ICQQ 适配器基于 @icqqjs/icqq,以 QQ 个人账号会话接入 OneBots。它覆盖私聊、群聊、讨论组、QQ 频道、文件、群管理与登录验证,并保留 ICQQ 原始事件和扩展能力。
能力摘要
- 私聊、群聊和 QQ 频道消息发送;讨论组通过原生扩展动作发送
- 文本、表情、图片、闪照、语音、视频、@、回复、分享、位置、互动、Markdown、合并转发、JSON 与 XML 消息
- 私聊、群聊与 QQ 频道撤回,历史、合并转发、已读、回应、精华消息和群公告
- 好友、群成员、群设置、QQ 频道、群文件与离线文件管理
- 扫码、密码、滑块、设备锁、短信和身份验证流程
- generation 隔离、无限网络恢复与安全心跳调度
完整事件面
适配器接收并投影 ICQQ 提供的以下事件:
- 私聊、群聊、讨论组与 QQ 频道消息;频道删除推送为
message_deleted - 跨设备私聊同步,以及私聊/群聊已读同步
- 好友增加、减少和好友申请
- 群申请/邀请、成员增减、禁言、管理员、回应、撤回与戳一戳
- 输入状态、群打卡与群主转让
讨论组使用 discuss:<id> 作为隔离的场景 ID,避免与数字相同的 QQ 群碰撞。群打卡与群主转让没有对应的 canonical notice 类型,因此通过带 raw_event 和 ICQQ 扩展字段的 custom notice 无损交付。
频道发送使用标准的独立寻址:scene_id 是 channel_id,同时传入 guild_id;频道用户提及通过字符串 at.id 传入 tiny ID。适配器返回的 opaque message_id 保存撤回所需的原生路由,调用方不需要也不应自行拼接 ID。平台扩展动作还提供频道链接分享、黑名单与好友分组、用户/群头像 URL、群文件容量/详情/跨群转发,以及离线文件查询和转发。
安装
@icqqjs/icqq 来自 GitHub Packages。请准备具备 read:packages 权限的 GitHub token,然后在 Web 控制台打开「功能扩展」并选择 ICQQ;也可以运行:
onebots ui --data-dir <workspace> --setup安装流程会在需要下载私有依赖时安全读取 token,并将 ICQQ 适配器及其必需的对等依赖安装到经过验证的不可变运行代。token 不会写入运行代或日志。请勿在 OneBots 运行目录中配置 .npmrc、执行 npm login 或直接安装包。
配置
icqq.123456789:
# 留空则扫码登录
password: your_password
protocol:
platform: 2
sign_api_addr: http://127.0.0.1:8080
data_dir: data/icqq
ignore_self: true
resend: true
reconn_interval: 5
cache_group_member: true
auto_server: trueWeb 管理端会按账号凭据、连接、过滤、发送与高级设置分区展示这些字段。签名服务器、QQ 协议版本和账号风控要求可能随上游变化;生产使用前应在测试账号验证当前 ICQQ 与签名服务组合。
完整动作、消息段、平台扩展和错误契约见包内 README。