Files
weixin_ClawBot_Bridge/docs/06-limits-and-faq.md
T

88 lines
5.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 06 — 平台限制、合规条款与 FAQ
## 1. 硬性限制汇总
| 限制 | 说明 | 影响 |
|---|---|---|
| 一个微信号 = 一个 bot 实例 | 扫码绑定关系一对一 | 不能多开 bot;多开轮询会互相抢游标 |
| 仅私聊 | 群聊未开放(协议有 `group_id` 字段,可能未来开放) | 做不了群助手,目前 |
| 无历史消息 API | 只有 `get_updates_buf` 游标 | 掉线期间的消息语义未明确,建议按「可能丢失」设计 |
| 回复时效窗口 ⚠️ | 有资料称用户最后一条消息后 24h 内 bot 回复才送得到 | 主动推送/慢任务受约束;务必实测 |
| 主动消息依赖 context_token | token 随入站消息下发 | 冷启动无法主动找人,得用户先开口 |
| 客户端版本 | iOS ≥ 8.0.70(安卓/鸿蒙版本要求各资料不一) | 用户侧看不到插件=没被放量或版本低 |
| 灰度放量 | 功能逐步开放 | 部分账号没有插件入口,无解,等 |
| 速率限制未公开 | 官方未给数字 | 别做高频轰炸,正常对话节奏不会触发 |
## 2. 官方条款要点(《微信 ClawBot 功能使用条款》)
> 以下为开发者视角的转述,不替代原文。做正式产品前请读条款原文。
- **腾讯只是管道(3.2)**:仅提供信息收发,不存储输入/输出内容,不提供 AI 服务。AI 输出由你负责。
- **腾讯保留控制权(4.7)**:可决定支持接入的 AI 服务类型、范围、收发规模与频率;可对内容与连接进行识别,采取提示、拦截、阻断。
- **数据(5.3)**:消息内容不存储;但 IP、操作记录、设备信息会被收集用于安全审计。
- **禁止行为(4.6)**:绕过/破解微信技术保护措施;违法违规;危害网络与数据安全;侵犯他人权益。
- **服务可终止(7.2)**:腾讯可根据业务发展变更、中断、终止本功能。
**工程含义**:
1. 核心业务不要单点依赖 iLink,留降级通道(如邮件、Telegram bot)
2. 内容合规责任在你(AI 输出的过滤/审核是你的事)
3. 别拿它做营销群发——高频主动消息既是条款雷区也受 24h 窗口限制
## 3. 资料间的矛盾与未证实事项
整理时发现以下说法在不同来源间不一致,使用前先实测:
| 事项 | 说法 A | 说法 B | 建议 |
|---|---|---|---|
| 客户端支持 | 仅 iOS 8.0.70+ | 安卓 ≥8.0.70、鸿蒙 ≥8.0.16.40 也支持 | 以目标用户实测为准 |
| 消息类型 | 仅文本 | 图片/语音/文件/视频均可 | 文本先行,媒体逐个实测 |
| 出站语音 | bot 不能发语音 | 适配器已实现语音上传 | 实测 |
| 群聊 | 未开放 | 协议有 `group_id` 字段 | 按不可用设计 |
| token 有效期 | 长期有效 | 未公布,会 -14 过期 | 实现重扫码路径即可 |
| 24h 回复窗口 | 存在 | 部分资料未提 | 主动推送功能先实测 |
## 4. FAQ
**Q:必须要装 OpenClaw 吗?**
A:不需要。iLink 是标准 HTTP API,官方 npm 包只是封装。直接 `fetch`/`requests` 调即可,见 05 文档骨架。
**Q:需要公网 IP / 域名 / 备案吗?**
A:都不需要。收消息是长轮询(你的程序主动连腾讯服务器),不是 webhook。
**Q:bot_token 会过期吗?过期了怎么办?**
A:官方未公布有效期。`getupdates` 返回 `errcode=-14` 即会话过期,此时应暂停轮询、删除本地凭据、重新走扫码流程。实现时把这条路径做好即可无忧。
**Q:能同时跑多个实例分摊负载吗?**
A:不能。一个微信号绑一个 bot;多个实例同时轮询会互相覆盖游标导致丢消息/重复消息。单实例部署,实例内做并发处理。
**Q:用户发的语音能直接拿到文字吗?**
A:能。语音消息的 `voice_item.text` 附带微信侧的 ASR 转写,大多数场景直接用转写文本即可,不用自己解码 silk。
**Q:AI 处理要几分钟(如深度研究),怎么回?**
A:先立即回一条「收到,处理中」(或 sendtyping),任务完成后用最新 context_token 主动发结果。注意 24h 窗口(见上),超窗消息可能送不到。
**Q:能给别人用吗(多用户 bot)?**
A:技术上任何用户给 bot 发消息你都能收到(`from_user_id` 区分),按 peer 建会话即可。但注意:你的模型 API 成本、内容合规责任、以及腾讯对「信息收发规模」的控制权。建议加白名单。
**Q:和公众号/企业微信比,选哪个?**
A:给自己或小圈子用、要微信原生体验 → ClawBot;要认证主体、群发、关注者体系 → 公众号;企业场景 → 企业微信机器人(见 01 文档对比表)。
**Q:封号风险?**
A:这是官方插件通道,正常使用不按灰产协议处理,封号风险远低于 itchat/Wechaty 方案。但违反条款(营销轰炸、违规内容、超高频)腾讯有权拦截/终止。
**Q:协议字段跟文档对不上怎么办?**
A:最终依据是官方包源码:`npm pack @tencent-weixin/openclaw-weixin` 下载后看 `src/`。协议在 1.0.2 → 2.1.x 间主体未变,但细节以你抓到的版本为准。
## 5. 官方与社区资源
| 资源 | 链接 |
|---|---|
| 官方 CLI 包 | `npm view @tencent-weixin/openclaw-weixin-cli` |
| 官方协议包 | `npm view @tencent-weixin/openclaw-weixin` |
| OpenClaw 文档 | https://docs.openclaw.ai |
| 协议逆向分析 | https://github.com/hao-ji-xing/openclaw-weixin |
| Java SDK | https://github.com/openclaw-java/openclaw-weixin-sdk |
| Python 多通道参考 | https://github.com/openakita/openakita |
| Claude Code 接入示例 | https://github.com/hao-ji-xing/cc-weixin |