fix(qdreader): align optional tasks with upstream

This commit is contained in:
2026-05-20 21:57:34 +08:00
parent 9091137852
commit 510f7f086a
5 changed files with 257 additions and 43 deletions
+3 -3
View File
@@ -159,12 +159,12 @@ set(key, value)
4. “今日已签到/已经签到/重复签到”等签到响应按成功处理,避免重复执行时误计失败。
5. 按账号读取 `qdreader_task_pref_json` 后追加完全体任务链路:
- 固定执行领取奖励:`POST /argus/api/v3/checkin/receivegifts`
- 可选激励任务:`GET /argus/api/v2/video/adv/mainPage`,再对未完成任务调用 `POST /argus/api/v1/video/adv/finishWatch`
- 可选每日任务:`GET /argus/api/v3/checkin/packagelist`按返回任务调用 `POST /argus/api/v1/video/adv/finishWatch`
- 可选激励任务:`GET /argus/api/v2/video/adv/mainPage`,再对未完成任务调用 `POST /argus/api/v1/video/adv/finishWatch`上游返回 `result=9` 表示视频完成已受理,需要再拉取 `mainPage` 校验,不应直接判失败;
- 可选每日任务:`GET /argus/api/v3/checkin/packagelist`先处理惊喜福利/前置任务,再按标题精确选择“每日任务”执行三次 `finishWatch` 并回查完成状态
- 可选每日抽奖:先 `GET /argus/api/v2/checkin/detail`,有次数时 `POST /argus/api/v2/checkin/lottery`
- 可选每周兑换:`GET /argus/api/v3/checkin/checkinexchangepage`,可兑换时 `POST /argus/api/v3/checkin/exchangegoods`,仅北京时间周日执行;
- 可选章节卡片:`GET /argus/api/v1/readtime/scoremall/chaptercardwithbook`
- 可选大咖荐书:`GET https://magev6.if.qidian.com/argus/api/v2/message/pullmessage`
- 可选大咖荐书:按上游逻辑用 `UserId` 生成 base62 消息 token,先 `pullmessage` 拉会话列表,再带 `senderId` 拉消息、提取最近消息里的 `orderId`,随后调用 `/argus/api/v2/recommend/getrewarddetail``rewardcallback/addbookshelf` 处理奖励;不是只请求一次 `pullmessage`
6. 对签名网关返回 `url 不在允许的接口列表内` 的可选任务,记为“已跳过”而不是账号失败,用于兼容网关白名单尚未覆盖的上游接口。
7. 写入单账号当日结果 `qdreader_last_result_json`,包括 `ok/msg/time/source/runId/tasks`
8. 写入当日批次日志 `qdreader_last_run_json`,包括触发来源、开始/结束时间、成功/失败/总数和每账号结果;即使账号执行异常也会记录失败日志。