docs(qqmusic): README 补通知分组与执行日志章节
通知样例换成新的分组格式(📈 任务中心 / 🎁 会员福利站 / 💰 金币中心 / 🎫 VIP 体验券),并加分组规则表与「新增任务要补 step() 且用两段式名」的提醒。 新增「执行日志」章节:四段分隔标题的样例输出,说明末尾两行为什么要有第二行 (光看成长值合计看不出金币跑没跑),以及金币段开头打 ActID 的用途。 本地测试清单补 test_coin.js / test_render.js。
This commit is contained in:
@@ -157,34 +157,56 @@ cron: 1 0,6 * * *
|
||||
|
||||
## 通知内容
|
||||
|
||||
每轮跑完推送一条,格式固定:
|
||||
每轮跑完推送一条。**按体系分组**,每条都带子项名,一眼看出是什么签到完成了:
|
||||
|
||||
```
|
||||
✅ QQ音乐签到 · 全部完成
|
||||
|
||||
🟢 123456789:成长值 +35
|
||||
✓ 任务中心签到 +15
|
||||
✓ 挂件 retCode 0
|
||||
✓ 领奖·头像挂件 +10
|
||||
✓ 福利站签到 5成长值(本月 12 天)
|
||||
△ 领奖·收听节目 未计次,待 App 内收听
|
||||
· 无需处理 3 项:福利站礼券、月里程碑、分享卡
|
||||
🎁 分享卡 https://y.qq.com/m/vip/experience_card/dist/index.html?cardid=xxx
|
||||
🟢 123456789:成长值 +45
|
||||
📈 任务中心(成长值)
|
||||
✓ 签到 +15
|
||||
✓ 挂件 已佩戴
|
||||
✓ 节目 计数 3
|
||||
· 无需处理 2 项:装扮、听书
|
||||
🎁 会员福利站(成长值 + 权益)
|
||||
✓ 签到 15成长值(本月 8 天)
|
||||
✓ 礼券 +10 心愿值
|
||||
· 无需处理 4 项:旅程激励、月里程碑、月礼、臻享抽奖
|
||||
💰 金币中心(金币,不计成长值)
|
||||
✓ 签到 已签 + 30 金币
|
||||
✓ 抽奖签到 已签 + 已领
|
||||
🎫 VIP 体验券
|
||||
✓ 分享卡 新建 1 张,还能被领 3 次
|
||||
🔗 领卡链接 https://y.qq.com/m/vip/experience_card/dist/index.html?cardid=xxx
|
||||
|
||||
———
|
||||
轮次: 00:01 / 06:02 双轮(任务20跨天滚动 + 福利站兜底)
|
||||
节目任务(20)依赖 App 内正常收听计入(播放上报未启用)
|
||||
时间: 2026/11/4 23:10:05
|
||||
时间: 2026/11/7 00:01:24
|
||||
```
|
||||
|
||||
**标题就是结论**:`✅ 全部完成` / `⚠️ 有未完成项`,不用点开就知道要不要管。
|
||||
|
||||
每个账号下分四类:
|
||||
### 分组规则
|
||||
|
||||
| 组 | emoji | 说明 |
|
||||
|---|---|---|
|
||||
| 任务中心 | 📈 | 成长值,`music.lvz.*` |
|
||||
| 会员福利站 | 🎁 | 成长值 + 权益,`music.vipcgi.*` |
|
||||
| 金币中心 | 💰 | **金币,不计成长值**,`music.actCenter.*` |
|
||||
| VIP 体验券 | 🎫 | 分享卡 |
|
||||
| 其他 | 📌 | 兜底,未知前缀落这里 |
|
||||
|
||||
- 组内每条都是「**子项名 + detail**」,不会出现只有 detail 的行
|
||||
- **整组全 skip 时收成一行**:`💰 金币中心(金币,不计成长值):签到、抽奖签到 今日无需处理`
|
||||
- 金币组标题固定带「不计成长值」,避免 `+30 金币` 被读成成长值
|
||||
|
||||
### 符号
|
||||
|
||||
| 符号 | 含义 |
|
||||
|---|---|
|
||||
| `✓` | 做到了(带结果,如 `+15`、`retCode 0`) |
|
||||
| `△` | 部分完成 / 留待下次(如任务20未计次、写锁) |
|
||||
| `✓` | 做到了(带结果,如 `+15`、`已佩戴`) |
|
||||
| `△` | 部分完成 / 留待下次(如任务20未计次、写锁、ActID 过期) |
|
||||
| `✗` | 失败(接口报错、code 非预期) |
|
||||
| `·` | 无需处理(今日已完成 / 未开放),**折叠成一行**,不占版面 |
|
||||
|
||||
@@ -192,7 +214,39 @@ cron: 1 0,6 * * *
|
||||
全 `✓`/`·` → `✅`。登录态失效单独用 🔴 并直接给处理指引,不进明细列表。
|
||||
|
||||
明细来源是 `QMClient.steps`:每个动作调一次 `step(name, status, detail)`,
|
||||
`verdict()` 汇总。新增任务时记得补一句 `step()`,否则它在通知里不可见。
|
||||
`verdict()` 汇总。**新增任务时记得补一句 `step()`,且 name 用「体系·子项」两段式**,
|
||||
否则它在通知里会被归到「其他」组。
|
||||
|
||||
## 执行日志
|
||||
|
||||
日志前缀同样是「体系·子项」两段,`run()` 里还有四段分隔标题:
|
||||
|
||||
```
|
||||
───── ① 任务中心(成长值)─────
|
||||
[任务中心·签到] 签到成功 成长值+15
|
||||
[任务中心·挂件] UsePendant retCode:0
|
||||
[任务中心·节目] 开始标记已挂(播放上报未启用,App 内正常收听计入)
|
||||
|
||||
───── ② 会员福利站(成长值 + 权益)─────
|
||||
[福利站·签到] 签到成功:15成长值(本月 9 天)
|
||||
[福利站·礼券] 某券 领取成功 +10心愿值
|
||||
|
||||
───── ③ 金币中心(金币,不计入成长值)─────
|
||||
[金币·签到] 开始:ActID=Z25hHGi ScenesID=2
|
||||
[金币·签到] 签到并领取成功:30 金币
|
||||
[金币·抽奖签到] 开始:ActID=Z156KEu
|
||||
[金币·抽奖签到] 今日已签
|
||||
|
||||
───── ④ VIP 体验券(分享卡)─────
|
||||
[分享卡] 只读模式(QM_SHARE_CARD 未置 on),不创建新卡
|
||||
|
||||
[QQ音乐] 本次新增成长值合计: 45
|
||||
[QQ音乐] 金币中心为独立体系,不产成长值(明细见上方 ③ 段)
|
||||
```
|
||||
|
||||
**最后两行是关键**:光看「成长值合计: 45」不知道金币那部分跑没跑,所以补了第二行说明。
|
||||
|
||||
金币段开头会打 `ActID=...`,换季排查时直接能看到脚本用的是哪个 ID。
|
||||
|
||||
## 通知发不出去怎么查
|
||||
|
||||
@@ -390,6 +444,8 @@ node scrip_qqmusic_checkin.js # 无 env 时优雅跳过
|
||||
SH_QQMUSIC_KEY='123#Q_H_L_x' node -e "console.log(require('./scrip_qqmusic_checkin').parseAccounts())"
|
||||
|
||||
node test_sign_run.js # 签名对拍(需先 python test_sign_vector.py 生成期望)
|
||||
node test_coin.js # 金币中心 19 条断言(mock https,不联网)
|
||||
node test_render.js # 通知分组 24 条断言(纯函数,不联网)
|
||||
node ../test_common_notify.js # 通知实现(69 条断言,见仓库根 README)
|
||||
node ../_probe_meta.js # 青龙元数据注解
|
||||
```
|
||||
|
||||
Reference in New Issue
Block a user