forked from Wenmoux/checkbox
-
Notifications
You must be signed in to change notification settings - Fork 0
/
index.js
56 lines (53 loc) · 2.6 KB
/
index.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
// 云函数使用
const yaml = require("js-yaml");
const fs = require('fs');
const yargs = require('yargs');
var argv = yargs.argv;
config = null,notify = null,signlist = [],logs = "",needPush = false
//自行添加任务 名字看脚本里的文件名 比如csdn.js 就填"csdn"
var cbList = []
if (fs.existsSync("./config.yml")) config = yaml.load(fs.readFileSync('./config.yml', 'utf8'));
let QL = process.env.QL_DIR
if (QL) {
console.log("当前是青龙面板,路径:"+QL)
if(fs.existsSync(`/${QL}/data/config/config.sh`)) console.log("建议更新到最新版青龙再来运行哦,或者手动修改路径叭~")
cbList = process.env.cbList ? process.env.cbList.split("&") : []
if (!fs.existsSync(`/${QL}/data/config/config.yml`)) {
console.log("您还没有填写cookies配置文件,请配置好再来运行8...\n配置文件路径/ql/config/config.yml\n如没有文件复制一份config.yml.temple并改名为config.yml")
return;
} else{
if(yaml.load) config = yaml.load(fs.readFileSync(`/${QL}/data/config/config.yml`, 'utf8'))
else console.log("亲,您的依赖掉啦,但是没有完全掉 请重装依赖\npnpm install axios crypto crypto-js fs iconv-lite js-yaml yargs\n或者\nnpm install axios crypto crypto-js fs iconv-lite js-yaml yargs")
}
}
if(config) signlist = config.cbList.split("&")
if (config && config.needPush) needPush = true
var signList = (argv._.length) > 0 ? argv._ : (cbList.length>0 ? cbList : signlist)
function start(taskList) {
return new Promise(async (resolve) => {
try {
console.log("任务个数 " + signList.length)
console.log("------------开始签到任务------------");
for (let i = 0; i < taskList.length; i++) {
console.log(`任务${i + 1}执行中`);
let exists = fs.existsSync(`./scripts/${taskList[i]}.js`)
if (exists) {
const task = require(`./scripts/${taskList[i]}.js`);
logs += await task() + " \n\n";
} else {
logs += `${taskList[i]} 不存在该脚本文件,请确认输入是否有误\n\n`
console.log("不存在该脚本文件,请确认输入是否有误")
}
}
console.log("------------任务执行完毕------------\n");
if(needPush)await require("./sendmsg")(logs+"\n\n吹水群:https://t.me/htuoypa");
} catch (err) {
console.log(err);
}
resolve();
});
}
//云函数入口
exports.main_handler = async () => {
await start(signList);
};