/* 电信营业厅 v6.02 签到和完成部分金豆任务, 喂宠物 7天,15天,28天连签抽奖, 宠物等级权益兑换 自己设置电信的服务密码, 把 手机号#服务密码 填到变量里, 多账号换行或&或@隔开: export chinaTelecomAccount="13888888888#123456" 每天运行一两次 cron: 33 10,14 * * * const $ = new Env("电信营业厅"); */ const _0x49dfef = _0x5370a4("电信营业厅"), _0x8e0885 = require("got"), _0x203c4a = require("path"), { exec: _0x3898d1 } = require("child_process"), { CookieJar: _0x4f58d7 } = require("tough-cookie"), _0x5336b3 = require("fs"), _0x5e650c = require("crypto-js"), _0x22f09c = "chinaTelecom", _0x1876a7 = /[\n\&\@]/, _0x4aec53 = [_0x22f09c + "Account"], _0x128624 = 30000, _0x5a04a9 = 3, _0x1736e2 = _0x22f09c + "Rpc", _0x16d3ea = process.env[_0x1736e2], _0xf4231c = 6.02, _0x14f289 = "chinaTelecom", _0x100b57 = "https://leafxcy.coding.net/api/user/leafxcy/project/validcode/shared-depot/validCode/git/blob/master/code.json", _0x344953 = "JinDouMall"; let _0x1d3d6d = {}; const _0x5370da = "./chinaTelecom_cache.json", _0x3ed712 = "Mozilla/5.0 (Linux; U; Android 12; zh-cn; ONEPLUS A9000 Build/QKQ1.190716.003) AppleWebKit/533.1 (KHTML, like Gecko) Version/5.0 Mobile Safari/533.1", _0x75a069 = "34d7cb0bcdf07523", _0x2304b1 = "1234567`90koiuyhgtfrdewsaqaqsqde", _0x1110eb = "\0\0\0\0\0\0\0\0", _0x3c561e = "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDBkLT15ThVgz6/NOl6s8GNPofdWzWbCkWnkaAm7O2LjkM1H7dMvzkiqdxU02jamGRHLX/ZNMCXHnPcW/sDhiFCBN18qFvy8g6VYb9QtroI09e176s+ZCtiv7hbin2cCTj99iUpnEloZm19lwHyo69u5UMiPMpq0/XKBO8lYhN/gwIDAQAB", _0x1e9565 = "-----BEGIN PUBLIC KEY-----\n" + _0x3c561e + "\n-----END PUBLIC KEY-----", _0x516f15 = "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC+ugG5A8cZ3FqUKDwM57GM4io6JGcStivT8UdGt67PEOihLZTw3P7371+N47PrmsCpnTRzbTgcupKtUv8ImZalYk65dU8rjC/ridwhw9ffW2LBwvkEnDkkKKRi2liWIItDftJVBiWOh17o6gfbPoNrWORcAdcbpk2L+udld5kZNwIDAQAB", _0x4995b7 = "-----BEGIN PUBLIC KEY-----\n" + _0x516f15 + "\n-----END PUBLIC KEY-----", _0x51cf70 = "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDIPOHtjs6p4sTlpFvrx+ESsYkEvyT4JB/dcEbU6C8+yclpcmWEvwZFymqlKQq89laSH4IxUsPJHKIOiYAMzNibhED1swzecH5XLKEAJclopJqoO95o8W63Euq6K+AKMzyZt1SEqtZ0mXsN8UPnuN/5aoB3kbPLYpfEwBbhto6yrwIDAQAB", _0x2e5ddf = "-----BEGIN PUBLIC KEY-----\n" + _0x51cf70 + "\n-----END PUBLIC KEY-----", _0xc38e90 = require("node-rsa"); let _0x13a631 = new _0xc38e90(_0x1e9565); const _0x4386dc = { "encryptionScheme": "pkcs1" }; _0x13a631.setOptions(_0x4386dc); let _0x47bb4b = new _0xc38e90(_0x4995b7); const _0xe2cacf = { "encryptionScheme": "pkcs1" }; _0x47bb4b.setOptions(_0xe2cacf); let _0x5b4189 = new _0xc38e90(_0x2e5ddf); const _0x3ab892 = { "encryptionScheme": "pkcs1" }; _0x5b4189.setOptions(_0x3ab892); const _0x131d2d = [202201, 202202, 202203], _0x3c685e = 5; function _0x1519a6(_0x5771d9, _0x450cac, _0x2c564d, _0x433dc7, _0x39c4aa, _0x4504ac) { return _0x5e650c[_0x5771d9].encrypt(_0x5e650c.enc.Utf8.parse(_0x433dc7), _0x5e650c.enc.Utf8.parse(_0x39c4aa), { "mode": _0x5e650c.mode[_0x450cac], "padding": _0x5e650c.pad[_0x2c564d], "iv": _0x5e650c.enc.Utf8.parse(_0x4504ac) }).ciphertext.toString(_0x5e650c.enc.Hex); } function _0x436a1e(_0x28a0ac, _0x359609, _0x282bea, _0x53ad35, _0x1dcccf, _0x387c88) { return _0x5e650c[_0x28a0ac].decrypt({ "ciphertext": _0x5e650c.enc.Hex.parse(_0x53ad35) }, _0x5e650c.enc.Utf8.parse(_0x1dcccf), { "mode": _0x5e650c.mode[_0x359609], "padding": _0x5e650c.pad[_0x282bea], "iv": _0x5e650c.enc.Utf8.parse(_0x387c88) }).toString(_0x5e650c.enc.Utf8); } function _0x4e4355() { try { _0x5336b3.writeFileSync(_0x5370da, JSON.stringify(_0x1d3d6d, null, 4), "utf-8"); } catch (_0x345e13) { console.log("保存缓存出错"); } } function _0xa0ff1b() { try { _0x1d3d6d = JSON.parse(_0x5336b3.readFileSync(_0x5370da, "utf-8")); } catch (_0x27edaf) { console.log("读取缓存出错, 新建一个token缓存"); _0x4e4355(); } } let _0x300c8e = 0, _0xdb6efe = 0; function _0x11cae0() { _0xdb6efe = 1; process.on("SIGTERM", () => { _0xdb6efe = 2; process.exit(0); }); const _0x15d402 = _0x203c4a.basename(process.argv[1]), _0x55a240 = ["bash", "timeout", "grep"]; let _0x517188 = ["ps afx"]; _0x517188.push("grep " + _0x15d402); _0x517188 = _0x517188.concat(_0x55a240.map(_0x376a17 => "grep -v \"" + _0x376a17 + " \"")); _0x517188.push("wc -l"); const _0x2f47c6 = _0x517188.join("|"), _0x8109 = () => { _0x3898d1(_0x2f47c6, (_0x3db287, _0x30373e, _0x39f532) => { if (_0x3db287 || _0x39f532) return; _0x300c8e = parseInt(_0x30373e.trim(), 10); }); _0xdb6efe == 1 && setTimeout(_0x8109, 2000); }; _0x8109(); } class _0x9d1851 { constructor() { this.index = _0x49dfef.userIdx++; this.name = ""; this.valid = false; const _0x2c28d7 = { "limit": 0 }, _0x2c4edd = { "Connection": "keep-alive" }, _0x5069eb = { "retry": _0x2c28d7, "timeout": _0x128624, "followRedirect": false, "ignoreInvalidCookies": true, "headers": _0x2c4edd }; this.got = _0x8e0885.extend(_0x5069eb); _0xdb6efe == 0 && _0x11cae0(); } ["log"](_0x493cba, _0x452fe5 = {}) { var _0x567ff8 = "", _0x1d5ec0 = _0x49dfef.userCount.toString().length; this.index && (_0x567ff8 += "账号[" + _0x49dfef.padStr(this.index, _0x1d5ec0) + "]"); this.name && (_0x567ff8 += "[" + this.name + "]"); _0x49dfef.log(_0x567ff8 + _0x493cba, _0x452fe5); } ["set_cookie"](_0x5a17b2, _0x55db68, _0x11f17c, _0x1e7a6c, _0x3e9954 = {}) { this.cookieJar.setCookieSync(_0x5a17b2 + "=" + _0x55db68 + "; Domain=" + _0x11f17c + ";", "" + _0x1e7a6c); } async ["request"](_0x5dffd5) { const _0x37ac5c = ["ECONNRESET", "EADDRINUSE", "ENOTFOUND", "EAI_AGAIN"], _0x2b4fd1 = ["TimeoutError"], _0xab6ac9 = ["EPROTO"], _0x875994 = []; var _0x2ae6b5 = null, _0x588da8 = 0, _0x2c97d1 = _0x5dffd5.fn || _0x5dffd5.url; let _0x5dfd65 = _0x49dfef.get(_0x5dffd5, "valid_code", _0x875994); _0x5dffd5.method = _0x5dffd5?.["method"]?.["toUpperCase"]() || "GET"; let _0x3173c7, _0x2d079a; while (_0x588da8 < _0x5a04a9) { try { _0x588da8++; _0x3173c7 = ""; _0x2d079a = ""; let _0x56da93 = null, _0x20fa96 = _0x5dffd5?.["timeout"] || this.got?.["defaults"]?.["options"]?.["timeout"]?.["request"] || _0x128624, _0x372157 = false, _0x329022 = Math.max(this.index - 2, 0), _0xae873a = Math.min(Math.max(this.index - 3, 1), 3), _0x1df6bf = Math.min(Math.max(this.index - 4, 1), 4), _0x3dd9a2 = _0x329022 * _0xae873a * _0x1df6bf * 400, _0x5c8e85 = _0x329022 * _0xae873a * _0x1df6bf * 1800, _0x168d1c = _0x3dd9a2 + Math.floor(Math.random() * _0x5c8e85), _0x43a74c = _0x300c8e * (_0x300c8e - 1) * 2000, _0x6f7cc7 = (_0x300c8e - 1) * (_0x300c8e - 1) * 2000, _0x410dd7 = _0x43a74c + Math.floor(Math.random() * _0x6f7cc7), _0x37f92f = Math.max(_0x49dfef.userCount - 2, 0), _0x29c518 = Math.max(_0x49dfef.userCount - 3, 0), _0x4d7ea4 = _0x37f92f * 200, _0x428995 = _0x29c518 * 400, _0x5c5b4c = _0x4d7ea4 + Math.floor(Math.random() * _0x428995), _0x169ad4 = _0x168d1c + _0x410dd7 + _0x5c5b4c; await _0x49dfef.wait(_0x169ad4); await new Promise(async _0x3fddf4 => { setTimeout(() => { _0x372157 = true; _0x3fddf4(); }, _0x20fa96); await this.got(_0x5dffd5).then(_0x209b82 => { _0x2ae6b5 = _0x209b82; }, _0x41c3d2 => { _0x56da93 = _0x41c3d2; _0x2ae6b5 = _0x41c3d2.response; _0x3173c7 = _0x56da93?.["code"] || ""; _0x2d079a = _0x56da93?.["name"] || ""; }); _0x3fddf4(); }); if (_0x372157) this.log("[" + _0x2c97d1 + "]请求超时(" + _0x20fa96 / 1000 + "秒),重试第" + _0x588da8 + "次");else { if (_0xab6ac9.includes(_0x3173c7)) { this.log("[" + _0x2c97d1 + "]请求错误[" + _0x3173c7 + "][" + _0x2d079a + "]"); if (_0x56da93?.["message"]) { console.log(_0x56da93.message); } break; } else { if (_0x2b4fd1.includes(_0x2d079a)) { this.log("[" + _0x2c97d1 + "]请求错误[" + _0x3173c7 + "][" + _0x2d079a + "],重试第" + _0x588da8 + "次"); } else { if (_0x37ac5c.includes(_0x3173c7)) { this.log("[" + _0x2c97d1 + "]请求错误[" + _0x3173c7 + "][" + _0x2d079a + "],重试第" + _0x588da8 + "次"); } else { let _0x33b70b = _0x2ae6b5?.["statusCode"] || "", _0x289577 = _0x33b70b / 100 | 0; if (_0x33b70b) { _0x289577 > 3 && !_0x5dfd65.includes(_0x33b70b) && (_0x33b70b ? this.log("请求[" + _0x2c97d1 + "]返回[" + _0x33b70b + "]") : this.log("请求[" + _0x2c97d1 + "]错误[" + _0x3173c7 + "][" + _0x2d079a + "]")); if (_0x289577 <= 4) break; } else this.log("请求[" + _0x2c97d1 + "]错误[" + _0x3173c7 + "][" + _0x2d079a + "]"); } } } } } catch (_0x4c3a90) { _0x4c3a90.name == "TimeoutError" ? this.log("[" + _0x2c97d1 + "]请求超时,重试第" + _0x588da8 + "次") : this.log("[" + _0x2c97d1 + "]请求错误(" + _0x4c3a90.message + "),重试第" + _0x588da8 + "次"); } } const _0x493b70 = { "statusCode": _0x3173c7 || -1, "headers": null, "result": null }; if (_0x2ae6b5 == null) { return Promise.resolve(_0x493b70); } let { statusCode: _0x307ac9, headers: _0x5205ad, body: _0x3a9f48 } = _0x2ae6b5; if (_0x3a9f48) { try { _0x3a9f48 = JSON.parse(_0x3a9f48); } catch {} } const _0x37c203 = { "statusCode": _0x307ac9, "headers": _0x5205ad, "result": _0x3a9f48 }; return Promise.resolve(_0x37c203); } } let _0x280825 = _0x9d1851; try { let _0x236d58 = require("./LocalBasic"); _0x280825 = _0x236d58; } catch {} let _0x3b1630 = new _0x280825(_0x49dfef); class _0x3f433d extends _0x280825 { constructor(_0x4802c1) { super(_0x49dfef); let _0x2a7cbd = _0x4802c1.split("#"); this.name = _0x2a7cbd[0]; this.passwd = _0x2a7cbd?.[1] || ""; this.uuid = [_0x49dfef.randomPattern("xxxxxxxx"), _0x49dfef.randomPattern("xxxx"), _0x49dfef.randomPattern("4xxx"), _0x49dfef.randomPattern("xxxx"), _0x49dfef.randomPattern("xxxxxxxxxxxx")]; this.cookieJar = new _0x4f58d7(); this.can_feed = true; this.jml_tokenFlag = ""; this.mall_token = ""; const _0xf01b6c = { "Connection": "keep-alive", "User-Agent": _0x3ed712 }; this.got = this.got.extend({ "cookieJar": this.cookieJar, "headers": _0xf01b6c }); } ["load_token"]() { let _0x14cf8a = false; return _0x1d3d6d[this.name] && (this.userId = _0x1d3d6d[this.name].userId, this.token = _0x1d3d6d[this.name].token, this.log("读取到缓存token"), _0x14cf8a = true), _0x14cf8a; } ["encode_phone"]() { let _0x266210 = this.name.split(""); for (let _0x5f797f in _0x266210) { _0x266210[_0x5f797f] = String.fromCharCode(_0x266210[_0x5f797f].charCodeAt(0) + 2); } return _0x266210.join(""); } ["encode_aes"](_0x47873f) { return _0x1519a6("AES", "ECB", "Pkcs7", _0x47873f, _0x75a069, 0); } ["get_mall_headers"]() { return { "Content-Type": "application/json;charset=utf-8", "Accept": "application/json, text/javascript, */*; q=0.01", "Authorization": this.mall_token ? "Bearer " + this.mall_token : "", "X-Requested-With": "XMLHttpRequest" }; } async ["login"](_0x568c8f = {}) { let _0x172a21 = false; try { let _0x4709da = _0x49dfef.time("yyyyMMddhhmmss"), _0x21d997 = "iPhone 14 15.4." + this.uuid.slice(0, 2).join("") + this.name + _0x4709da + this.passwd + "0$$$0.", _0x1b5e27 = { "fn": "login", "method": "post", "url": "https://appgologin.189.cn:9031/login/client/userLoginNormal", "json": { "headerInfos": { "code": "userLoginNormal", "timestamp": _0x4709da, "broadAccount": "", "broadToken": "", "clientType": "#9.6.1#channel50#iPhone 14 Pro Max#", "shopId": "20002", "source": "110003", "sourcePassword": "Sid98s", "token": "", "userLoginName": this.name }, "content": { "attach": "test", "fieldData": { "loginType": "4", "accountType": "", "loginAuthCipherAsymmertric": _0x13a631.encrypt(_0x21d997, "base64"), "deviceUid": this.uuid.slice(0, 3).join(""), "phoneNum": this.encode_phone(), "isChinatelecom": "0", "systemVersion": "15.4.0", "authentication": this.passwd } } } }, { result: _0x44e3e2, statusCode: _0x15338e } = await this.request(_0x1b5e27), _0x5d0534 = _0x49dfef.get(_0x44e3e2?.["responseData"], "resultCode", -1); console.log("Request Content:", requestBody.content); if (_0x5d0534 == "0000") { let { userId = "", token = "" } = _0x44e3e2?.["responseData"]?.["data"]?.["loginSuccessResult"] || {}; this.userId = userId; this.token = token; this.log("使用服务密码登录成功"); _0x1d3d6d[this.name] = { "token": token, "userId": userId, "t": Date.now() }; _0x4e4355(); _0x172a21 = true; } else { let _0x4d711e = _0x44e3e2?.["msg"] || _0x44e3e2?.["responseData"]?.["resultDesc"] || _0x44e3e2?.["headerInfos"]?.["reason"] || ""; this.log("服务密码登录失败[" + _0x5d0534 + "]: " + _0x4d711e); } } catch (_0x2334e8) { console.log(_0x2334e8); } finally { return _0x172a21; } } async ["get_ticket"](_0x292809 = {}) { let _0x3ff995 = ""; try { let _0x495fa7 = "\n \n \n getSingle\n " + _0x49dfef.time("yyyyMMddhhmmss") + "\n \n \n #9.6.1#channel50#iPhone 14 Pro Max#\n 20002\n 110003\n Sid98s\n " + this.token + "\n " + this.name + "\n \n \n test\n \n " + _0x1519a6("TripleDES", "CBC", "Pkcs7", this.userId, _0x2304b1, _0x1110eb) + "\n 4a6862274835b451\n \n \n "; const _0xd42d5c = { "fn": "get_ticket", "method": "post", "url": "https://appgologin.189.cn:9031/map/clientXML", "body": _0x495fa7 }; let { result: _0x364c7d, statusCode: _0xd880be } = await this.request(_0xd42d5c); if (_0x364c7d) { let _0x18bfb2 = _0x364c7d.match(/\(\w+)\<\/Ticket\>/); if (_0x18bfb2) { let _0x33b8c5 = _0x18bfb2[1]; _0x3ff995 = _0x436a1e("TripleDES", "CBC", "Pkcs7", _0x33b8c5, _0x2304b1, _0x1110eb); this.ticket = _0x3ff995; } } !_0x3ff995 && (!_0x292809.retry && (await this.login()) ? (_0x292809.retry = true, _0x3ff995 = await this.get_ticket(_0x292809)) : (this.log("没有获取到ticket[" + _0xd880be + "]: "), _0x364c7d && this.log(": " + JSON.stringify(_0x364c7d)))); } catch (_0x28f8f2) { console.log(_0x28f8f2); } finally { return _0x3ff995; } } async ["get_sign"](_0xd5e98b = {}) { let _0x3728d3 = false; try { const _0x228472 = { "ticket": this.ticket }, _0x1dce3c = { "fn": "login", "method": "get", "url": "https://wapside.189.cn:9001/jt-sign/ssoHomLogin", "searchParams": _0x228472 }; let { result: _0x5b193e, statusCode: _0x5f0725 } = await this.request(_0x1dce3c), _0x29efdb = _0x49dfef.get(_0x5b193e, "resoultCode", _0x5f0725); _0x29efdb == 0 ? (_0x3728d3 = _0x5b193e?.["sign"], this.sign = _0x3728d3, this.got = this.got.extend({ "headers": { "sign": this.sign } })) : this.log("获取sign失败[" + _0x29efdb + "]: " + _0x5b193e); } catch (_0x2f28bb) { console.log(_0x2f28bb); } finally { return _0x3728d3; } } ["encrypt_para"](_0x2ea382) { let _0x4ed84a = typeof _0x2ea382 == "string" ? _0x2ea382 : JSON.stringify(_0x2ea382); return _0x47bb4b.encrypt(_0x4ed84a, "hex"); } async ["userCoinInfo"](_0x124ec9 = false, _0x1a1cc3 = {}) { try { const _0x374d94 = { "phone": this.name }; let _0x4e6fdd = { "fn": "userCoinInfo", "method": "post", "url": "https://wapside.189.cn:9001/jt-sign/api/home/userCoinInfo", "json": { "para": this.encrypt_para(_0x374d94) } }, { result: _0x32da86, statusCode: _0x1e20fc } = await this.request(_0x4e6fdd), _0x416871 = _0x49dfef.get(_0x32da86, "resoultCode", _0x1e20fc); if (_0x416871 == 0) { this.coin = _0x32da86?.["totalCoin"] || 0; if (_0x124ec9) { const _0x4aa23f = { "notify": true }; this.log("金豆余额: " + this.coin, _0x4aa23f); if (_0x32da86.amountEx) { let _0x1afe63 = _0x49dfef.time("yyyy-MM-dd", _0x32da86.expireDate); const _0x171701 = { "notify": true }; _0x49dfef.log("-- [" + _0x1afe63 + "]将过期" + _0x32da86.amountEx + "金豆", _0x171701); } } } else { let _0x5dd2dd = _0x32da86?.["msg"] || _0x32da86?.["resoultMsg"] || _0x32da86?.["error"] || ""; this.log("查询账户金豆余额错误[" + _0x416871 + "]: " + _0x5dd2dd); } } catch (_0x46ed9f) { console.log(_0x46ed9f); } } async ["userStatusInfo"](_0xc9a8b1 = {}) { try { const _0x27024b = { "phone": this.name }; let _0x46d7e7 = { "fn": "userStatusInfo", "method": "post", "url": "https://wapside.189.cn:9001/jt-sign/api/home/userStatusInfo", "json": { "para": this.encrypt_para(_0x27024b) } }; { let { result: _0x7c79f6, statusCode: _0x5610ae } = await this.request(_0x49dfef.copy(_0x46d7e7)), _0x4b983e = _0x49dfef.get(_0x7c79f6, "resoultCode", _0x5610ae); if (_0x4b983e == 0) { let { isSign: _0x577fdd } = _0x7c79f6?.["data"]; _0x577fdd ? this.log("今天已签到") : await this.doSign(); } else { let _0x16239c = _0x7c79f6?.["msg"] || _0x7c79f6?.["resoultMsg"] || _0x7c79f6?.["error"] || ""; this.log("查询账户签到状态错误[" + _0x4b983e + "]: " + _0x16239c); } } { let { result: _0x2cb917, statusCode: _0x42a823 } = await this.request(_0x49dfef.copy(_0x46d7e7)), _0x11fe96 = _0x49dfef.get(_0x2cb917, "resoultCode", _0x42a823); if (_0x11fe96 == 0) { let { continuousDay: _0xf63027, signDay: _0x5a3e70, isSeven: _0x434ea0 } = _0x2cb917?.["data"]; this.log("已签到" + _0x5a3e70 + "天, 连签" + _0xf63027 + "天"); _0x434ea0 && (await this.exchangePrize()); } else { let _0x57bd0e = _0x2cb917?.["msg"] || _0x2cb917?.["resoultMsg"] || _0x2cb917?.["error"] || ""; this.log("查询账户签到状态错误[" + _0x11fe96 + "]: " + _0x57bd0e); } } } catch (_0x70a9ad) { console.log(_0x70a9ad); } } async ["continueSignDays"](_0x57126c = {}) { try { const _0x1396f4 = { "phone": this.name }; let _0x40ec16 = { "fn": "continueSignDays", "method": "post", "url": "https://wapside.189.cn:9001/jt-sign/webSign/continueSignDays", "json": { "para": this.encrypt_para(_0x1396f4) } }, { result: _0xd56803, statusCode: _0x133cba } = await this.request(_0x40ec16), _0x5ecdbe = _0x49dfef.get(_0xd56803, "resoultCode", _0x133cba); if (_0x5ecdbe == 0) { this.log("抽奖连签天数: " + (_0xd56803?.["continueSignDays"] || 0) + "天"); if (_0xd56803?.["continueSignDays"] == 15) { const _0x1e4b5b = { "type": "15" }; await this.exchangePrize(_0x1e4b5b); } else { if (_0xd56803?.["continueSignDays"] == 28) { const _0x5bc07e = { "type": "28" }; await this.exchangePrize(_0x5bc07e); } } } else { let _0x4e6817 = _0xd56803?.["msg"] || _0xd56803?.["resoultMsg"] || _0xd56803?.["error"] || ""; this.log("查询抽奖连签天数错误[" + _0x5ecdbe + "]: " + _0x4e6817); } } catch (_0x52cdc8) { console.log(_0x52cdc8); } } async ["continueSignRecords"](_0x2891d4 = {}) { try { const _0x2228e1 = { "phone": this.name }; let _0x49e887 = { "fn": "continueSignRecords", "method": "post", "url": "https://wapside.189.cn:9001/jt-sign/webSign/continueSignRecords", "json": { "para": this.encrypt_para(_0x2228e1) } }, { result: _0x1dd52d, statusCode: _0x274d64 } = await this.request(_0x49e887), _0xb167e6 = _0x49dfef.get(_0x1dd52d, "resoultCode", _0x274d64); if (_0xb167e6 == 0) { if (_0x1dd52d?.["continue15List"]?.["length"]) { const _0x16fcf5 = { "type": "15" }; await this.exchangePrize(_0x16fcf5); } if (_0x1dd52d?.["continue28List"]?.["length"]) { const _0x52fb63 = { "type": "28" }; await this.exchangePrize(_0x52fb63); } } else { let _0x3090eb = _0x1dd52d?.["msg"] || _0x1dd52d?.["resoultMsg"] || _0x1dd52d?.["error"] || ""; this.log("查询连签抽奖状态错误[" + _0xb167e6 + "]: " + _0x3090eb); } } catch (_0x2bc775) { console.log(_0x2bc775); } } async ["doSign"](_0x1b376e = {}) { try { let _0x3e8ed4 = { "phone": this.name, "date": Date.now(), "sysType": "20002" }, _0x405845 = { "fn": "doSign", "method": "post", "url": "https://wapside.189.cn:9001/jt-sign/webSign/sign", "json": { "encode": this.encode_aes(JSON.stringify(_0x3e8ed4)) } }, { result: _0x380f07, statusCode: _0x36d52d } = await this.request(_0x405845), _0x3b877d = _0x49dfef.get(_0x380f07, "resoultCode", _0x36d52d); if (_0x3b877d == 0) { let _0x5bf6a1 = _0x49dfef.get(_0x380f07?.["data"], "code", -1); if (_0x5bf6a1 == 1) { const _0x13fbb6 = { "notify": true }; this.log("签到成功,获得" + (_0x380f07?.["data"]?.["coin"] || 0) + "金豆", _0x13fbb6); await this.userStatusInfo(); } else { const _0x106dcf = { "notify": true }; this.log("签到失败[" + _0x5bf6a1 + "]: " + _0x380f07.data.msg, _0x106dcf); } } else { let _0x4cd1a1 = _0x380f07?.["msg"] || _0x380f07?.["resoultMsg"] || _0x380f07?.["error"] || ""; this.log("签到错误[" + _0x3b877d + "]: " + _0x4cd1a1); } } catch (_0x591e48) { console.log(_0x591e48); } } async ["exchangePrize"](_0x1959e6 = {}) { try { let _0x22bbfa = _0x49dfef.pop(_0x1959e6, "type", "7"); const _0x20ec8c = { "phone": this.name, "type": _0x22bbfa }; let _0x1ca191 = { "fn": "exchangePrize", "method": "post", "url": "https://wapside.189.cn:9001/jt-sign/webSign/exchangePrize", "json": { "para": this.encrypt_para(_0x20ec8c) } }, { result: _0x4217e1, statusCode: _0x4d9c82 } = await this.request(_0x1ca191), _0x9afc2f = _0x49dfef.get(_0x4217e1, "resoultCode", _0x4d9c82); if (_0x9afc2f == 0) { let _0x28f1fc = _0x49dfef.get(_0x4217e1?.["prizeDetail"], "code", -1); if (_0x28f1fc == 0) { const _0x3a457e = { "notify": true }; this.log("连签" + _0x22bbfa + "天抽奖: " + _0x4217e1?.["prizeDetail"]?.["biz"]?.["winTitle"], _0x3a457e); } else { let _0x8e62fe = _0x4217e1?.["prizeDetail"]?.["err"] || ""; const _0x1e3693 = { "notify": true }; this.log("连签" + _0x22bbfa + "天抽奖失败[" + _0x28f1fc + "]: " + _0x8e62fe, _0x1e3693); } } else { let _0x32f43a = _0x4217e1?.["msg"] || _0x4217e1?.["resoultMsg"] || _0x4217e1?.["error"] || ""; this.log("连签" + _0x22bbfa + "天抽奖错误[" + _0x9afc2f + "]: " + _0x32f43a); } } catch (_0x5751a7) { console.log(_0x5751a7); } } async ["homepage"](_0x7f393b, _0x27b6dc = {}) { try { const _0x91f4c = { "phone": this.name, "shopId": "20001", "type": _0x7f393b }; let _0x3c66e4 = { "fn": "homepage", "method": "post", "url": "https://wapside.189.cn:9001/jt-sign/webSign/homepage", "json": { "para": this.encrypt_para(_0x91f4c) } }, { result: _0x2bd358, statusCode: _0x15ab0e } = await this.request(_0x3c66e4), _0x1ebbf3 = _0x49dfef.get(_0x2bd358, "resoultCode", _0x15ab0e); if (_0x1ebbf3 == 0) { let _0x31f344 = _0x49dfef.get(_0x2bd358?.["data"]?.["head"], "code", -1); if (_0x31f344 == 0) for (let _0x1e9c0b of _0x2bd358?.["data"]?.["biz"]?.["adItems"] || []) { if (["0", "1"].includes(_0x1e9c0b?.["taskState"])) switch (_0x1e9c0b.contentOne) { case "3": { _0x1e9c0b?.["rewardId"] && (await this.receiveReward(_0x1e9c0b)); break; } case "5": { await this.openMsg(_0x1e9c0b); break; } case "6": { await this.sharingGetGold(); break; } case "10": case "13": { !this.xtoken && (await this.get_usercode()); this.xtoken && (await this.watchLiveInit()); break; } case "18": { await this.polymerize(_0x1e9c0b); break; } default: { break; } } } else { let _0x24468f = _0x2bd358?.["data"]?.["head"]?.["err"] || ""; this.log("获取任务列表失败[" + _0x31f344 + "]: " + _0x24468f); } } else this.log("获取任务列表错误[" + _0x1ebbf3 + "]"); } catch (_0x590aa6) { console.log(_0x590aa6); } } async ["receiveReward"](_0x484772, _0x43564a = {}) { try { let _0x22887b = _0x484772?.["title"]?.["split"](" ")?.[0]; const _0x550f47 = { "phone": this.name, "rewardId": _0x484772?.["rewardId"] || "" }; let _0x2463d2 = { "fn": "receiveReward", "method": "post", "url": "https://wapside.189.cn:9001/jt-sign/paradise/receiveReward", "json": { "para": this.encrypt_para(_0x550f47) } }, { result: _0x1de7a2, statusCode: _0x5b6ad9 } = await this.request(_0x2463d2), _0x124e90 = _0x49dfef.get(_0x1de7a2, "resoultCode", _0x5b6ad9); if (_0x124e90 == 0) this.log("领取任务[" + _0x22887b + "]奖励成功: " + _0x1de7a2?.["resoultMsg"]);else { let _0x20a521 = _0x1de7a2?.["msg"] || _0x1de7a2?.["resoultMsg"] || _0x1de7a2?.["error"] || ""; this.log("领取任务[" + _0x22887b + "]奖励错误[" + _0x124e90 + "]: " + _0x20a521); } } catch (_0x25a11e) { console.log(_0x25a11e); } } async ["openMsg"](_0x308623, _0x14e0b8 = {}) { try { let _0x435287 = _0x308623?.["title"]?.["split"](" ")?.[0]; const _0x13404e = { "phone": this.name }; let _0x34d20f = { "fn": "openMsg", "method": "post", "url": "https://wapside.189.cn:9001/jt-sign/paradise/openMsg", "json": { "para": this.encrypt_para(_0x13404e) } }, { result: _0x546705, statusCode: _0x2eb743 } = await this.request(_0x34d20f), _0x313ba3 = _0x49dfef.get(_0x546705, "resoultCode", _0x2eb743); if (_0x313ba3 == 0) this.log("完成任务[" + _0x435287 + "]成功: " + _0x546705?.["resoultMsg"]);else { let _0x301d94 = _0x546705?.["msg"] || _0x546705?.["resoultMsg"] || _0x546705?.["error"] || ""; this.log("完成任务[" + _0x435287 + "]错误[" + _0x313ba3 + "]: " + _0x301d94); } } catch (_0x47faa9) { console.log(_0x47faa9); } } async ["polymerize"](_0x7882f8, _0x3307f2 = {}) { try { let _0x57f3b6 = _0x7882f8?.["title"]?.["split"](" ")?.[0]; const _0x588ba0 = { "phone": this.name, "jobId": _0x7882f8.taskId }; let _0x32f651 = { "fn": "polymerize", "method": "post", "url": "https://wapside.189.cn:9001/jt-sign/webSign/polymerize", "json": { "para": this.encrypt_para(_0x588ba0) } }, { result: _0x55f4ae, statusCode: _0x12bcb6 } = await this.request(_0x32f651), _0xe96682 = _0x49dfef.get(_0x55f4ae, "resoultCode", _0x12bcb6); if (_0xe96682 == 0) this.log("完成任务[" + _0x57f3b6 + "]成功: " + _0x55f4ae?.["resoultMsg"]);else { let _0x3c85b6 = _0x55f4ae?.["msg"] || _0x55f4ae?.["resoultMsg"] || _0x55f4ae?.["error"] || ""; this.log("完成任务[" + _0x57f3b6 + "]错误[" + _0xe96682 + "]: " + _0x3c85b6); } } catch (_0x364b16) { console.log(_0x364b16); } } async ["food"](_0x72be45, _0x385563 = {}) { try { const _0x43c1bd = { "phone": this.name }; let _0x222dd0 = { "fn": "food", "method": "post", "url": "https://wapside.189.cn:9001/jt-sign/paradise/food", "json": { "para": this.encrypt_para(_0x43c1bd) } }, { result: _0x57feb0, statusCode: _0x11f22b } = await this.request(_0x222dd0), _0x5ef41d = _0x49dfef.get(_0x57feb0, "resoultCode", _0x11f22b); if (_0x5ef41d == 0) { this.log("第" + _0x72be45 + "次喂食: " + (_0x57feb0?.["resoultMsg"] || "成功")); if (_0x57feb0?.["levelUp"]) { let _0x4ca17a = _0x57feb0?.["currLevelRightList"][0]?.["level"]; const _0xd3dda5 = { "notify": true }; this.log("宠物已升级到[LV." + _0x4ca17a + "], 获得: " + _0x57feb0?.["currLevelRightList"][0]?.["righstName"], _0xd3dda5); } } else { let _0x5ba722 = _0x57feb0?.["msg"] || _0x57feb0?.["resoultMsg"] || _0x57feb0?.["error"] || ""; this.log("第" + _0x72be45 + "次喂食失败[" + _0x5ef41d + "]: " + _0x5ba722); _0x5ba722?.["includes"]("最大喂食次数") && (this.can_feed = false); } } catch (_0x27040d) { console.log(_0x27040d); } } async ["getParadiseInfo"](_0x4d05b5 = {}) { try { const _0x125538 = { "phone": this.name }; let _0x270bb1 = { "fn": "getParadiseInfo", "method": "post", "url": "https://wapside.189.cn:9001/jt-sign/paradise/getParadiseInfo", "json": { "para": this.encrypt_para(_0x125538) } }; { let { result: _0x364c07, statusCode: _0xcdef27 } = await this.request(_0x270bb1), _0x48e40c = _0x49dfef.get(_0x364c07, "resoultCode", _0xcdef27); if (_0x48e40c == 0) { let _0x4a27b8 = _0x364c07?.["userInfo"]?.["levelInfoMap"]; this.level = _0x4a27b8?.["level"]; for (let _0xfc2d56 = 1; _0xfc2d56 <= 10 && this.can_feed; _0xfc2d56++) { await this.food(_0xfc2d56); } } else { let _0x10b0a2 = _0x364c07?.["msg"] || _0x364c07?.["resoultMsg"] || _0x364c07?.["error"] || ""; this.log("查询宠物等级失败[" + _0x48e40c + "]: " + _0x10b0a2); return; } } { let { result: _0x2d4c9d, statusCode: _0x32822d } = await this.request(_0x270bb1), _0x33231c = _0x49dfef.get(_0x2d4c9d, "resoultCode", _0x32822d); if (_0x33231c == 0) { let _0x587dfa = _0x2d4c9d?.["userInfo"]?.["levelInfoMap"]; this.level = _0x587dfa?.["level"]; const _0x4a392a = { "notify": true }; this.log("宠物等级[Lv." + _0x587dfa?.["level"] + "], 升级进度: " + _0x587dfa?.["growthValue"] + "/" + _0x587dfa?.["fullGrowthCoinValue"], _0x4a392a); } else { let _0xc04dee = _0x2d4c9d?.["msg"] || _0x2d4c9d?.["resoultMsg"] || _0x2d4c9d?.["error"] || ""; this.log("查询宠物等级失败[" + _0x33231c + "]: " + _0xc04dee); return; } } } catch (_0x4f7ada) { console.log(_0x4f7ada); } } async ["getLevelRightsList"](_0x25055f = {}) { try { const _0xd28e8a = { "phone": this.name }; let _0x8f5d11 = { "fn": "getLevelRightsList", "method": "post", "url": "https://wapside.189.cn:9001/jt-sign/paradise/getLevelRightsList", "json": { "para": this.encrypt_para(_0xd28e8a) } }, { result: _0x364382, statusCode: _0x49ed45 } = await this.request(_0x8f5d11); if (_0x364382?.["currentLevel"]) { let _0x51ee3a = _0x364382?.["currentLevel"] || 6, _0x1a4b17 = false, _0x3a1b27 = "V" + _0x51ee3a; for (let _0x2f7780 of _0x364382[_0x3a1b27] || []) { let _0x583017 = _0x2f7780?.["righstName"] || ""; if (this.coin < _0x2f7780.costCoin) continue; (_0x583017?.["match"](/\d+元话费/) || _0x583017?.["match"](/专享\d+金豆/)) && (await this.getConversionRights(_0x2f7780, _0x1a4b17)) && (_0x1a4b17 = true); } } else { let _0x369c9d = _0x364382?.["msg"] || _0x364382?.["resoultMsg"] || _0x364382?.["error"] || ""; this.log("查询宠物兑换权益失败: " + _0x369c9d); } } catch (_0x2b311a) { console.log(_0x2b311a); } } async ["getConversionRights"](_0x4ff23b, _0x4050ac, _0x214824 = {}) { let _0x454e1a = false; try { let _0x3ea063 = _0x4ff23b?.["righstName"] || ""; const _0x404f21 = { "phone": this.name, "rightsId": _0x4ff23b.id, "receiveCount": _0x4ff23b.receiveType }; let _0x3098ed = { "fn": "getConversionRights", "method": "post", "url": "https://wapside.189.cn:9001/jt-sign/paradise/getConversionRights", "json": { "para": this.encrypt_para(_0x404f21) } }, { result: _0x269ce8, statusCode: _0x209b41 } = await this.request(_0x3098ed), _0x411acf = _0x49dfef.get(_0x269ce8, "code", _0x49dfef.get(_0x269ce8, "resoultCode", _0x209b41)); if (_0x411acf == 200) !(_0x269ce8?.["rightsStatus"]?.["includes"]("已兑换") || _0x269ce8?.["rightsStatus"]?.["includes"]("已领取")) && (_0x454e1a = true, _0x4050ac && (await _0x49dfef.wait(3000)), await this.conversionRights(_0x4ff23b));else { let _0x465ea5 = _0x269ce8?.["msg"] || _0x269ce8?.["resoultMsg"] || _0x269ce8?.["error"] || ""; this.log("查询权益[" + _0x3ea063 + "]失败[" + _0x411acf + "]: " + _0x465ea5); } } catch (_0x4b949e) { console.log(_0x4b949e); } finally { return _0x454e1a; } } async ["conversionRights"](_0xd4165b, _0x5b8c93 = {}) { try { let _0x5e50ea = _0xd4165b?.["righstName"] || ""; const _0x53587c = { "phone": this.name, "rightsId": _0xd4165b.id }; let _0x4edcac = { "fn": "conversionRights", "method": "post", "url": "https://wapside.189.cn:9001/jt-sign/paradise/conversionRights", "json": { "para": this.encrypt_para(_0x53587c) } }, { result: _0x217a7d, statusCode: _0x3b6d01 } = await this.request(_0x4edcac), _0x57dbd8 = _0x49dfef.get(_0x217a7d, "resoultCode", _0x3b6d01); if (_0x57dbd8 == 0) this.log("兑换权益[" + _0x5e50ea + "]成功");else { let _0xc27682 = _0x217a7d?.["msg"] || _0x217a7d?.["resoultMsg"] || _0x217a7d?.["error"] || ""; this.log("兑换权益[" + _0x5e50ea + "]失败[" + _0x57dbd8 + "]: " + _0xc27682); } } catch (_0x2097ee) { console.log(_0x2097ee); } } async ["get_usercode"](_0x36cb85 = {}) { try { const _0x2ae7b6 = { "fn": "get_usercode", "method": "get", "url": "https://xbk.189.cn/xbkapi/api/auth/jump", "searchParams": {} }; _0x2ae7b6.searchParams.userID = this.ticket; _0x2ae7b6.searchParams.version = "9.3.3"; _0x2ae7b6.searchParams.type = "room"; _0x2ae7b6.searchParams.l = "renwu"; let { statusCode: _0x552d62, headers: _0x17ddd9 } = await this.request(_0x2ae7b6), _0x5e7123 = _0x17ddd9?.["location"]?.["match"](/usercode=(\w+)/); _0x5e7123 ? await this.codeToken(_0x5e7123[1]) : this.log("获取code失败[" + _0x552d62 + "]"); } catch (_0x4506f4) { console.log(_0x4506f4); } } async ["codeToken"](_0x3fd610, _0x480835 = {}) { try { const _0x269098 = { "usercode": _0x3fd610 }, _0x1649f3 = { "fn": "codeToken", "method": "post", "url": "https://xbk.189.cn/xbkapi/api/auth/userinfo/codeToken", "json": _0x269098 }; let { result: _0x13a1e8, statusCode: _0x2966c4 } = await this.request(_0x1649f3), _0x2d1b25 = _0x49dfef.get(_0x13a1e8, "code", -1); if (_0x2d1b25 == 0) this.xtoken = _0x13a1e8?.["data"]?.["token"], this.got = this.got.extend({ "headers": { "Authorization": "Bearer " + _0x5b4189.encrypt(this.xtoken, "base64") } });else { let _0xc5b03f = _0x13a1e8?.["msg"] || _0x13a1e8?.["resoultMsg"] || _0x13a1e8?.["error"] || _0x13a1e8?.["msg"] || ""; this.log("获取token失败[" + _0x2d1b25 + "]: " + _0xc5b03f); } } catch (_0x4998c4) { console.log(_0x4998c4); } } async ["watchLiveInit"](_0x22b256 = {}) { try { let _0x15d470 = Math.floor(Math.random() * 1000) + 1000; const _0xe5bd8a = { "period": 1, "liveId": _0x15d470 }, _0x346d56 = { "fn": "watchLiveInit", "method": "post", "url": "https://xbk.189.cn/xbkapi/lteration/liveTask/index/watchLiveInit", "json": _0xe5bd8a }; let { result: _0x1ba8ea, statusCode: _0x490ef0 } = await this.request(_0x346d56), _0xf9de31 = _0x49dfef.get(_0x1ba8ea, "code", -1); if (_0xf9de31 == 0) await _0x49dfef.wait(15000), await this.watchLive(_0x15d470, _0x1ba8ea?.["data"]);else { let _0x5ad16a = _0x1ba8ea?.["msg"] || _0x1ba8ea?.["resoultMsg"] || _0x1ba8ea?.["error"] || _0x1ba8ea?.["msg"] || ""; this.log("开始观看直播[" + _0x15d470 + "]失败[" + _0xf9de31 + "]: " + _0x5ad16a); } } catch (_0x6620d2) { console.log(_0x6620d2); } } async ["watchLive"](_0x155ade, _0x2e794f, _0x399361 = {}) { try { const _0x46e134 = { "period": 1, "liveId": _0x155ade, "key": _0x2e794f }, _0x162a9f = { "fn": "watchLive", "method": "post", "url": "https://xbk.189.cn/xbkapi/lteration/liveTask/index/watchLive", "json": _0x46e134 }; let { result: _0x58a2c2, statusCode: _0x28c79a } = await this.request(_0x162a9f), _0x43b0ad = _0x49dfef.get(_0x58a2c2, "code", -1); if (_0x43b0ad == 0) { this.log("观看直播[" + _0x155ade + "]成功"); await this.watchLiveInit(); } else { let _0x52c0bd = _0x58a2c2?.["msg"] || _0x58a2c2?.["resoultMsg"] || _0x58a2c2?.["error"] || _0x58a2c2?.["msg"] || ""; this.log("观看直播[" + _0x155ade + "]失败[" + _0x43b0ad + "]: " + _0x52c0bd); } } catch (_0x5f06a7) { console.log(_0x5f06a7); } } async ["watchVideo"](_0x5b78a0, _0x13a484 = {}) { try { const _0x16d39d = { "articleId": _0x5b78a0 }, _0x4228bc = { "fn": "watchVideo", "method": "post", "url": "https://xbk.189.cn/xbkapi/lteration/liveTask/index/watchVideo", "json": _0x16d39d }; let { result: _0x358ce9, statusCode: _0xf3d4e1 } = await this.request(_0x4228bc), _0x13d930 = _0x49dfef.get(_0x358ce9, "code", -1); if (_0x13d930 == 0) this.log("观看短视频[" + _0x5b78a0 + "]成功");else { let _0x57b36e = _0x358ce9?.["msg"] || _0x358ce9?.["resoultMsg"] || _0x358ce9?.["error"] || _0x358ce9?.["msg"] || ""; this.log("观看短视频[" + _0x5b78a0 + "]失败[" + _0x13d930 + "]: " + _0x57b36e); } } catch (_0x5400fa) { console.log(_0x5400fa); } } async ["like"](_0x24af05, _0x37e6bb = {}) { try { const _0x4419b8 = { "account": this.name, "liveId": _0x24af05 }, _0x5e1b1e = { "fn": "like", "method": "post", "url": "https://xbk.189.cn/xbkapi/lteration/room/like", "json": _0x4419b8 }; let { result: _0x493800, statusCode: _0x21c267 } = await this.request(_0x5e1b1e), _0x2ddc71 = _0x49dfef.get(_0x493800, "code", -1); if (_0x2ddc71 == 0) this.log("点赞直播间[" + _0x24af05 + "]成功");else { let _0x1eef7d = _0x493800?.["msg"] || _0x493800?.["resoultMsg"] || _0x493800?.["error"] || _0x493800?.["msg"] || ""; this.log("点赞直播间[" + _0x24af05 + "]失败[" + _0x2ddc71 + "]: " + _0x1eef7d); } } catch (_0x5b3a48) { console.log(_0x5b3a48); } } async ["sharingGetGold"](_0x5b88d2 = {}) { try { let _0x5efb18 = { "fn": "sharingGetGold", "method": "post", "url": "https://appfuwu.189.cn:9021/query/sharingGetGold", "json": { "headerInfos": { "code": "sharingGetGold", "timestamp": _0x49dfef.time("yyyyMMddhhmmss"), "broadAccount": "", "broadToken": "", "clientType": "#9.6.1#channel50#iPhone 14 Pro Max#", "shopId": "20002", "source": "110003", "sourcePassword": "Sid98s", "token": this.token, "userLoginName": this.name }, "content": { "attach": "test", "fieldData": { "shareSource": "3", "userId": this.userId, "account": this.encode_phone() } } } }, { result: _0x3911dc, statusCode: _0x5894d4 } = await this.request(_0x5efb18), _0x56e72a = _0x49dfef.get(_0x3911dc?.["responseData"], "resultCode", -1); if (_0x56e72a == "0000") { this.log("分享成功"); } else { let _0x1cfb22 = _0x3911dc?.["msg"] || _0x3911dc?.["responseData"]?.["resultDesc"] || _0x3911dc?.["error"] || _0x3911dc?.["msg"] || ""; this.log("分享失败[" + _0x56e72a + "]: " + _0x1cfb22); } } catch (_0x57f70b) { console.log(_0x57f70b); } } async ["month_jml_preCost"](_0x21101d = {}) { try { let _0xb8a79a = { "fn": "month_jml_preCost", "method": "post", "url": "https://wapside.189.cn:9001/jt-sign/short/message/preCost", "json": { "phone": this.encode_aes(this.name), "activityCode": "shortMesssge" } }, { result: _0x1b00d0, statusCode: _0x13073b } = await this.request(_0xb8a79a), _0x2d7a53 = _0x49dfef.get(_0x1b00d0, "resoultCode", _0x13073b); if (_0x2d7a53 == 0) { let _0x3be2d8 = _0x1b00d0?.["data"]?.["resoultMsg"] || "领取成功"; this.jml_tokenFlag = _0x1b00d0?.["resoultMsg"]; await this.month_jml_userCost(_0x3be2d8); await this.month_jml_receive(); await this.month_jml_getCount(); await this.month_jml_refresh(); } else { let _0x34c304 = _0x1b00d0?.["msg"] || _0x1b00d0?.["resoultMsg"] || _0x1b00d0?.["error"] || ""; this.log("每月见面礼登录失败[" + _0x2d7a53 + "]: " + _0x34c304); } } catch (_0x1b3d4d) { console.log(_0x1b3d4d); } } async ["month_jml_userCost"](_0x59f0bf, _0x2f9995 = {}) { try { let _0x4ca9e8 = { "fn": "month_jml_userCost", "method": "post", "url": "https://wapside.189.cn:9001/jt-sign/short/message/userCost", "json": { "phone": this.encode_aes(this.name), "activityCode": "shortMesssge", "flag": this.jml_tokenFlag } }, { result: _0x3cae5c, statusCode: _0x334c8f } = await this.request(_0x4ca9e8), _0x2cfba7 = _0x49dfef.get(_0x3cae5c, "resoultCode", _0x334c8f); if (_0x2cfba7 == 0) { let _0x5e2568 = _0x3cae5c?.["data"]?.["map"](_0x37bca0 => "[" + _0x37bca0.pizeName + "]") || []; this.log("见面礼" + _0x59f0bf + ": " + _0x5e2568.join(", ")); } else { let _0x1303e7 = _0x3cae5c?.["msg"] || _0x3cae5c?.["resoultMsg"] || _0x3cae5c?.["error"] || ""; this.log("领取每月见面礼失败[" + _0x2cfba7 + "]: " + _0x1303e7); } } catch (_0x4eb69a) { console.log(_0x4eb69a); } } async ["month_jml_receive"](_0x1fe02e = {}) { try { const _0x36d622 = { "phone": this.name, "flag": this.jml_tokenFlag }; let _0x88d2e0 = { "fn": "month_jml_receive", "method": "post", "url": "https://wapside.189.cn:9001/jt-sign/lottery/receive", "json": { "para": this.encrypt_para(_0x36d622) } }, { result: _0x4fae3b, statusCode: _0xb82bff } = await this.request(_0x88d2e0), _0x1cee42 = _0x49dfef.get(_0x4fae3b, "code", -1); if (_0x1cee42 == 0) { this.log("领取APP抽奖次数成功"); } else { let _0x54358e = _0x4fae3b?.["msg"] || _0x4fae3b?.["resoultMsg"] || _0x4fae3b?.["error"] || ""; this.log("领取APP抽奖次数失败[" + _0x1cee42 + "]: " + _0x54358e); } } catch (_0x4c334f) { console.log(_0x4c334f); } } async ["month_jml_getCount"](_0x27f558 = {}) { try { const _0x34c369 = { "phone": this.name, "flag": this.jml_tokenFlag }; let _0x5e4bbc = { "fn": "month_jml_getCount", "method": "post", "url": "https://wapside.189.cn:9001/jt-sign/lottery/getCount", "json": { "para": this.encrypt_para(_0x34c369) } }, { result: _0xe0e8f, statusCode: _0xad206a } = await this.request(_0x5e4bbc), _0x4c6abd = _0x49dfef.get(_0xe0e8f, "code", -1); if (_0x4c6abd == 0) { let _0x50379e = _0xe0e8f?.["video"]?.["map"](_0x58c3db => _0x58c3db.videoType) || [], _0x44c075 = _0x131d2d.filter(_0x26acb3 => !_0x50379e.includes(_0x26acb3)), _0x1b9205 = false; for (let _0x296e2f of _0x44c075) { if (_0x1b9205) { let _0x207ec8 = Math.floor(Math.random() * 5000) + 3000; await _0x49dfef.wait(_0x207ec8); } await this.month_jml_addVideoCount(_0x296e2f); _0x1b9205 = true; } } else { let _0x339250 = _0xe0e8f?.["msg"] || _0xe0e8f?.["resoultMsg"] || _0xe0e8f?.["error"] || ""; this.log("查询看视频得抽奖机会次数失败[" + _0x4c6abd + "]: " + _0x339250); } } catch (_0x429f08) { console.log(_0x429f08); } } async ["month_jml_addVideoCount"](_0x2dbf41, _0x50f9ff = {}) { try { const _0x14d272 = { "phone": this.name, "videoType": _0x2dbf41, "flag": this.jml_tokenFlag }; let _0x48ffb2 = { "fn": "month_jml_addVideoCount", "method": "post", "url": "https://wapside.189.cn:9001/jt-sign/lottery/addVideoCount", "json": { "para": this.encrypt_para(_0x14d272) } }, { result: _0xd70cc8, statusCode: _0x362431 } = await this.request(_0x48ffb2), _0x10cd4b = _0x49dfef.get(_0xd70cc8, "code", -1); if (_0x10cd4b == 0) { this.log("看视频[" + _0x2dbf41 + "]得抽奖机会成功"); } else { let _0x201f3c = _0xd70cc8?.["msg"] || _0xd70cc8?.["resoultMsg"] || _0xd70cc8?.["error"] || ""; this.log("看视频[" + _0x2dbf41 + "]得抽奖机会失败[" + _0x10cd4b + "]: " + _0x201f3c); } } catch (_0x1a85d3) { console.log(_0x1a85d3); } } async ["month_jml_refresh"](_0xa658a6 = {}) { try { const _0x459312 = { "phone": this.name, "flag": this.jml_tokenFlag }; let _0x115aa8 = { "fn": "month_jml_refresh", "method": "post", "url": "https://wapside.189.cn:9001/jt-sign/lottery/refresh", "json": { "para": this.encrypt_para(_0x459312) } }, { result: _0x58905d, statusCode: _0x3bcd41 } = await this.request(_0x115aa8), _0x18811b = _0x49dfef.get(_0x58905d, "code", -1); if (_0x18811b == -1) { let _0x5aa123 = _0x58905d?.["rNumber"] || 0; this.log("可以抽奖" + _0x5aa123 + "次"); let _0xbde451 = false; while (_0x5aa123-- > 0) { if (_0xbde451) { let _0x2f5373 = Math.floor(Math.random() * 5000) + 3000; await _0x49dfef.wait(_0x2f5373); } await this.month_jml_lotteryRevice(); _0xbde451 = true; } } else { let _0x45301f = _0x58905d?.["msg"] || _0x58905d?.["resoultMsg"] || _0x58905d?.["error"] || ""; this.log("查询抽奖次数失败[" + _0x18811b + "]: " + _0x45301f); } } catch (_0x120aad) { console.log(_0x120aad); } } async ["month_jml_lotteryRevice"](_0x498793 = {}) { try { const _0x2b7e54 = { "phone": this.name, "flag": this.jml_tokenFlag }; let _0x3ca896 = { "fn": "month_jml_lotteryRevice", "method": "post", "url": "https://wapside.189.cn:9001/jt-sign/lottery/lotteryRevice", "json": { "para": this.encrypt_para(_0x2b7e54) } }, { result: _0x17e63d, statusCode: _0x47228a } = await this.request(_0x3ca896), _0x1292b5 = _0x49dfef.get(_0x17e63d, "code", -1); if (_0x1292b5 == 0) { let { rname: _0x3d7d54, id: _0x2b3b0f } = _0x17e63d; const _0x2cd200 = { "notify": true }; this.log("每月见面礼抽奖: " + _0x3d7d54, _0x2cd200); } else { let _0x4e7de6 = _0x17e63d?.["msg"] || _0x17e63d?.["resoultMsg"] || _0x17e63d?.["error"] || ""; this.log("每月见面礼抽奖失败[" + _0x1292b5 + "]: " + _0x4e7de6); } } catch (_0x355689) { console.log(_0x355689); } } async ["rpc_request"](_0x55b8f9, _0x4b0e9c = "get", _0x2b5ff1 = null) { const _0x2e4617 = new Error(), _0x1b1e2d = _0x2e4617.stack, _0x1eb1c3 = _0x1b1e2d.split("\n"), _0x35b07b = _0x1eb1c3?.[2]?.["match"](/UserClass\.(\w+)/)?.[1] || "rpc"; let _0x190868 = { "fn": _0x35b07b, "method": "post", "url": _0x16d3ea, "json": { "key": _0x344953, "method": _0x4b0e9c, "url": _0x55b8f9.toString(), "headers": this.get_mall_headers(), "data": JSON.stringify(_0x2b5ff1) } }; return await this.request(_0x190868); } async ["auth_login"](_0x1fed7f = {}) { let _0xafb0c3 = false; try { let _0x1b2d26 = this.ticket, _0x2bff70 = new URL("https://wapact.189.cn:9001/unified/user/login"), _0x434a75 = { "ticket": _0x1b2d26, "backUrl": encodeURIComponent("https://wapact.189.cn:9001/JinDouMall/JinDouMall_luckDraw.html?ticket=" + _0x1b2d26), "platformCode": "P201010301", "loginType": 2 }, { result: _0x557820, statusCode: _0x57323f } = await this.rpc_request(_0x2bff70, "POST", _0x434a75), _0x5330c5 = _0x49dfef.get(_0x557820, "code", _0x57323f); if (_0x5330c5 == 0) { let { token: _0x476882, sessionId: _0x17ce63 } = _0x557820?.["biz"]; this.mall_token = _0x476882; _0xafb0c3 = true; } else { let _0x1c5e02 = _0x49dfef.get(_0x557820, "message", ""); this.log("商城登录失败[" + _0x5330c5 + "]: " + _0x1c5e02); } } catch (_0x26e08c) { console.log(_0x26e08c); } finally { return _0xafb0c3; } } async ["queryInfo"](_0x5b2776 = {}) { try { let _0x1b75d6 = new URL("https://wapact.189.cn:9001/gateway/golden/api/queryInfo"); _0x1b75d6.searchParams.append("_", Date.now().toString()); let { result: _0x216d65, statusCode: _0x12037e } = await this.rpc_request(_0x1b75d6), _0x40fdcc = _0x49dfef.get(_0x216d65, "code", _0x12037e); if (_0x40fdcc == 0) this.coin = _0x216d65?.["biz"]?.["amountTotal"] || this.coin, await this.queryTurnTable();else { let _0x1ea57d = _0x49dfef.get(_0x216d65, "message", ""); this.log("查询商城状态失败[" + _0x40fdcc + "]: " + _0x1ea57d); } } catch (_0x1b8d51) { console.log(_0x1b8d51); } } async ["queryTurnTable"](_0x50146b = {}) { try { let _0x720fcb = new URL("https://wapact.189.cn:9001/gateway/golden/api/queryTurnTable"); _0x720fcb.searchParams.append("userType", "1"); _0x720fcb.searchParams.append("_", Date.now().toString()); let { result: _0x1cb020, statusCode: _0x927ab0 } = await this.rpc_request(_0x720fcb), _0x229fb9 = _0x49dfef.get(_0x1cb020, "code", _0x927ab0); if (_0x229fb9 == 0) { let _0x1d2636 = _0x1cb020?.["biz"]?.["xiaoHaoCount"] || 20, _0x35f0bf = _0x1cb020?.["biz"]?.["wzTurntable"]?.["code"] || ""; _0x35f0bf ? await this.lottery_check(_0x35f0bf, _0x1d2636) : this.log("没有获取到转盘抽奖ID"); } else { let _0x2eff62 = _0x49dfef.get(_0x1cb020, "message", ""); this.log("获取转盘抽奖活动失败[" + _0x229fb9 + "]: " + _0x2eff62); } } catch (_0x28d0fc) { console.log(_0x28d0fc); } } async ["lottery_check"](_0xa07018, _0x2e3b05, _0xcb5cc3 = {}) { try { let _0x14c381 = new URL("https://wapact.189.cn:9001/gateway/stand/detail/check"); _0x14c381.searchParams.append("activityId", _0xa07018); _0x14c381.searchParams.append("_", Date.now().toString()); let { result: _0x550887, statusCode: _0x3d5554 } = await this.rpc_request(_0x14c381), _0x345ab0 = _0x49dfef.get(_0x550887, "code", _0x3d5554); if (_0x345ab0 == 0) { let _0x565cdb = _0x550887?.["biz"]?.["resultInfo"]?.["chanceCount"] || 0; this.log("转盘可以抽奖" + _0x565cdb + "次, 消耗金豆" + _0x2e3b05 + "/" + this.coin); let _0x41bc66 = false; while (_0x565cdb-- > 0 && this.coin >= _0x2e3b05) { _0x41bc66 && (await _0x49dfef.wait(3000)); _0x41bc66 = true; await this.lottery_do(_0xa07018, _0x2e3b05); } } else { let _0x2f37b1 = _0x49dfef.get(_0x550887, "message", ""); this.log("查询转盘抽奖次数失败[" + _0x345ab0 + "]: " + _0x2f37b1); } } catch (_0x2d4580) { console.log(_0x2d4580); } } async ["lottery_do"](_0x13b178, _0x33c8a8 = {}) { try { let _0x428f3d = new URL("https://wapact.189.cn:9001/gateway/golden/api/lottery"); const _0x11aef8 = { "activityId": _0x13b178 }; let { result: _0x4584cc, statusCode: _0x239bc9 } = await this.rpc_request(_0x428f3d, "POST", _0x11aef8), _0x3f8c97 = _0x49dfef.get(_0x4584cc, "code", _0x239bc9); if (_0x3f8c97 == 0) { this.coin = _0x4584cc?.["biz"]?.["amountTotal"] || this.coin - xiaoHaoCount; let _0x2998b5 = _0x4584cc?.["biz"]?.["resultCode"], _0x57f91f = ""; switch (_0x2998b5) { case "0": { let _0x4b2a9e = _0x4584cc?.["biz"]?.["resultInfo"]?.["winTitle"] || "空气"; const _0x1c2e0e = { "notify": true }; this.log("转盘抽奖: " + _0x4b2a9e, _0x1c2e0e); return; } case "412": { _0x57f91f = "抽奖次数已达上限"; break; } case "413": case "420": { _0x57f91f = "金豆不足"; break; } default: { this.log(": " + JSON.stringify(_0x4584cc)); _0x57f91f = "未知原因"; break; } } this.log("转盘抽奖失败[" + _0x2998b5 + "]: " + _0x57f91f); } else { let _0x307168 = _0x49dfef.get(_0x4584cc, "message", ""); this.log("转盘抽奖错误[" + _0x3f8c97 + "]: " + _0x307168); } } catch (_0x298342) { console.log(_0x298342); } } async ["userTask"]() { const _0x415202 = { "notify": true }; _0x49dfef.log("\n======= 账号[" + this.index + "][" + this.name + "] =======", _0x415202); if (!this.load_token() && !(await this.login())) { return; } if (!(await this.get_ticket())) return; if (!(await this.get_sign())) return; await this.userCoinInfo(); await this.getLevelRightsList(); await this.month_jml_preCost(); await this.userStatusInfo(); await this.continueSignRecords(); await this.homepage("hg_qd_zrwzjd"); await this.getParadiseInfo(); _0x16d3ea && (await this.userLotteryTask()); await this.userCoinInfo(true); } async ["userLotteryTask"]() { if (!(await this.auth_login())) return; await this.queryInfo(); } } !(async () => { _0x49dfef.read_env(_0x3f433d); _0xa0ff1b(); for (let _0x414b26 of _0x49dfef.userList) { await _0x414b26.userTask(); } })().catch(_0x854f1e => _0x49dfef.log(_0x854f1e)).finally(() => _0x49dfef.exitNow()); async function _0x1a2249(_0x505470 = 0) { let _0x3ad891 = false; try { const _0x436527 = { "fn": "auth", "method": "get", "url": _0x100b57, "timeout": 20000 }; let { statusCode: _0x22aed6, result: _0x383274 } = await _0x3b1630.request(_0x436527); if (_0x22aed6 != 200) return _0x505470++ < _0x3c685e && (_0x3ad891 = await _0x1a2249(_0x505470)), _0x3ad891; if (_0x383274?.["code"] == 0) { _0x383274 = JSON.parse(_0x383274.data.file.data); if (_0x383274?.["commonNotify"] && _0x383274.commonNotify.length > 0) { const _0x35029e = { "notify": true }; _0x49dfef.log(_0x383274.commonNotify.join("\n") + "\n", _0x35029e); } _0x383274?.["commonMsg"] && _0x383274.commonMsg.length > 0 && _0x49dfef.log(_0x383274.commonMsg.join("\n") + "\n"); if (_0x383274[_0x14f289]) { let _0x4cacff = _0x383274[_0x14f289]; _0x4cacff.status == 0 ? _0xf4231c >= _0x4cacff.version ? (_0x3ad891 = true, _0x49dfef.log(_0x4cacff.msg[_0x4cacff.status]), _0x49dfef.log(_0x4cacff.updateMsg), _0x49dfef.log("现在运行的脚本版本是:" + _0xf4231c + ",最新脚本版本:" + _0x4cacff.latestVersion)) : _0x49dfef.log(_0x4cacff.versionMsg) : _0x49dfef.log(_0x4cacff.msg[_0x4cacff.status]); } else _0x49dfef.log(_0x383274.errorMsg); } else _0x505470++ < _0x3c685e && (_0x3ad891 = await _0x1a2249(_0x505470)); } catch (_0x1a136d) { _0x49dfef.log(_0x1a136d); } finally { return _0x3ad891; } } function _0x5370a4(_0x1f7db9) { return new class { constructor(_0x1f51b5) { this.name = _0x1f51b5; this.startTime = Date.now(); const _0x507166 = { "time": true }; this.log("[" + this.name + "]开始运行\n", _0x507166); this.notifyStr = []; this.notifyFlag = true; this.userIdx = 0; this.userList = []; this.userCount = 0; this.default_timestamp_len = 13; this.default_wait_interval = 1000; this.default_wait_limit = 3600000; this.default_wait_ahead = 0; } ["log"](_0x567e36, _0x7b8a3b = {}) { const _0xb3f162 = { "console": true }; Object.assign(_0xb3f162, _0x7b8a3b); if (_0xb3f162.time) { let _0x129649 = _0xb3f162.fmt || "hh:mm:ss"; _0x567e36 = "[" + this.time(_0x129649) + "]" + _0x567e36; } _0xb3f162.notify && this.notifyStr.push(_0x567e36); _0xb3f162.console && console.log(_0x567e36); } ["get"](_0x312e83, _0x5b2d51, _0x1896f9 = "") { let _0x57eb19 = _0x1896f9; return _0x312e83?.["hasOwnProperty"](_0x5b2d51) && (_0x57eb19 = _0x312e83[_0x5b2d51]), _0x57eb19; } ["pop"](_0x794644, _0x5a5725, _0x13f65e = "") { let _0x70d920 = _0x13f65e; return _0x794644?.["hasOwnProperty"](_0x5a5725) && (_0x70d920 = _0x794644[_0x5a5725], delete _0x794644[_0x5a5725]), _0x70d920; } ["copy"](_0x2acf1b) { return Object.assign({}, _0x2acf1b); } ["read_env"](_0x1830f6) { let _0xe4a559 = _0x4aec53.map(_0x4d5e0e => process.env[_0x4d5e0e]); for (let _0x5d7af5 of _0xe4a559.filter(_0x1ed70f => !!_0x1ed70f)) { for (let _0x118e24 of _0x5d7af5.split(_0x1876a7).filter(_0x2a2463 => !!_0x2a2463)) { if (this.userList.includes(_0x118e24)) continue; this.userList.push(new _0x1830f6(_0x118e24)); } } this.userCount = this.userList.length; if (!this.userCount) { const _0x4726f2 = { "notify": true }; return this.log("未找到变量,请检查变量" + _0x4aec53.map(_0x327825 => "[" + _0x327825 + "]").join("或"), _0x4726f2), false; } return this.log("共找到" + this.userCount + "个账号"), true; } ["time"](_0x4bbd9b, _0x27948f = null) { let _0x32781a = _0x27948f ? new Date(_0x27948f) : new Date(), _0x1ac37c = { "M+": _0x32781a.getMonth() + 1, "d+": _0x32781a.getDate(), "h+": _0x32781a.getHours(), "m+": _0x32781a.getMinutes(), "s+": _0x32781a.getSeconds(), "q+": Math.floor((_0x32781a.getMonth() + 3) / 3), "S": this.padStr(_0x32781a.getMilliseconds(), 3) }; /(y+)/.test(_0x4bbd9b) && (_0x4bbd9b = _0x4bbd9b.replace(RegExp.$1, (_0x32781a.getFullYear() + "").substr(4 - RegExp.$1.length))); for (let _0x2eb56e in _0x1ac37c) new RegExp("(" + _0x2eb56e + ")").test(_0x4bbd9b) && (_0x4bbd9b = _0x4bbd9b.replace(RegExp.$1, 1 == RegExp.$1.length ? _0x1ac37c[_0x2eb56e] : ("00" + _0x1ac37c[_0x2eb56e]).substr(("" + _0x1ac37c[_0x2eb56e]).length))); return _0x4bbd9b; } async ["showmsg"]() { if (!this.notifyFlag) return; if (!this.notifyStr.length) return; var _0x243e42 = require("./sendNotify"); this.log("\n============== 推送 =============="); await _0x243e42.sendNotify(this.name, this.notifyStr.join("\n")); } ["padStr"](_0x673339, _0xa81675, _0x2f4e5f = {}) { let _0x80b59e = _0x2f4e5f.padding || "0", _0xf4e49e = _0x2f4e5f.mode || "l", _0x2f4a48 = String(_0x673339), _0x6032bd = _0xa81675 > _0x2f4a48.length ? _0xa81675 - _0x2f4a48.length : 0, _0x37b710 = ""; for (let _0x360ad0 = 0; _0x360ad0 < _0x6032bd; _0x360ad0++) { _0x37b710 += _0x80b59e; } return _0xf4e49e == "r" ? _0x2f4a48 = _0x2f4a48 + _0x37b710 : _0x2f4a48 = _0x37b710 + _0x2f4a48, _0x2f4a48; } ["json2str"](_0x539dfb, _0x36ffa7, _0x23f214 = false) { let _0x150241 = []; for (let _0x4584f4 of Object.keys(_0x539dfb).sort()) { let _0x190852 = _0x539dfb[_0x4584f4]; if (_0x190852 && _0x23f214) { _0x190852 = encodeURIComponent(_0x190852); } _0x150241.push(_0x4584f4 + "=" + _0x190852); } return _0x150241.join(_0x36ffa7); } ["str2json"](_0x4b5ef6, _0x3c5776 = false) { let _0x30cbdb = {}; for (let _0x8c21 of _0x4b5ef6.split("&")) { if (!_0x8c21) continue; let _0x2ca926 = _0x8c21.indexOf("="); if (_0x2ca926 == -1) continue; let _0x2458c5 = _0x8c21.substr(0, _0x2ca926), _0x246ded = _0x8c21.substr(_0x2ca926 + 1); _0x3c5776 && (_0x246ded = decodeURIComponent(_0x246ded)); _0x30cbdb[_0x2458c5] = _0x246ded; } return _0x30cbdb; } ["randomPattern"](_0x2b877c, _0xd1024 = "abcdef0123456789") { let _0x133f94 = ""; for (let _0x26d557 of _0x2b877c) { _0x26d557 == "x" ? _0x133f94 += _0xd1024.charAt(Math.floor(Math.random() * _0xd1024.length)) : _0x26d557 == "X" ? _0x133f94 += _0xd1024.charAt(Math.floor(Math.random() * _0xd1024.length)).toUpperCase() : _0x133f94 += _0x26d557; } return _0x133f94; } ["randomUuid"]() { return this.randomPattern("xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"); } ["randomString"](_0x44a497, _0x2e6578 = "abcdef0123456789") { let _0x570d69 = ""; for (let _0x23bfd5 = 0; _0x23bfd5 < _0x44a497; _0x23bfd5++) { _0x570d69 += _0x2e6578.charAt(Math.floor(Math.random() * _0x2e6578.length)); } return _0x570d69; } ["randomList"](_0x304d02) { let _0x48b21b = Math.floor(Math.random() * _0x304d02.length); return _0x304d02[_0x48b21b]; } ["wait"](_0x2aba64) { return new Promise(_0x261319 => setTimeout(_0x261319, _0x2aba64)); } async ["exitNow"]() { await this.showmsg(); let _0x12d627 = Date.now(), _0x869a83 = (_0x12d627 - this.startTime) / 1000; this.log(""); const _0x167e57 = { "time": true }; this.log("[" + this.name + "]运行结束,共运行了" + _0x869a83 + "秒", _0x167e57); process.exit(0); } ["normalize_time"](_0x504b30, _0x55d294 = {}) { let _0x57e46f = _0x55d294.len || this.default_timestamp_len; _0x504b30 = _0x504b30.toString(); let _0x3ec8ce = _0x504b30.length; while (_0x3ec8ce < _0x57e46f) { _0x504b30 += "0"; } return _0x3ec8ce > _0x57e46f && (_0x504b30 = _0x504b30.slice(0, 13)), parseInt(_0x504b30); } async ["wait_until"](_0x273c17, _0x8f529c = {}) { let _0x1ec44d = _0x8f529c.logger || this, _0xf3338c = _0x8f529c.interval || this.default_wait_interval, _0x4bdb2a = _0x8f529c.limit || this.default_wait_limit, _0x220dad = _0x8f529c.ahead || this.default_wait_ahead; if (typeof _0x273c17 == "string" && _0x273c17.includes(":")) { if (_0x273c17.includes("-")) _0x273c17 = new Date(_0x273c17).getTime();else { let _0x38f17a = this.time("yyyy-MM-dd "); _0x273c17 = new Date(_0x38f17a + _0x273c17).getTime(); } } let _0x397c55 = this.normalize_time(_0x273c17) - _0x220dad, _0x57bf1f = this.time("hh:mm:ss.S", _0x397c55), _0x6a4035 = Date.now(); _0x6a4035 > _0x397c55 && (_0x397c55 += 86400000); let _0x60ae2e = _0x397c55 - _0x6a4035; if (_0x60ae2e > _0x4bdb2a) { const _0x46b1bf = { "time": true }; _0x1ec44d.log("离目标时间[" + _0x57bf1f + "]大于" + _0x4bdb2a / 1000 + "秒,不等待", _0x46b1bf); } else { const _0x50f445 = { "time": true }; _0x1ec44d.log("离目标时间[" + _0x57bf1f + "]还有" + _0x60ae2e / 1000 + "秒,开始等待", _0x50f445); while (_0x60ae2e > 0) { let _0x244b56 = Math.min(_0x60ae2e, _0xf3338c); await this.wait(_0x244b56); _0x6a4035 = Date.now(); _0x60ae2e = _0x397c55 - _0x6a4035; } const _0x5938fc = { "time": true }; _0x1ec44d.log("已完成等待", _0x5938fc); } } async ["wait_gap_interval"](_0x560a3a, _0x4079c7) { let _0x41c668 = Date.now() - _0x560a3a; _0x41c668 < _0x4079c7 && (await this.wait(_0x4079c7 - _0x41c668)); } }(_0x1f7db9); }