/*smzdm 全民众测能量值任务脚本项目地址: https://github.com/hex-ci/smzdm_scriptcron: 20 15 * * **/const Env = require('./env');const { requestApi, getEnvCookies, wait } = require('./bot');const notify = require('./sendNotify');const { SmzdmTaskBot } = require('./library_task');// ------------------------------------const $ = new Env('smzdm 全民众测能量值任务');class SmzdmTestingTaskBot extends SmzdmTaskBot {constructor(cookie) {super(cookie, $);}// 主函数async run() {const activityId = await this.getTestingActivityId();if (!activityId) {return '';}await wait(5, 10);const activityInfo = await this.getTestingActivityInfo(activityId);if (!activityInfo) {return '';}await wait(5, 10);let notifyMsg = await this.doTasks(activityInfo.activity_task.default_list);await wait(3, 5);// 查询当前拥有的能量数量, 以及过期时间notifyMsg += await this.getMyTestingInfo();return notifyMsg || '无可执行任务';}// 获取当前能量值任务的活动 IDasync getTestingActivityId() {$.log('获取活动 ID');const { isSuccess, data, response } = await requestApi('https://zhiyou.m.smzdm.com/task/task/ajax_get_activity_id', {method: 'get',data: {'from': 'zhongce'},headers: {...this.getHeadersForWeb(),Origin: 'https://test.m.smzdm.com',Referer: 'https://test.m.smzdm.com/'}});if (isSuccess) {return data.data.activity_id;}else {$.log(`获取活动 ID 失败!${response}`);return false;}}// 获取活动下的所有任务async getTestingActivityInfo(id) {$.log('获取活动信息');const { isSuccess, data, response } = await requestApi('https://zhiyou.m.smzdm.com/task/task/ajax_get_activity_info', {method: 'get',data: {'activity_id': id},headers: this.getHeadersForWeb()});if (isSuccess) {return data.data;}else {$.log(`获取活动信息失败!${response}`);return false;}}// 众测中心-必中券信息查询async getMyTestingInfo() {$.log('获取必中券信息');const { isSuccess, data, response } = await requestApi('https://test.m.smzdm.com/win_coupon/user_data', {method: 'get',headers: this.getHeadersForWeb()});if (isSuccess) {const msg = `当前拥有必中券: ${data.data.my_energy.my_energy_total}\n必中券过期时间: ${data.data.my_energy.energy_expired_time}`;$.log(msg);return `\n${msg}\n`;}else {$.log(`获取个人必中券信息失败!${response}`);return '';}}// 领取奖励async receiveReward(taskId) {const { isSuccess, response } = await requestApi('https://zhiyou.m.smzdm.com/task/task/ajax_activity_task_receive', {method: 'post',data: {'task_id': taskId},headers: this.getHeadersForWeb()});if (isSuccess) {$.log('领取成功!');return {isSuccess,msg: ''};}else {$.log(`领取任务奖励失败!${response}`);return {isSuccess,msg: '领取任务奖励失败!'};}}}!(async () => {if (process.env.SMZDM_TASK_TESTING != 'yes') {$.log('\n🟡请设置 SMZDM_TASK_TESTING 环境变量值为 yes 后才能运行全民众测能量值任务!');return;}const cookies = getEnvCookies();if (cookies === false) {$.log('\n请先设置 SMZDM_COOKIE 环境变量');return;}let notifyContent = '';for (let i = 0; i < cookies.length; i++) {const cookie = cookies[i];if (!cookie) {continue;}if (i > 0) {$.log();await wait(10, 30);$.log();}const sep = `\n****** 账号${i + 1} ******\n`;$.log(sep);const bot = new SmzdmTestingTaskBot(cookie);const msg = await bot.run();notifyContent += `${sep}${msg}\n`;}$.log();await notify.sendNotify($.name, notifyContent);})().catch((e) => {$.log('', `❌ ${$.name}, 失败! 原因: ${e}!`, '')}).finally(() => {$.done();});
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。