fix(qdreader): use single cron for archive and sign
This commit is contained in:
@@ -1,13 +1,13 @@
|
||||
# 启点读书 QDReader 签到 Autman 插件
|
||||
|
||||
QDReader/起点读书 Autman 签到插件。用户侧触发词统一使用“启点”,避免平台关键词麻烦;QX 只负责抓取 Cookie。账号管理、执行查询、签到和日志归档都在同一个 Autman 插件内完成;业务上仍保持两个独立定时:每日 00:00 只归档清日志,每日 07:15 只执行签到。
|
||||
QDReader/起点读书 Autman 签到插件。用户侧触发词统一使用“启点”,避免平台关键词麻烦;QX 只负责抓取 Cookie。账号管理、执行查询、签到和日志归档都在同一个 Autman 插件内完成;业务上使用一个 cron 表达式 `1 0,7 * * *`:每日 00:01 只归档清日志,每日 07:01 只执行签到。
|
||||
|
||||
## 文件位置
|
||||
|
||||
正式插件文件:
|
||||
|
||||
```text
|
||||
plugins/qdreader/qdreader_sign_autman.js # 单插件:00:00 归档清日志;07:15 运行签到
|
||||
plugins/qdreader/qdreader_sign_autman.js # 单插件单 cron:00:01 归档清日志;07:01 运行签到
|
||||
```
|
||||
|
||||
实机 JS 导入副本:
|
||||
@@ -132,9 +132,9 @@ set(key, value)
|
||||
3. `POST https://h5.if.qidian.com/argus/api/v3/checkin/checkin` 完成签到。
|
||||
4. 写入单账号当日结果 `qdreader_last_result_json`,包括 `ok/msg/time/source/runId`。
|
||||
5. 写入当日批次日志 `qdreader_last_run_json`,包括触发来源、开始/结束时间、成功/失败/总数和每账号结果;即使账号执行异常也会记录失败日志。
|
||||
6. 插件内有两个 cron:`0 0 * * *` 和 `15 7 * * *`。
|
||||
7. 每日 00:00 触发时只做日志归档;为防止调度器延迟,系统触发发生在 00:00-00:04 都按归档处理:把上一份 `qdreader_last_run_json` 按完成日期写入 `qdreader_archive_json`,再清空 `qdreader_last_result_json` / `qdreader_last_run_json`;不请求签名网关、不执行签到。
|
||||
8. 每日 07:15 触发时只执行签到并反馈结果,不做归档。
|
||||
6. 插件内只有一个 cron:`1 0,7 * * *`。
|
||||
7. 每日 00:01 触发时只做日志归档;系统触发按小时分流,0 点分支归档:把上一份 `qdreader_last_run_json` 按完成日期写入 `qdreader_archive_json`,再清空 `qdreader_last_result_json` / `qdreader_last_run_json`;不请求签名网关、不执行签到。
|
||||
8. 每日 07:01 触发时只执行签到并反馈结果,不做归档。
|
||||
9. 汇总每个账号签到结果。
|
||||
|
||||
## 查询数据来源
|
||||
|
||||
@@ -4,18 +4,17 @@
|
||||
//[author: Hermes]
|
||||
//[service: BOSS]
|
||||
//[class: 工具类]
|
||||
//[version: 2.5.4]
|
||||
//[version: 2.5.5]
|
||||
//[platform: web,qq,wx,tg,tb,fs,we]
|
||||
//[public: false]
|
||||
//[price: 0]
|
||||
//[disable: false]
|
||||
//[description: 启点读书(QDReader) Autman 签到插件:保存 QX 抓到的 H5 Cookie,支持手动“启点签到”和每日 07:15 定时签到,每日 00:00 独立归档并清空日志;带独立 bucket、多用户隔离、请求重试、签名响应解析、结果摘要和安全脱敏。]
|
||||
//[description: 启点读书(QDReader) Autman 签到插件:保存 QX 抓到的 H5 Cookie,支持手动“启点签到”;定时使用 `1 0,7 * * *`,每日 00:01 归档并清空日志、每日 07:01 签到;带独立 bucket、多用户隔离、请求重试、签名响应解析、结果摘要和安全脱敏。]
|
||||
//[rule: ^启点(账号|查询|ck|CK|cookie|Cookie|签到|读书|归档|日志归档)(.*)$]
|
||||
//[rule: ^qdreader(.*)$]
|
||||
//[admin: true]
|
||||
//[priority: 600]
|
||||
//[cron: 0 0 * * *]
|
||||
//[cron: 15 7 * * *]
|
||||
//[cron: 1 0,7 * * *]
|
||||
|
||||
|
||||
var BUCKET = "hermes_qidian"
|
||||
@@ -261,7 +260,7 @@ function contentText() {
|
||||
}
|
||||
function usage() {
|
||||
return [
|
||||
"启点读书签到插件 v2.5.4",
|
||||
"启点读书签到插件 v2.5.5",
|
||||
"【一级菜单】",
|
||||
"账号管理:启点账号",
|
||||
"执行查询:启点查询",
|
||||
@@ -271,7 +270,7 @@ function usage() {
|
||||
"指定签到:启点签到 <uid>",
|
||||
"【配置】",
|
||||
"签名网关:Autman 参数 hermes_qidian.qdreader_sign_api,默认 " + DEFAULT_SIGN_API,
|
||||
"定时:每日 00:00 只归档并清空日志;每日 07:15 只自动签到;QX 只负责抓 cookie。"
|
||||
"定时:每日 00:01 只归档并清空日志;每日 07:01 只自动签到;QX 只负责抓 cookie。"
|
||||
].join("\n")
|
||||
}
|
||||
function stripCommand(text) {
|
||||
@@ -455,10 +454,9 @@ function latestArchiveForVisible(uids) {
|
||||
function cronMode() {
|
||||
var d = new Date()
|
||||
var h = d.getHours ? d.getHours() : 7
|
||||
var m = d.getMinutes ? d.getMinutes() : 15
|
||||
// Autman cron can be delayed by scheduler/load; allow a 5-minute archive-only window after 00:00.
|
||||
// Outside 00:00-00:04, system-triggered runs follow the business sign path.
|
||||
if (h === 0 && m < 5) return "archive"
|
||||
// Single cron: 1 0,7 * * *
|
||||
// 00:01 system run archives only; 07:01 system run signs only.
|
||||
if (h === 0) return "archive"
|
||||
return "sign"
|
||||
}
|
||||
function formatArchiveReply(ret) {
|
||||
|
||||
Reference in New Issue
Block a user