-
Notifications
You must be signed in to change notification settings - Fork 14
/
Copy pathmain.js
77 lines (65 loc) · 2.06 KB
/
main.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
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
/*
* @Descripttion: 什么值得买签到程序
* @Author: xuess<[email protected]>
* @Date: 2019-06-04 18:00:15
* @LastEditors: 午休
* @LastEditTime: 2020-09-09 20:50:57
*/
const fu = require("./lib/fu.js"); //文件操作
const smzdm = require("./smzdm");
const schedule = require("node-schedule"); //定时器
const { getRandom, sleep } = require("./lib/utils"); //工具类
const { sendMailForImage, sendMailErr } = require("./lib/mail"); //发邮件
const { cookieListValKey } = require("./config"); //配置文件
(async () => {
//延迟执行签到
const setTimeSign = async (userinfo, index) => {
// 随机
await sleep(getRandom(100000, 300000));
// 执行签到
if (userinfo.type == "smzdm") {
await smzdm(userinfo.cookies, userinfo.username);
}
// TODO 这里可以执行其他签到程序
// 执行到最后一个 发送邮件
// TODO 这里可以执行完就发送邮件
if (cookieListValKey.length - 1 == index) {
// await sendMailForImage("签到截图");
console.log("打完收工!");
}
};
const doSign = async () => {
// 删除截图目录
await fu.delete(["./screenshot/smzdm"]);
// 新建目录
await fu.mkdir(["./screenshot/smzdm"]);
try {
// 立即执行 签到
for (let i = 0; i < cookieListValKey.length; i++) {
await setTimeSign(cookieListValKey[i], i);
}
} catch (e) {
sendMailErr("主签到报错", e);
}
};
//每天9点 30 执行 定时执行签到
schedule.scheduleJob("40 30 9 * * *", async () => {
await doSign();
});
//每天12点 10 执行 定时执行签到
schedule.scheduleJob("30 10 12 * * *", async () => {
await doSign();
});
//每天20点 10 执行 定时执行签到
schedule.scheduleJob("30 10 20 * * *", async () => {
await doSign();
});
// 立即执行
doSign();
// sendMailForImage("签到截图");
//每天18点30执行 发邮件 发送签到截图
schedule.scheduleJob("10 30 18 * * *", () => {
//发邮件 签到截图
sendMailForImage("签到截图");
});
})();