Skip to content

Commit 3e377b4

Browse files
committed
feat: 自动任务随机延迟
1 parent a602285 commit 3e377b4

File tree

3 files changed

+20
-12
lines changed

3 files changed

+20
-12
lines changed

model/bbsTask.js

Lines changed: 13 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import { getToken } from './kuroBBSTokenHandler.js'
2-
import { sleepAsync } from './utils.js'
2+
import { getRandomInt,sleepAsync } from './utils.js'
33
import kuroApi from './kuroApi.js'
44

55
export default class bbsTask {
@@ -14,7 +14,7 @@ export default class bbsTask {
1414
if (tokenData && Object.keys(tokenData).length > 0) {
1515
const accNum = Object.keys(tokenData).length
1616
await this.e.reply(
17-
`QQ ${uin} 绑定了 ${accNum} 个 token\n开始库街区每日, 稍等一会儿哟...`
17+
`QQ ${uin} 绑定了 ${accNum} 个 token\n开始库街区每日, 预计需要 ${12*accNum} - ${35*accNum} s ~`
1818
)
1919
let msg = ''
2020
for (const kuro_uid in tokenData) {
@@ -24,7 +24,7 @@ export default class bbsTask {
2424
} else {
2525
msg += `账号 ${kuro_uid}: \ntoken 格式错误\n\n`
2626
}
27-
await sleepAsync(3000)
27+
await sleepAsync(getRandomInt(1000,3000))
2828
}
2929

3030
await this.e.reply(msg.trimEnd())
@@ -78,9 +78,10 @@ export async function doBBSDailyTask(uin, kuro_uid) {
7878
return `账号 ${kuro_uid}: \ntoken 失效\n`
7979
else doBBSDailyTaskRet += `失败: ${rsp_signIn.msg}\n`
8080
break
81-
} else await sleepAsync(800)
81+
} else await sleepAsync(getRandomInt(600,1000))
8282
} while (tryAgain)
8383

84+
await sleepAsync(getRandomInt(1000,3000))
8485
doBBSDailyTaskRet += '帖子浏览: '
8586
// 开始尝试 2 次取帖子列表, 获取不到就不浏览和点赞
8687
tryAgain = true
@@ -94,14 +95,15 @@ export async function doBBSDailyTask(uin, kuro_uid) {
9495

9596
if (!tryAgain) {
9697
if (typeof rsp_list !== 'string' && rsp_list.code === 200) break
97-
doBBSDailyTaskRet += `获取失败: ${rsp_list.msg}\n论坛点赞: 失败\n` // 直接处理完返回值
98+
doBBSDailyTaskRet += `获取失败: ${rsp_list.msg}\n论坛点赞: 已取消\n` // 直接处理完返回值
9899
rsp_list = ''
99-
} else await sleepAsync(300)
100+
} else await sleepAsync(getRandomInt(200,400))
100101
} while (tryAgain)
101102

102103
if (rsp_list) {
104+
await sleepAsync(getRandomInt(500,2000))
103105
// 获取到帖子就浏览点赞, 获取不到上面已经返回错误了
104-
//开始尝试 6 次浏览帖子
106+
// 开始尝试 6 次浏览帖子
105107
tryAgain = true
106108
tryTimes = 0
107109
let succCount = 0
@@ -115,9 +117,10 @@ export async function doBBSDailyTask(uin, kuro_uid) {
115117

116118
if (typeof rsp_getPostDetail !== 'string') if (++succCount >= 3) break // 成功浏览计数, 够了就返回
117119

118-
await sleepAsync(1000)
120+
if (tryAgain) await sleepAsync(getRandomInt(500,2000))
119121
} while (tryAgain)
120122
doBBSDailyTaskRet += `成功 ${succCount} 次\n论坛点赞: `
123+
await sleepAsync(getRandomInt(500,2000))
121124
// 开始尝试 10 次点赞
122125
tryAgain = true
123126
tryTimes = 0
@@ -140,13 +143,14 @@ export async function doBBSDailyTask(uin, kuro_uid) {
140143

141144
if (typeof rsp_like !== 'string') if (++succCount >= 5) break // 成功浏览计数, 够了就返回
142145

143-
await sleepAsync(1000)
146+
if (tryAgain) await sleepAsync(getRandomInt(500,2000))
144147
} while (tryAgain)
145148
doBBSDailyTaskRet += `成功 ${succCount} 次\n`
146149
}
147150

148151
// TODO: 尝试 2 次分享任务
149152
//
153+
await sleepAsync(getRandomInt(500,2000))
150154

151155
return doBBSDailyTaskRet
152156
}

model/gameSignIn.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import { getToken } from './kuroBBSTokenHandler.js'
2-
import { sleepAsync } from './utils.js'
2+
import { getRandomInt,sleepAsync } from './utils.js'
33
import kuroApi from './kuroApi.js'
44

55
export default class gameSignIn {
@@ -28,7 +28,7 @@ export default class gameSignIn {
2828
} else {
2929
msg += `账号 ${kuro_uid}: \ntoken 格式错误\n\n`
3030
}
31-
await sleepAsync(3000)
31+
await sleepAsync(getRandomInt(1000,3000))
3232
}
3333

3434
await this.e.reply(msg.trimEnd())
@@ -108,7 +108,7 @@ export async function doPnsSignIn(uin, kuro_uid) {
108108
: '') +
109109
`\n`
110110

111-
await sleepAsync(3000)
111+
await sleepAsync(getRandomInt(1000,3000))
112112
}
113113

114114
return doPnsSignInRet

model/utils.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,10 @@ export async function sleepAsync(sleepms) {
88
})
99
}
1010

11+
export function getRandomInt(min, max) {
12+
return Math.floor(Math.random() * (max - min)) + min;
13+
}
14+
1115
/**
1216
* 发送好友消息
1317
* @param QQ QQ号

0 commit comments

Comments
 (0)