1. 背景
设备已经具备真实 Linx 语音、MCP、VoiceLife PCB 音频、OLED 与板级交互运行时;Gateway 已具备微信公众号配对、Webhook 和绑定成功/失败的被动 XML 回复。完成设备 Pairing Client 后,可以在不依赖 Schedule、TimingTask 或提醒通知的情况下,建立第一条真实的“语音设备连接 IM”闭环。
2. 用户场景
Given:
- VoiceLife PCB 已联网并连接 Linx;
- IM 基础运行时已从安全配置获得有效 Gateway origin、deviceId 与 device token;
- 微信公众号测试账号的 Webhook 指向当前 Gateway。
When:
- 用户对设备说“绑定微信公众号”;
- 设备创建 10 分钟 PairingSession;
- 设备显示并播报“请在微信公众号发送:绑定 123456”;
- 用户在公众号发送该文本;
- Gateway 确认绑定,微信同步回复绑定成功;
- 设备轮询到 confirmed。
Then:
- 设备 OLED 与 TTS 提示“微信公众号绑定成功”;
- Gateway/PostgreSQL 只有一条对应用户、设备和微信身份的 active binding;
- 全过程不创建 ScheduleReceipt、Notification、Delivery 或提醒 Action。
3. 范围
3.1 交互入口
3.2 OLED 与 TTS
3.3 状态与并发
4. 非目标
5. 自动验证
6. 真机与真实公众号验收
7. 依赖与关系
Refs #95, #130, #132, #152, #179, #233, #234
1. 背景
设备已经具备真实 Linx 语音、MCP、VoiceLife PCB 音频、OLED 与板级交互运行时;Gateway 已具备微信公众号配对、Webhook 和绑定成功/失败的被动 XML 回复。完成设备 Pairing Client 后,可以在不依赖 Schedule、TimingTask 或提醒通知的情况下,建立第一条真实的“语音设备连接 IM”闭环。
2. 用户场景
Given:
When:
Then:
3. 范围
3.1 交互入口
im.binding.start)暴露给语音 Provider;3.2 OLED 与 TTS
3.3 状态与并发
4. 非目标
NotificationIntent;5. 自动验证
./scripts/run_checks.sh与 VoiceLife PCB 固件构建通过。6. 真机与真实公众号验收
7. 依赖与关系
Refs #95, #130, #132, #152, #179, #233, #234