Skip to content

Commit

Permalink
feat: 活动任务添加自动任务
Browse files Browse the repository at this point in the history
  • Loading branch information
TomyJan committed Jul 30, 2023
1 parent f63b4dc commit e2b0da4
Showing 1 changed file with 37 additions and 0 deletions.
37 changes: 37 additions & 0 deletions model/autoTask.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ import chalk from 'chalk'
import fs from 'node:fs'
import schedule from 'node-schedule'
import { doBBSDailyTask } from './bbsTask.js'
import { doBbsActivityTask } from './bbsActivityTask.js'
import { doPnsSignIn } from './gameSignIn.js'
import {
dataPath,
Expand Down Expand Up @@ -30,6 +31,11 @@ export async function initAutoTask() {
bbsDailyTask()
})

logger.info(chalk.rgb(134, 142, 204)(`[库洛插件] 载入定时任务 bbsActivityTask`))
schedule.scheduleJob('0 2 5 * * ? ', function () {
bbsActivityTask()
})

logger.info(
chalk.rgb(134, 142, 204)(`[库洛插件] 载入定时任务 checkUpdateTask`)
)
Expand Down Expand Up @@ -108,6 +114,37 @@ async function bbsDailyTask() {
return true
}

async function bbsActivityTask() {
logger.info(`[库洛插件] 自动活动任务开始...`)

const gameSignUins = fs
.readdirSync(dataPath + '/token')
.filter((file) => file.endsWith('.json'))

for (let i in gameSignUins) {
let gameSignUin = gameSignUins[i].replace('.json', '')
logger.info(`[库洛插件] 自动活动任务: 开始为 ${gameSignUin} 执行`)
let startTime = Date.now()
const tokenData = await getToken(gameSignUin)
const accNum = Object.keys(tokenData).length
let msg = '[库洛插件]自动活动任务\n\n'
for (const kuro_uid in tokenData) {
if (tokenData.hasOwnProperty(kuro_uid)) {
msg += await doBbsActivityTask(gameSignUin, kuro_uid)
// TODO: 没有活动时直接返回并且不推送消息
msg += '\n'
} else {
msg += `账号 ${kuro_uid}: \ntoken 格式错误\n\n`
}
await sleepAsync(getRandomInt(1000, 3000))
}
msg += `共用时 ${Math.floor((Date.now() - startTime) / 1000)}s\n`
await sendMsgFriend(gameSignUin, msg.trimEnd())
}
logger.info(`[库洛插件] 自动活动任务: 任务完成`)
return true
}

export async function checkUpdateTask() {
logger.info(`[库洛插件] 检查更新任务开始...`)
let remoteVersion = await getRemoteVersion('GitHub')
Expand Down

0 comments on commit e2b0da4

Please sign in to comment.