const dataHandler = require('./DataHandler.js'); const dataUtil = require('./DataUtil.js'); module['exports'] = { 'connectDevice': connectDevice, 'disconnectDevice': disconnectDevice, 'transCmd': transCmd }; const codeEnum = { 'successCode': 0x0, 'failureCode': 0x1, 'stopScanFailure': 0x2, 'creatConnectionFailure': 0x3, 'getServiceFailure': 0x4, 'noTargetServiceId': 0x5, 'getCharacteristicsFailure': 0x6, 'noTargetCharacteristic': 0x7, 'monitorNotificationFailure': 0x8, 'authResponseFailure': 0x9, 'initResponseFailure': 0xa, 'initDeviceFailure': 0xb, 'dataFrameTransboundary': 0xc, 'notPassBccCheck': 0xd, 'sendDataFailure': 0xe, 'paraError': 0xf, 'timeout': 0x64 }; const FUNCTION = 'function'; const serviceUUID = '0000FEE7-0000-1000-8000-00805F9B34FB'; const writeUUID = '0000FEC7-0000-1000-8000-00805F9B34FB'; const readUUID = '0000FEC8-0000-1000-8000-00805F9B34FB'; const connectTime = 0x14 * 0x3e8; const startA2Time = 0xf0; const waitA2ResponseTime = 0x3e8; var haveFoundDevice = new Array(); var connectDeviceId; var connectCallback; var connectTimer; var startA2Timer; var waitA2ResponseTimer; var frame = ''; var frameLen = 0x0; var frames = new Array(); var framesLen = 0x0; var dataHandlerCallback; var sendBufferArray = new Array(); var cmds = new Array(); var sendIndex; var resendCount = 0x3; function toObject(_0x5ee6db, _0x2168f6, _0x5458ea) { return { 'code': _0x5ee6db, 'data': _0x2168f6, 'msg': _0x5458ea }; } function startConnectBle() { var _0x4550a1 = { 'LgFYT': function(_0x4df026) { return _0x4df026(); }, 'FfEro': function(_0x38c3b0, _0x1b0988) { return _0x38c3b0 != _0x1b0988; }, 'KcCvQ': function(_0x3006b6, _0x5dfc29) { return _0x3006b6(_0x5dfc29); }, 'nSmfC': function(_0x753390, _0x288deb) { return _0x753390 == _0x288deb; }, 'HDjvs': function(_0x333986, _0x27c566) { return _0x333986(_0x27c566); }, 'vNjFd': function(_0x56353e, _0x31166a, _0x337558, _0x2158b6) { return _0x56353e(_0x31166a, _0x337558, _0x2158b6); }, 'rpUfi': 'creatConnectionFailure' }; my['connectBLEDevice']({ 'deviceId': connectDeviceId, 'success': () => { _0x4550a1['LgFYT'](monitorNotification); }, 'fail': () => { if (_0x4550a1['FfEro'](typeof connectTimer, undefined)) { _0x4550a1['KcCvQ'](clearTimeout, connectTimer); } _0x4550a1['nSmfC'](typeof connectCallback, FUNCTION) && _0x4550a1['HDjvs'](connectCallback, _0x4550a1['vNjFd'](toObject, codeEnum[_0x4550a1['rpUfi']], undefined, _0x4550a1[ 'rpUfi'])); } }); } function monitorNotification() { var _0x15a729 = { 'FQWjo': function(_0x239328, _0x5e5e72) { return _0x239328 != _0x5e5e72; }, 'wabUq': function(_0x1d6cfc, _0x1835f4) { return _0x1d6cfc(_0x1835f4); }, 'rMkXp': function(_0x2282e8, _0x52c590) { return _0x2282e8 == _0x52c590; }, 'CsEKL': function(_0x462c55, _0x2953a2) { return _0x462c55(_0x2953a2); }, 'UabTl': function(_0x1025a3, _0x27ba6b, _0x5c3d09, _0x16168e) { return _0x1025a3(_0x27ba6b, _0x5c3d09, _0x16168e); }, 'hgeYg': 'successCode', 'zTsAo': 'success', 'HqniW': function(_0x4bc615, _0xa92ae7) { return _0x4bc615 != _0xa92ae7; }, 'KHsMO': function(_0x32d2c4, _0x420f44) { return _0x32d2c4(_0x420f44); }, 'SoqrE': function(_0x498cdb, _0xe84ff6) { return _0x498cdb == _0xe84ff6; }, 'zLNFl': function(_0x6a3c7f, _0x2b857e) { return _0x6a3c7f(_0x2b857e); }, 'VmmOk': 'monitorNotificationFailure', 'Qqyhu': 'deviceId', 'VDZGo': 'serviceId', 'qVkFg': 'characteristicId', 'yyhYj': function(_0xdf816c, _0x521c06) { return _0xdf816c(_0x521c06); }, 'ZDyaC': 'value' }; my['notifyBLECharacteristicValueChange']({ 'deviceId': connectDeviceId, 'serviceId': serviceUUID, 'characteristicId': readUUID, 'state': !![], 'success': () => { if (_0x15a729['FQWjo'](typeof connectTimer, undefined)) { _0x15a729['wabUq'](clearTimeout, connectTimer); } _0x15a729['rMkXp'](typeof connectCallback, FUNCTION) && _0x15a729['CsEKL'](connectCallback, _0x15a729['UabTl'](toObject, codeEnum[_0x15a729['hgeYg']], undefined, _0x15a729[ 'zTsAo'])); }, 'fail': () => { if (_0x15a729['HqniW'](typeof connectTimer, undefined)) { _0x15a729['KHsMO'](clearTimeout, connectTimer); } _0x15a729['SoqrE'](typeof connectCallback, FUNCTION) && _0x15a729['zLNFl'](connectCallback, _0x15a729['UabTl'](toObject, codeEnum[_0x15a729['VmmOk']], undefined, _0x15a729[ 'VmmOk'])); } }); my['offBLECharacteristicValueChange'](); my['onBLECharacteristicValueChange'](_0x4f49b5 => { if (_0x15a729['SoqrE'](_0x4f49b5[_0x15a729['Qqyhu']], connectDeviceId) && _0x15a729['SoqrE'](_0x4f49b5[ _0x15a729['VDZGo']]['toUpperCase'](), serviceUUID) && _0x15a729['SoqrE'](_0x4f49b5[_0x15a729[ 'qVkFg']]['toUpperCase'](), readUUID)) { _0x15a729['yyhYj'](analyticData, _0x4f49b5[_0x15a729['ZDyaC']]); } }); } function analyticData(_0x3417d9) { var _0x24bb41 = { 'fkEQK': 'log', 'lJZMS': function(_0x1a1e7e, _0x255b7d) { return _0x1a1e7e + _0x255b7d; }, 'WghKg': '接收:', 'RdUuU': function(_0x2a33ca, _0xde3fe4) { return _0x2a33ca == _0xde3fe4; }, 'wDxxL': 'length', 'pcIMI': function(_0x5af80b, _0x377ebd) { return _0x5af80b * _0x377ebd; }, 'FsLxz': function(_0x292e0f, _0x385cbc, _0x40df32) { return _0x292e0f(_0x385cbc, _0x40df32); }, 'EqWvk': 'slice', 'xmqLR': function(_0x45b3d4, _0x169f32) { return _0x45b3d4 > _0x169f32; }, 'pELDv': function(_0x1020e3, _0x552548) { return _0x1020e3(_0x552548); }, 'KldZO': function(_0xb6a01e, _0x67c89, _0x95af07, _0x425215) { return _0xb6a01e(_0x67c89, _0x95af07, _0x425215); }, 'aNsFx': 'dataFrameTransboundary', 'umeEs': '数据长度越界', 'IhEpG': function(_0x1f0d96, _0x4073a5) { return _0x1f0d96 == _0x4073a5; }, 'oFlFY': function(_0xb947a1, _0x501994) { return _0xb947a1 === _0x501994; }, 'pasmO': '2712', 'EVDJj': function(_0x292a1d, _0x3bcf3f) { return _0x292a1d + _0x3bcf3f; }, 'esmRD': function(_0x36b007, _0x2a55b2) { return _0x36b007 - _0x2a55b2; }, 'lofjH': 'push', 'AIPqy': function(_0x3d76a1, _0x304925) { return _0x3d76a1 == _0x304925; }, 'dDmxx': function(_0x4684fd, _0x5e4d24) { return _0x4684fd < _0x5e4d24; }, 'jIOte': function(_0x162c2f, _0x44804f) { return _0x162c2f < _0x44804f; }, 'NRiaj': function(_0x44b2bd, _0x20d1f4) { return _0x44b2bd / _0x20d1f4; }, 'mjcGA': function(_0x865e0, _0x345bbd) { return _0x865e0 * _0x345bbd; }, 'lLaCr': function(_0x5b6b8d, _0x4d70e4) { return _0x5b6b8d * _0x4d70e4; }, 'jYryt': function(_0x17ba85, _0x468780) { return _0x17ba85 != _0x468780; }, 'kSoQX': function(_0x68fad0, _0x2bdebe, _0x463e29) { return _0x68fad0(_0x2bdebe, _0x463e29); }, 'KmMCF': function(_0x5bef66, _0x25a02d) { return _0x5bef66 == _0x25a02d; }, 'ZxDQy': function(_0x25ebdd, _0x762e99) { return _0x25ebdd == _0x762e99; }, 'HoabD': function(_0x150f78, _0x255976) { return _0x150f78(_0x255976); }, 'BfdbC': 'notPassBccCheck', 'YZwBs': 'bcc校验不通过', 'hlOAm': function(_0x40cbbd, _0x230231) { return _0x40cbbd == _0x230231; }, 'iMZzn': function(_0x146f7f, _0x21851f, _0x4a3eb0, _0x5905c2) { return _0x146f7f(_0x21851f, _0x4a3eb0, _0x5905c2); }, 'gfLSq': 'successCode', 'QjwgR': '无效数据' }; console[_0x24bb41['fkEQK']](_0x24bb41['lJZMS'](_0x24bb41['WghKg'], _0x3417d9)); if (_0x24bb41['RdUuU'](frame[_0x24bb41['wDxxL']], 0x0)) { frameLen = _0x24bb41['pcIMI'](_0x24bb41['FsLxz'](parseInt, _0x3417d9[_0x24bb41['EqWvk']](0x4, 0x8), 0x10), 0x2); } frame += _0x3417d9; if (_0x24bb41['xmqLR'](frame[_0x24bb41['wDxxL']], frameLen)) { frame = ''; frameLen = 0x0; _0x24bb41['RdUuU'](typeof dataHandlerCallback, FUNCTION) && _0x24bb41['pELDv'](dataHandlerCallback, _0x24bb41[ 'KldZO'](toObject, codeEnum[_0x24bb41['aNsFx']], '', _0x24bb41['umeEs'])); } else if (_0x24bb41['IhEpG'](frame[_0x24bb41['wDxxL']], frameLen)) { let _0x217ea6 = frame[_0x24bb41['EqWvk']](0x8, 0xc); if (_0x24bb41['oFlFY'](_0x217ea6, _0x24bb41['pasmO'])) { let _0x479193 = frame[_0x24bb41['EqWvk']](0x10); let _0x3fa5f5 = _0x479193[_0x24bb41['EqWvk']](0x8, -0x6); frame = ''; frameLen = 0x0; if (_0x24bb41['IhEpG'](frames[_0x24bb41['wDxxL']], 0x0)) { let _0xd9322e = _0x24bb41['FsLxz'](parseInt, _0x3fa5f5[_0x24bb41['EqWvk']](0x4, 0x6), 0x10); framesLen = _0x24bb41['EVDJj'](_0x24bb41['esmRD'](_0xd9322e, 0x80), 0x1); } frames[_0x24bb41['lofjH']](_0x3fa5f5); if (_0x24bb41['AIPqy'](frames[_0x24bb41['wDxxL']], framesLen)) { let _0x25470e = !![]; for (let _0x5e68eb = 0x0; _0x24bb41['dDmxx'](_0x5e68eb, frames[_0x24bb41['wDxxL']]); _0x5e68eb++) { let _0x38da37 = frames[_0x5e68eb]; let _0x9db696 = 0x0; for (let _0x875234 = 0x1; _0x24bb41['jIOte'](_0x875234, _0x24bb41['esmRD'](_0x24bb41['pELDv']( parseInt, _0x24bb41['NRiaj'](_0x38da37[_0x24bb41['wDxxL']], 0x2)), 0x1)); _0x875234++) { let _0x4f3402 = _0x24bb41['FsLxz'](parseInt, _0x38da37[_0x24bb41['EqWvk']](_0x24bb41['mjcGA']( _0x875234, 0x2), _0x24bb41['lLaCr'](_0x24bb41['EVDJj'](_0x875234, 0x1), 0x2)), 0x10); _0x9db696 ^= _0x4f3402; } if (_0x24bb41['jYryt'](_0x9db696, _0x24bb41['kSoQX'](parseInt, _0x38da37[_0x24bb41['EqWvk']](-0x2), 0x10))) { _0x25470e = ![]; break; } } if (_0x24bb41['KmMCF'](_0x25470e, ![])) { frames = new Array(); framesLen = 0x0; _0x24bb41['ZxDQy'](typeof dataHandlerCallback, FUNCTION) && _0x24bb41['HoabD'](dataHandlerCallback, _0x24bb41['KldZO'](toObject, codeEnum[_0x24bb41['BfdbC']], '', _0x24bb41['YZwBs'])); } else { let _0x15f00a = ''; for (let _0x5e68eb = 0x0; _0x24bb41['jIOte'](_0x5e68eb, frames[_0x24bb41['wDxxL']]); _0x5e68eb++) { let _0x38da37 = frames[_0x5e68eb]; _0x15f00a += _0x38da37[_0x24bb41['EqWvk']](0x8, -0x2); } frames = new Array(); framesLen = 0x0; _0x24bb41['hlOAm'](typeof dataHandlerCallback, FUNCTION) && _0x24bb41['HoabD'](dataHandlerCallback, _0x24bb41['iMZzn'](toObject, codeEnum[_0x24bb41['gfLSq']], _0x15f00a, '成功')); } } } else { console[_0x24bb41['fkEQK']](_0x24bb41['QjwgR']); frame = ''; frameLen = 0x0; } } } function sendDataToDevice(_0x2807ea, _0x312487) { var _0x236c37 = { 'AryFh': '0|4|6|5|2|7|1|3', 'MhTmj': function(_0x44d5e7) { return _0x44d5e7(); }, 'HnMcm': 'concat' }; var _0x3d7fb7 = _0x236c37['AryFh']['split']('|'), _0x20a7c5 = 0x0; while (!![]) { switch (_0x3d7fb7[_0x20a7c5++]) { case '0': dataHandlerCallback = _0x312487; continue; case '1': framesLen = 0x0; continue; case '2': frameLen = 0x0; continue; case '3': _0x236c37['MhTmj'](runningSendData); continue; case '4': sendBufferArray = new Array()[_0x236c37['HnMcm']](_0x2807ea); continue; case '5': frame = ''; continue; case '6': sendIndex = 0x0; continue; case '7': frames = new Array(); continue; } break; } } function connectDevice(_0x2821e2, _0x65b5e0, _0x7ce0c6) { var _0x53989e = { 'HtLBo': function(_0x1a8514, _0x115888) { return _0x1a8514 == _0x115888; }, 'RjdoP': function(_0x481733, _0x1fa86c) { return _0x481733(_0x1fa86c); }, 'KiSCX': function(_0x39838c, _0x3b8b3b, _0x1913e7, _0x542790) { return _0x39838c(_0x3b8b3b, _0x1913e7, _0x542790); }, 'Mfpkb': 'timeout', 'dXRTU': '2|3|4|1|6|5|0', 'uNSuf': function(_0x4875e3) { return _0x4875e3(); }, 'xOnTU': function(_0x54dcbb, _0x3b6199) { return _0x54dcbb != _0x3b6199; }, 'irVVK': function(_0x2d2207, _0x3b8012) { return _0x2d2207 != _0x3b8012; }, 'HLIVO': function(_0x512ec1, _0x3c0087, _0x501450) { return _0x512ec1(_0x3c0087, _0x501450); }, 'WnITT': function(_0xc61bf4, _0x160b66) { return _0xc61bf4 != _0x160b66; }, 'VjmOl': function(_0x2b34fb, _0x60a9f2) { return _0x2b34fb(_0x60a9f2); }, 'FlTBJ': function(_0x47b413, _0x5dcddd) { return _0x47b413 == _0x5dcddd; }, 'QXsIl': function(_0x301674, _0x1afebe, _0x33c25d, _0x226a1b) { return _0x301674(_0x1afebe, _0x33c25d, _0x226a1b); }, 'ItFKy': 'failureCode', 'bKJpu': 'error\x20Device' }; if (_0x2821e2['name']['startsWith']('JT')) { var _0x4f004c = _0x53989e['dXRTU']['split']('|'), _0x240cb2 = 0x0; while (!![]) { switch (_0x4f004c[_0x240cb2++]) { case '0': _0x53989e['uNSuf'](startConnectBle); continue; case '1': if (_0x53989e['xOnTU'](typeof startA2Timer, undefined)) { _0x53989e['RjdoP'](clearTimeout, startA2Timer); } continue; case '2': connectDeviceId = _0x2821e2['deviceId']; continue; case '3': connectCallback = _0x65b5e0; continue; case '4': if (_0x53989e['irVVK'](typeof connectTimer, undefined)) { _0x53989e['RjdoP'](clearTimeout, connectTimer); } continue; case '5': connectTimer = _0x53989e['HLIVO'](setTimeout, () => { _0x53989e['HtLBo'](typeof connectCallback, FUNCTION) && _0x53989e['RjdoP']( connectCallback, _0x53989e['KiSCX'](toObject, codeEnum[_0x53989e['Mfpkb']], undefined, _0x53989e['Mfpkb'])); }, connectTime); continue; case '6': if (_0x53989e['WnITT'](typeof waitA2ResponseTimer, undefined)) { _0x53989e['VjmOl'](clearTimeout, waitA2ResponseTimer); } continue; } break; } } else { _0x53989e['FlTBJ'](typeof _0x65b5e0, FUNCTION) && _0x53989e['VjmOl'](_0x65b5e0, _0x53989e['QXsIl'](toObject, codeEnum[_0x53989e['ItFKy']], undefined, _0x53989e['bKJpu'])); } } function disconnectDevice(_0x183fbd) { var _0x4071bf = { 'frIQf': function(_0x1f7632, _0x33d5dc) { return _0x1f7632(_0x33d5dc); }, 'ofMRL': function(_0x477653, _0x4380db, _0x1b9232, _0x1e0ccb) { return _0x477653(_0x4380db, _0x1b9232, _0x1e0ccb); }, 'UduKH': 'successCode', 'WHXlI': function(_0x5991ca, _0x4da18a) { return _0x5991ca(_0x4da18a); }, 'FOJqJ': function(_0xc13793, _0x5bcf74, _0x5af3f6, _0x38e867) { return _0xc13793(_0x5bcf74, _0x5af3f6, _0x38e867); } }; const _0x1ac8cc = _0x4071bf['WHXlI'](String, connectDeviceId); my['disconnectBLEDevice']({ 'deviceId': _0x1ac8cc, 'success': () => { _0x4071bf['frIQf'](_0x183fbd, _0x4071bf['ofMRL'](toObject, codeEnum[_0x4071bf['UduKH']], undefined, '成功')); }, 'fail': _0x25c60d => { _0x4071bf['WHXlI'](_0x183fbd, _0x4071bf['FOJqJ'](toObject, _0x25c60d['errCode'], _0x25c60d, _0x25c60d['errMsg'])); } }); } function promise(_0x8611a8, _0x17d44c) { var _0x57a13e = { 'qsFjE': function(_0x517708, _0x4ac289) { return _0x517708 === _0x4ac289; }, 'akmwR': 'successCode', 'EkyRW': '发送数据成功', 'lgoBh': function(_0x5955f7, _0x484dfe) { return _0x5955f7 == _0x484dfe; }, 'JpDLA': function(_0x1b21d5, _0xec32a) { return _0x1b21d5 + _0xec32a; }, 'XEszP': 'fff\x20d\x20', 'lUuNc': function(_0x50dd78, _0x5270ad) { return _0x50dd78(_0x5270ad); }, 'PIrza': '数据返回错误', 'UxBAQ': 'TLV指令集有指令执行失败', 'dDJyk': '条指令执行失败', 'OcOiy': '错误码:', 'semfe': function(_0x3f09af, _0xca4372) { return _0x3f09af - _0xca4372; }, 'nNxDK': function(_0x22879a, _0x48a432) { return _0x22879a - _0x48a432; }, 'devEz': '发送数据失败', 'TYSxn': function(_0x330c0f, _0x3d61ad, _0x24dc40) { return _0x330c0f(_0x3d61ad, _0x24dc40); } }; return new Promise((_0x55a6de, _0x1fe213) => { var _0x4d6053 = { 'PoesZ': function(_0x3e2f31, _0x4bf6fe) { return _0x57a13e['qsFjE'](_0x3e2f31, _0x4bf6fe); }, 'vweUD': _0x57a13e['akmwR'], 'pHbgn': _0x57a13e['EkyRW'], 'QwVqQ': function(_0x4c7e24, _0x215668) { return _0x57a13e['lgoBh'](_0x4c7e24, _0x215668); }, 'yKdUw': function(_0x5b259c, _0x34d601) { return _0x57a13e['JpDLA'](_0x5b259c, _0x34d601); }, 'cfsqJ': _0x57a13e['XEszP'], 'CAXDc': function(_0x1f07df, _0x540d04) { return _0x57a13e['lUuNc'](_0x1f07df, _0x540d04); }, 'jBiNJ': _0x57a13e['PIrza'], 'BzlXW': _0x57a13e['UxBAQ'], 'BVcHJ': function(_0x282541, _0x1ca91d) { return _0x57a13e['JpDLA'](_0x282541, _0x1ca91d); }, 'ijqLl': _0x57a13e['dDJyk'], 'GnLZC': _0x57a13e['OcOiy'], 'Gnptf': function(_0x2d29b6, _0xc6eca5) { return _0x57a13e['semfe'](_0x2d29b6, _0xc6eca5); }, 'irfex': function(_0x280066, _0xfbe0d9) { return _0x57a13e['nNxDK'](_0x280066, _0xfbe0d9); }, 'pdxpx': _0x57a13e['devEz'], 'hMeRj': function(_0x6ff70f, _0x965777) { return _0x57a13e['lUuNc'](_0x6ff70f, _0x965777); } }; if (_0x57a13e['qsFjE'](_0x17d44c, '10')) { var _0x404319 = dataUtil['makeA3SendData']('00', dataHandler['makeTLV']([_0x8611a8])); } else { var _0x404319 = dataUtil['makeA8SendData']('00', dataHandler['makeTLV']([_0x8611a8])); } _0x57a13e['TYSxn'](sendDataToDevice, _0x404319, _0xe8c5dc => { if (_0x4d6053['PoesZ'](_0xe8c5dc['code'], codeEnum[_0x4d6053['vweUD']])) { console['log'](_0x4d6053['pHbgn']); if (_0x4d6053['PoesZ'](_0xe8c5dc['data']['slice'](0x2, 0x4), '00') || _0x4d6053['PoesZ'] (_0xe8c5dc['data']['slice'](0x2, 0x4), 'cf')) { let _0x2f8bc7 = _0xe8c5dc['data']['slice'](0xa); let _0x28359e = dataHandler['resolveTLV'](_0xe8c5dc['data']['slice'](0xa)); console['log'](_0x28359e); if (_0x4d6053['QwVqQ'](_0x28359e['length'], 0x1)) { console['log'](_0x4d6053['yKdUw'](_0x4d6053['cfsqJ'], _0x28359e[0x0]['slice'](- 0x4))); _0x4d6053['CAXDc'](_0x55a6de, _0x28359e[0x0]); } else { _0x4d6053['CAXDc'](_0x1fe213, _0x4d6053['jBiNJ']); } } else { console['log'](_0x4d6053['BzlXW']); let _0x27885e = _0xe8c5dc['data']['slice'](0xa); let _0x28359e = dataHandler['resolveTLV'](_0xe8c5dc['data']['slice'](0xa)); console['log'](_0x4d6053['BVcHJ'](_0x4d6053['BVcHJ']('第', _0x28359e['length']), _0x4d6053['ijqLl'])); console['log'](_0x4d6053['BVcHJ'](_0x4d6053['GnLZC'], _0x28359e[_0x4d6053['Gnptf']( _0x28359e['length'], 0x1)]['slice'](-0x4))); _0x4d6053['CAXDc'](_0x1fe213, _0x4d6053['BVcHJ'](_0x4d6053['GnLZC'], _0x28359e[ _0x4d6053['irfex'](_0x28359e['length'], 0x1)]['slice'](-0x4))); } } else { console['log'](_0x4d6053['pdxpx']); _0x4d6053['hMeRj'](_0x1fe213, _0xe8c5dc['msg']); } }); }); } function transCmd(_0xde7eb4, _0x1a4d21, _0x42d68b) { var _0x4b1f24 = { 'VWmXt': '2|0|5|6|4|1|3', 'BTFJV': function(_0x593ed3, _0x258eab) { return _0x593ed3 != _0x258eab; }, 'EfnxL': function(_0x5699d5, _0x1706e0) { return _0x5699d5 == _0x1706e0; }, 'vjylQ': function(_0x1c233c, _0x3cea84) { return _0x1c233c(_0x3cea84); }, 'XIzkY': function(_0x30ea72, _0x4663fa, _0x5d8443, _0x1db964) { return _0x30ea72(_0x4663fa, _0x5d8443, _0x1db964); }, 'aZcbR': 'paraError', 'QKxlV': 'transCmd\x20type\x20错误', 'NKEag': function(_0x32678f, _0x555d45) { return _0x32678f === _0x555d45; }, 'lewiC': function(_0xf0ccd3, _0x4e82ba) { return _0xf0ccd3 > _0x4e82ba; }, 'hinmB': function(_0x44482e, _0x444ede, _0x35e820) { return _0x44482e(_0x444ede, _0x35e820); }, 'uMjay': function(_0x2ed622, _0x35f52b) { return _0x2ed622(_0x35f52b); }, 'gDogZ': function(_0xe55150, _0x595c7c, _0x56893a, _0x58d923) { return _0xe55150(_0x595c7c, _0x56893a, _0x58d923); }, 'VvCBp': 'successCode', 'bdmhr': function(_0x2b7e16, _0x23f031) { return _0x2b7e16 != _0x23f031; }, 'GHLRh': 'failureCode', 'PfAjO': function(_0x4c80a4, _0x53c5b0) { return _0x4c80a4 + _0x53c5b0; }, 'fSnFT': function(_0x347e38, _0x495cfe) { return _0x347e38 < _0x495cfe; }, 'uHiMI': function(_0x2cda5d, _0x35c360, _0xd476cd) { return _0x2cda5d(_0x35c360, _0xd476cd); } }; var _0x56efdb = _0x4b1f24['VWmXt']['split']('|'), _0x5c6cad = 0x0; while (!![]) { switch (_0x56efdb[_0x5c6cad++]) { case '0': if (_0x4b1f24['BTFJV'](_0x1a4d21, '10') && _0x4b1f24['BTFJV'](_0x1a4d21, '20')) { _0x4b1f24['EfnxL'](typeof _0x42d68b, FUNCTION) && _0x4b1f24['vjylQ'](_0x42d68b, _0x4b1f24['XIzkY']( toObject, codeEnum[_0x4b1f24['aZcbR']], undefined, _0x4b1f24['QKxlV'])); return; } continue; case '1': var _0x3872ac; continue; case '2': var _0x450e50 = { 'jFsDk': function(_0x5e5e20, _0x4b4109) { return _0x4b1f24['NKEag'](_0x5e5e20, _0x4b4109); }, 'VtjGx': function(_0x49740d, _0x1c0619) { return _0x4b1f24['lewiC'](_0x49740d, _0x1c0619); }, 'rIuhY': function(_0x1cf62a, _0x4ffeea, _0x49e833) { return _0x4b1f24['hinmB'](_0x1cf62a, _0x4ffeea, _0x49e833); }, 'Hkerm': function(_0x633663, _0x3342f2) { return _0x4b1f24['EfnxL'](_0x633663, _0x3342f2); }, 'zJxPi': function(_0x57e236, _0x23f1cf) { return _0x4b1f24['uMjay'](_0x57e236, _0x23f1cf); }, 'txDHM': function(_0x500bb4, _0x2da146, _0x4c893b, _0x316b5a) { return _0x4b1f24['gDogZ'](_0x500bb4, _0x2da146, _0x4c893b, _0x316b5a); }, 'ubpqa': _0x4b1f24['VvCBp'], 'KJSIC': function(_0x351d3c, _0x57c472) { return _0x4b1f24['bdmhr'](_0x351d3c, _0x57c472); }, 'ItIGB': function(_0x4b9e41, _0x2f987a) { return _0x4b1f24['EfnxL'](_0x4b9e41, _0x2f987a); }, 'FbhVT': function(_0x2f8fb3, _0x13611f) { return _0x4b1f24['uMjay'](_0x2f8fb3, _0x13611f); }, 'FMfyH': function(_0x3cfda6, _0x549cf4, _0x1b8f8e, _0x47bb7e) { return _0x4b1f24['gDogZ'](_0x3cfda6, _0x549cf4, _0x1b8f8e, _0x47bb7e); }, 'SlTcx': _0x4b1f24['GHLRh'], 'UoKQH': function(_0x2e3130, _0x257953) { return _0x4b1f24['PfAjO'](_0x2e3130, _0x257953); } }; continue; case '3': for (var _0x556edf = 0x0; _0x4b1f24['fSnFT'](_0x556edf, _0xde7eb4['length']); _0x556edf++) { if (_0x4b1f24['EfnxL'](_0x556edf, 0x0)) { _0x5f38a8 = cmds['shift'](); _0x3872ac = _0x4b1f24['uHiMI'](promise, _0x5f38a8, _0x1a4d21); } _0x3872ac = _0x3872ac['then'](_0x4a18c6 => { if (_0x450e50['jFsDk'](_0x4a18c6, undefined)) { return; } _0x443598['push'](_0x4a18c6); if (_0x450e50['VtjGx'](cmds['length'], 0x0)) { _0x5f38a8 = cmds['shift'](); return _0x450e50['rIuhY'](promise, _0x5f38a8, _0x1a4d21); } _0x450e50['Hkerm'](typeof _0x42d68b, FUNCTION) && _0x450e50['zJxPi'](_0x42d68b, _0x450e50['txDHM'](toObject, codeEnum[_0x450e50['ubpqa']], _0x443598, '成功')); }, (_0x4bd031, _0x4e2aee) => { if (_0x450e50['KJSIC'](_0x4bd031, undefined)) _0x450e50['ItIGB'](typeof _0x42d68b, FUNCTION) && _0x450e50['FbhVT'](_0x42d68b, _0x450e50['FMfyH'](toObject, codeEnum[_0x450e50['SlTcx']], _0x443598, _0x450e50['UoKQH'](_0x5f38a8, _0x4bd031))); }); } continue; case '4': var _0x5f38a8; continue; case '5': cmds = _0xde7eb4['slice'](); continue; case '6': var _0x443598 = new Array(); continue; } break; } } function runningSendData() { var _0x17e77b = { 'irJvx': function(_0x261733, _0x4b811f) { return _0x261733 < _0x4b811f; }, 'UdFhV': 'length', 'LmxIL': function(_0x293e64) { return _0x293e64(); }, 'MUxTd': 'log', 'ALFVf': function(_0x1515f5, _0x1f4861) { return _0x1515f5 + _0x1f4861; }, 'nZiqV': function(_0x193b15, _0x561b99) { return _0x193b15 - _0x561b99; }, 'DQWTn': '次重发', 'DbuTP': function(_0x1571c1, _0xf4fc1c) { return _0x1571c1 > _0xf4fc1c; }, 'odxHt': function(_0x1cdbe8, _0x69c5bf, _0x1de4e9) { return _0x1cdbe8(_0x69c5bf, _0x1de4e9); }, 'nSwdl': function(_0x58ddcf, _0x5dc491) { return _0x58ddcf == _0x5dc491; }, 'UMgXP': function(_0x49df71, _0x391d9f) { return _0x49df71(_0x391d9f); }, 'ClnKL': function(_0x38f72f, _0x466495, _0x371694, _0x93c6c) { return _0x38f72f(_0x466495, _0x371694, _0x93c6c); }, 'CUdZi': 'sendDataFailure', 'ZekBC': '发送数据失败', 'ZUshe': 'bufferArrayToHexString', 'qxlKG': function(_0x23f72f, _0x11dd3b) { return _0x23f72f + _0x11dd3b; }, 'qtUjY': '发送:' }; let _0x5bedc9 = sendBufferArray[sendIndex]; let _0x4d9061 = dataHandler[_0x17e77b['ZUshe']](_0x5bedc9)['toUpperCase'](); console[_0x17e77b['MUxTd']](_0x17e77b['qxlKG'](_0x17e77b['qtUjY'], _0x4d9061)); my['writeBLECharacteristicValue']({ 'deviceId': connectDeviceId, 'serviceId': serviceUUID, 'characteristicId': writeUUID, 'value': _0x4d9061, 'success': () => { sendIndex++; resendCount = 0x3; if (_0x17e77b['irJvx'](sendIndex, sendBufferArray[_0x17e77b['UdFhV']])) { _0x17e77b['LmxIL'](runningSendData); } }, 'fail': _0x2fd4e7 => { if (_0x17e77b['DbuTP'](resendCount, 0x0)) { resendCount--; _0x17e77b['odxHt'](setTimeout, () => { console[_0x17e77b['MUxTd']](_0x17e77b['ALFVf'](_0x17e77b['ALFVf']('第', _0x17e77b['nZiqV'](0x3, resendCount)), _0x17e77b['DQWTn'])); _0x17e77b['LmxIL'](runningSendData); }, 0xc8); } else { _0x17e77b['nSwdl'](typeof dataHandlerCallback, FUNCTION) && _0x17e77b['UMgXP']( dataHandlerCallback, _0x17e77b['ClnKL'](toObject, codeEnum[_0x17e77b['CUdZi']], '', _0x17e77b['ZekBC'])); } } }); }