fix(qdreader): handle auth and risk-conf daily tasks

This commit is contained in:
2026-06-20 16:15:01 +08:00
parent ecd4d63d41
commit 32747e9c16
+17 -5
View File
@@ -4,7 +4,7 @@
//[author: Hermes] //[author: Hermes]
//[service: BOSS] //[service: BOSS]
//[class: 工具类] //[class: 工具类]
// [version: 2.15.5] // [version: 2.15.6]
// [platform: web,qq,wx,tg,tb,fs,we] // [platform: web,qq,wx,tg,tb,fs,we]
// [public: false] // [public: false]
// [price: 0] // [price: 0]
@@ -302,7 +302,7 @@ function contentText() {
} }
function usage() { function usage() {
return [ return [
"启点读书签到插件 v2.15.5", "启点读书签到插件 v2.15.6",
"【一级菜单】", "【一级菜单】",
"账号管理:启点账号", "账号管理:启点账号",
"执行查询:启点查询", "执行查询:启点查询",
@@ -442,13 +442,18 @@ function resultCode(obj) {
function resultOk(obj) { function resultOk(obj) {
var env = responseEnvelope(obj) var env = responseEnvelope(obj)
var code = resultCode(env) var code = resultCode(env)
var status = env && (env.status || env.Status) var status = env && (env.status || env.Status || env.statusCode || env.StatusCode)
if (typeof status === "number" && status >= 400) return false
if (String(status) === "401" || String(status) === "403") return false
return code === undefined || code === 0 || code === "0" || code === 200 || code === "200" || status === "ok" || status === "success" return code === undefined || code === 0 || code === "0" || code === 200 || code === "200" || status === "ok" || status === "success"
} }
function resultMsg(obj) { function resultMsg(obj) {
obj = responseEnvelope(obj) obj = responseEnvelope(obj)
if (!obj) return "" if (!obj) return ""
return obj.Message || obj.Msg || obj.message || obj.msg || obj.toast || (obj.data && (obj.data.message || obj.data.msg || obj.data.toast || obj.data.Message || obj.data.Msg)) || (obj.Data && (obj.Data.message || obj.Data.msg || obj.Data.toast || obj.Data.Message || obj.Data.Msg)) || "" var status = obj.status || obj.Status || obj.statusCode || obj.StatusCode
if (String(status) === "401") return "登录状态已失效,请更新 Cookie"
if (String(status) === "403") return "接口鉴权失败,请更新 Cookie"
return obj.Message || obj.Msg || obj.message || obj.msg || obj.error || obj.toast || (obj.data && (obj.data.message || obj.data.msg || obj.data.error || obj.data.toast || obj.data.Message || obj.data.Msg)) || (obj.Data && (obj.Data.message || obj.Data.msg || obj.Data.error || obj.Data.toast || obj.Data.Message || obj.Data.Msg)) || ""
} }
function successLikeMsg(msg) { function successLikeMsg(msg) {
msg = String(msg || "") msg = String(msg || "")
@@ -705,6 +710,7 @@ function taskRunCount(task, def) {
} }
function taskAccepted(res) { return taskResultOk(res) || Number(resultCode(res)) === 9 } function taskAccepted(res) { return taskResultOk(res) || Number(resultCode(res)) === 9 }
function riskConf(res) { function riskConf(res) {
res = responseEnvelope(res)
var data = res && (res.Data || res.data || res.ResultData || res.resultData) var data = res && (res.Data || res.data || res.ResultData || res.resultData)
return data && (data.RiskConf || data.riskConf || data.Risk || data.risk) return data && (data.RiskConf || data.riskConf || data.Risk || data.risk)
} }
@@ -769,10 +775,12 @@ function doDailyTask(cookie) {
if (!taskResultOk(main)) return { name: "每日任务", ok: false, msg: resultMsg(main) || "获取任务列表失败", path: "/argus/api/v2/video/adv/mainPage" } if (!taskResultOk(main)) return { name: "每日任务", ok: false, msg: resultMsg(main) || "获取任务列表失败", path: "/argus/api/v2/video/adv/mainPage" }
var data = payloadData(main) var data = payloadData(main)
var done = 0 var done = 0
var riskSubmitted = false
var pre = surpriseBenefit(data) var pre = surpriseBenefit(data)
if (pre && !taskFinished(pre) && taskIdOf(pre)) { if (pre && !taskFinished(pre) && taskIdOf(pre)) {
var pr = finishVideoTask(taskIdOf(pre), cookie, 1) var pr = finishVideoTask(taskIdOf(pre), cookie, 1)
done += pr.ok done += pr.ok
if (riskConf(pr.last)) riskSubmitted = true
if (pr.ok < pr.total) return { name: "每日任务", ok: false, msg: resultMsg(pr.last) || "惊喜福利任务失败", path: "/argus/api/v1/video/adv/finishWatch" } if (pr.ok < pr.total) return { name: "每日任务", ok: false, msg: resultMsg(pr.last) || "惊喜福利任务失败", path: "/argus/api/v1/video/adv/finishWatch" }
} }
var tasks = dailyTaskList(main) var tasks = dailyTaskList(main)
@@ -787,6 +795,7 @@ function doDailyTask(cookie) {
if (oneAd && !taskReceived(oneAd) && taskIdOf(oneAd)) { if (oneAd && !taskReceived(oneAd) && taskIdOf(oneAd)) {
var ar = finishVideoTask(taskIdOf(oneAd), cookie, 1) var ar = finishVideoTask(taskIdOf(oneAd), cookie, 1)
done += ar.ok done += ar.ok
if (riskConf(ar.last)) riskSubmitted = true
if (ar.ok < ar.total) return { name: "每日任务", ok: false, msg: resultMsg(ar.last) || "完成1个广告任务失败", path: "/argus/api/v1/video/adv/finishWatch" } if (ar.ok < ar.total) return { name: "每日任务", ok: false, msg: resultMsg(ar.last) || "完成1个广告任务失败", path: "/argus/api/v1/video/adv/finishWatch" }
} }
if (!target) return { name: "每日任务", ok: false, msg: "未找到每日任务任务", path: "/argus/api/v2/video/adv/mainPage" } if (!target) return { name: "每日任务", ok: false, msg: "未找到每日任务任务", path: "/argus/api/v2/video/adv/mainPage" }
@@ -795,12 +804,15 @@ function doDailyTask(cookie) {
if (!tid) return { name: "每日任务", ok: false, msg: "每日任务缺少 TaskId", path: "/argus/api/v2/video/adv/mainPage" } if (!tid) return { name: "每日任务", ok: false, msg: "每日任务缺少 TaskId", path: "/argus/api/v2/video/adv/mainPage" }
var tr = finishVideoTask(tid, cookie, 3) var tr = finishVideoTask(tid, cookie, 3)
done += tr.ok done += tr.ok
if (riskConf(tr.last)) riskSubmitted = true
if (tr.ok < tr.total) return { name: "每日任务", ok: false, msg: resultMsg(tr.last) || "每日任务广告失败", path: "/argus/api/v1/video/adv/finishWatch" } if (tr.ok < tr.total) return { name: "每日任务", ok: false, msg: resultMsg(tr.last) || "每日任务广告失败", path: "/argus/api/v1/video/adv/finishWatch" }
var verify = qdGet("/argus/api/v2/video/adv/mainPage", {}, cookie) var verify = qdGet("/argus/api/v2/video/adv/mainPage", {}, cookie)
var after = dailyTaskList(verify) var after = dailyTaskList(verify)
var finished = false var finished = false
for (var v = 0; v < after.length; v++) if (taskTitle(after[v]) === "完成3个广告任务得奖励" && taskReceived(after[v])) { finished = true; break } for (var v = 0; v < after.length; v++) if (taskTitle(after[v]) === "完成3个广告任务得奖励" && taskReceived(after[v])) { finished = true; break }
return { name: "每日任务", ok: finished, msg: finished ? "任务已完成" : "任务未完成", path: "/argus/api/v2/video/adv/mainPage" } if (finished) return { name: "每日任务", ok: true, msg: "任务已完成", path: "/argus/api/v2/video/adv/mainPage" }
if (done > 0 && riskSubmitted) return { name: "每日任务", ok: true, msg: "已提交,状态待刷新", path: "/argus/api/v2/video/adv/mainPage" }
return { name: "每日任务", ok: false, msg: "任务未完成", path: "/argus/api/v2/video/adv/mainPage" }
} }
function doLotteryTask(cookie) { function doLotteryTask(cookie) {
var detail = qdGet("/argus/api/v2/checkin/detail", {}, cookie) var detail = qdGet("/argus/api/v2/checkin/detail", {}, cookie)