diff --git a/jd_jdzz.js b/jd_jdzz.js index bccca162..ffe93d86 100644 --- a/jd_jdzz.js +++ b/jd_jdzz.js @@ -45,7 +45,8 @@ const inviteCodes = [ ] let nowTimes = new Date(new Date().getTime() + new Date().getTimezoneOffset() * 60 * 1000 + 8 * 60 * 60 * 1000); !(async () => { - $.tuanList = [] + $.tuanList = []; + $.authorTuanList = []; await requireConfig(); if (helpAuthor) await getAuthorShareCode('http://qr6pzoy01.hn-bkt.clouddn.com/jd_zz.json'); if (helpAuthor) await getAuthorShareCode('https://raw.githubusercontent.com/gitupdate/updateTeam/master/shareCodes/jd_zz.json'); @@ -81,14 +82,27 @@ let nowTimes = new Date(new Date().getTime() + new Date().getTimezoneOffset() * await notify.sendNotify($.name, allMessage); } } - console.log(`开始账号内部互助 赚京豆-瓜分京豆 活动(优先内部账号互助,如有剩余则给作者lxk0301助力)`) + console.log(`\n\n开始账号内部互助 【赚京豆(微信小程序)-瓜分京豆】活动(优先内部账号互助(需ck大于4个),如有剩余助力次数则给作者lxk0301助力)\n`) for (let i = 0; i < cookiesArr.length; i++) { $.canHelp = true if (cookiesArr[i]) { cookie = cookiesArr[i]; - for (let j = 0; j < $.tuanList.length; ++j) { - await helpFriendTuan($.tuanList[j]) - if(!$.canHelp) break + $.UserName = decodeURIComponent(cookie.match(/pt_pin=([^; ]+)(?=;?)/) && cookie.match(/pt_pin=([^; ]+)(?=;?)/)[1]) + if ($.canHelp && cookiesArr.length > 4) { + console.log(`开始账号内部互助 赚京豆-瓜分京豆 活动,优先内部账号互助`) + for (let j = 0; j < $.tuanList.length; ++j) { + console.log(`账号 ${$.UserName} 开始给 【${$.tuanList[j]['assistedPinEncrypted']}】助力`) + await helpFriendTuan($.tuanList[j]) + if(!$.canHelp) break + } + } + if ($.canHelp) { + console.log(`开始账号内部互助 赚京豆-瓜分京豆 活动,如有剩余则给作者lxk0301助力`) + for (let j = 0; j < $.authorTuanList.length; ++j) { + console.log(`账号 ${$.UserName} 开始给作者lxk0301 ${$.authorTuanList[j]['assistedPinEncrypted']}助力`) + await helpFriendTuan($.authorTuanList[j]) + if(!$.canHelp) break + } } } } @@ -103,14 +117,15 @@ let nowTimes = new Date(new Date().getTime() + new Date().getTimezoneOffset() * async function jdWish() { $.bean = 0 $.tuan = null - $.hasOpen = false + $.hasOpen = false; + $.assistStatus = 0; await getTaskList(true) await getUserTuanInfo() if (!$.tuan) { await openTuan() if ($.hasOpen) await getUserTuanInfo() } - if ($.tuan) $.tuanList.push($.tuan) + if ($.tuan && $.assistStatus !== 3) $.tuanList.push($.tuan) await helpFriends() await getUserInfo() @@ -152,14 +167,28 @@ function showMsg() { } function getAuthorShareCode(url) { return new Promise(resolve => { - $.get({url: `${url}?${new Date()}`, - headers:{ + const options = { + url: `${url}?${new Date()}`, "timeout": 10000, headers: { "User-Agent": "Mozilla/5.0 (iPhone; CPU iPhone OS 13_2_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Mobile/15E148 Safari/604.1 Edg/87.0.4280.88" - }, timeout: 200000}, async (err, resp, data) => { + } + }; + if ($.isNode() && process.env.TG_PROXY_HOST && process.env.TG_PROXY_PORT) { + const tunnel = require("tunnel"); + const agent = { + https: tunnel.httpsOverHttp({ + proxy: { + host: process.env.TG_PROXY_HOST, + port: process.env.TG_PROXY_PORT * 1 + } + }) + } + Object.assign(options, { agent }) + } + $.get(options, async (err, resp, data) => { try { if (err) { } else { - $.tuanList = $.tuanList.concat(JSON.parse(data)) + $.authorTuanList = $.authorTuanList.concat(JSON.parse(data)) console.log(`作者助力码获取成功`) } } catch (e) { @@ -181,13 +210,13 @@ function helpFriendTuan(body) { if (safeGet(data)) { data = JSON.parse(data); if (data.success) { - console.log('助力成功') + console.log('助力结果:助力成功\n') } else { - if (data.resultCode === '9200008') console.log('不能助力自己') - else if (data.resultCode === '9200011') console.log('已经助力过') - else if (data.resultCode === '2400205') console.log('团已满') - else if (data.resultCode === '2400203') {console.log('助力次数已耗尽');$.canHelp = false} - else console.log(`未知错误`) + if (data.resultCode === '9200008') console.log('助力结果:不能助力自己\n') + else if (data.resultCode === '9200011') console.log('助力结果:已经助力过\n') + else if (data.resultCode === '2400205') console.log('助力结果:团已满\n') + else if (data.resultCode === '2400203') {console.log('助力结果:助力次数已耗尽\n');$.canHelp = false} + else console.log(`助力结果:未知错误\n`) } } } @@ -211,14 +240,21 @@ function getUserTuanInfo() { } else { if (safeGet(data)) { data = JSON.parse(data); - if (data.data && !data.data.canStartNewAssist) { - $.tuan = { - "activityIdEncrypted": data.data.id, - "assistStartRecordId": data.data.assistStartRecordId, - "assistedPinEncrypted": data.data.encPin, - "channel": "FISSION_BEAN" + if (data['success']) { + $.log(`\n\n【赚京豆(微信小程序)-瓜分京豆】能否再次开团: ${data.data.canStartNewAssist ? '可以' : '否'}\n\n`) + if (data.data && !data.data.canStartNewAssist) { + $.tuan = { + "activityIdEncrypted": data.data.id, + "assistStartRecordId": data.data.assistStartRecordId, + "assistedPinEncrypted": data.data.encPin, + "channel": "FISSION_BEAN" + } + $.tuanActId = data.data.id; + $.assistStatus = data['data']['assistStatus']; } - $.tuanActId = data.data.id + } else { + $.tuan = true;//活动火爆 + console.log(`获取【赚京豆(微信小程序)-瓜分京豆】活动信息失败${JSON.stringify(data)}\n`) } } } @@ -243,7 +279,10 @@ function openTuan() { if (safeGet(data)) { data = JSON.parse(data); if (data['success']) { + console.log(`【赚京豆(微信小程序)-瓜分京豆】开团成功`) $.hasOpen = true + } else { + console.log(`\n开团失败:${JSON.stringify(data)}\n`) } } }