@compendiumfi/pendax
Version:
connector for centralized cryptocurrency exchanges
1 lines • 9.94 kB
JavaScript
const a0_0x447552=a0_0x4d22;(function(_0x59ae19,_0x2779bd){const _0x3092bd=a0_0x4d22,_0x4e5132=_0x59ae19();while(!![]){try{const _0x26d797=parseInt(_0x3092bd(0x214))/0x1*(parseInt(_0x3092bd(0x203))/0x2)+parseInt(_0x3092bd(0x1f5))/0x3*(parseInt(_0x3092bd(0x207))/0x4)+-parseInt(_0x3092bd(0x212))/0x5+-parseInt(_0x3092bd(0x231))/0x6+parseInt(_0x3092bd(0x1f3))/0x7+-parseInt(_0x3092bd(0x226))/0x8*(-parseInt(_0x3092bd(0x1f9))/0x9)+-parseInt(_0x3092bd(0x1fa))/0xa;if(_0x26d797===_0x2779bd)break;else _0x4e5132['push'](_0x4e5132['shift']());}catch(_0x379dd4){_0x4e5132['push'](_0x4e5132['shift']());}}}(a0_0x5252,0x4a12c));import{PendaxSocket}from'../common/pendaxsocket.js';import*as a0_0x33f587 from'crypto';import a0_0x700ec5 from'lodash';const {_}=a0_0x700ec5;export class BinanceSocket extends PendaxSocket{constructor(_0x35199c){const _0x3469b7=a0_0x4d22;let _0x419b9c=_0x35199c||{};_0x419b9c[_0x3469b7(0x232)]=_0x3469b7(0x201),super(_0x419b9c),this['getOptions']()['subclassedSocket']=this,this[_0x3469b7(0x20c)]()[_0x3469b7(0x230)]=this['subclassOnOpen'],this[_0x3469b7(0x20c)]()['subclassOnMessage']=this[_0x3469b7(0x1ea)],this[_0x3469b7(0x20c)]()[_0x3469b7(0x22c)]=this[_0x3469b7(0x22c)],this[_0x3469b7(0x20c)]()['subclassOnClose']=this[_0x3469b7(0x200)];}[a0_0x447552(0x1fc)](_0x3eeae7){const _0x3e2508=a0_0x447552,_0x4b66f6=a0_0x33f587['Hmac'](_0x3e2508(0x1eb),this[_0x3e2508(0x20c)]()[_0x3e2508(0x227)])['update'](_0x3eeae7)[_0x3e2508(0x223)](_0x3e2508(0x1f0));return _0x4b66f6;}[a0_0x447552(0x218)](){const _0x2a369e=a0_0x447552;if(this[_0x2a369e(0x1ed)]==!![])return;const _0x187ebe=Date[_0x2a369e(0x222)]();let _0xedcf7e=_0x187ebe[_0x2a369e(0x22b)]()+'websocket_login';const _0x320be4=this[_0x2a369e(0x1fc)](_0xedcf7e);let _0x4414e6=this[_0x2a369e(0x20c)]();const _0xfaa9d4={'op':_0x2a369e(0x218),'args':{'key':_0x4414e6[_0x2a369e(0x21d)],'sign':_0x320be4,'time':_0x187ebe}};_0x4414e6['subAccountName']&&(_0xfaa9d4[_0x2a369e(0x1ef)][_0x2a369e(0x210)]=_0x4414e6['subAccountName']);this[_0x2a369e(0x22d)]=![];let _0x1aa72c=JSON['stringify'](_0xfaa9d4);this[_0x2a369e(0x204)](_0x1aa72c,_0x125f13=>{const _0x3b17a7=_0x2a369e;this[_0x3b17a7(0x1ed)]=!![],console[_0x3b17a7(0x1e9)](_0x125f13||_0x3b17a7(0x22f));});}[a0_0x447552(0x20d)](_0x28348f){const _0x304ddb=a0_0x447552;_0x28348f=_0x28348f||{};try{const _0x7306d8={'channel':_0x28348f[_0x304ddb(0x228)],'market':_0x28348f[_0x304ddb(0x20a)],'op':_0x304ddb(0x20d)};_0x28348f[_0x304ddb(0x210)]&&(_0x7306d8[_0x304ddb(0x210)]=_0x28348f[_0x304ddb(0x210)]);let _0x3495e8={..._0x7306d8};delete _0x3495e8['op'],_0x3495e8[_0x304ddb(0x210)]&&delete _0x3495e8['subaccount'],_0x3495e8[_0x304ddb(0x20a)]==undefined&&delete _0x3495e8['market'],this[_0x304ddb(0x219)](_0x28348f,_0x3495e8),this['send'](JSON[_0x304ddb(0x216)](_0x7306d8));}catch(_0x510dee){if(_0x304ddb(0x229)===_0x304ddb(0x229))throw _0x510dee;else _0x52b8d5=_0x1aac34;}}['unsubscribe'](_0x324ff9){const _0x42fde1=a0_0x447552;if(!_0x324ff9){if('ZOMpq'!==_0x42fde1(0x221))throw'name\x20required';else _0x176439=_0x5472f2[_0x42fde1(0x21f)](_0x16aaa4),_0x4e5afe[_0x42fde1(0x215)]&&_0x1bdb35['type']=='unsubscribed'&&(_0x1f59c6=!![],delete _0x57ee8d[_0x42fde1(0x215)],_0x216e21['removeSubscriptionHavingArgs'](_0x4d310e,_0x2c976b));}let _0xe72cab=this[_0x42fde1(0x22a)]()[_0x324ff9];if(_0xe72cab){if(_0x42fde1(0x209)===_0x42fde1(0x1ec)){let _0x496ac0=_0x40af7b||{};_0x496ac0[_0x42fde1(0x1ee)]=_0x20eb7f||'',_0x496ac0[_0x42fde1(0x228)]=_0x42fde1(0x1f7),this['subscribe'](_0x496ac0);}else{let _0xcb25={..._0xe72cab[_0x42fde1(0x1ef)]};_0xcb25['op']='unsubscribe',this[_0x42fde1(0x204)](JSON[_0x42fde1(0x216)](_0xcb25));}}}[a0_0x447552(0x1ff)](_0x5d30be,_0x2f17bf){const _0x14e583=a0_0x447552;let _0x23fc88=_0x2f17bf||{};_0x23fc88[_0x14e583(0x1ee)]=_0x5d30be||'',_0x23fc88['channel']=_0x14e583(0x1f7),this[_0x14e583(0x20d)](_0x23fc88);}[a0_0x447552(0x225)](_0x50a817,_0x4a1d6a){const _0x42f693=a0_0x447552;let _0x407424=_0x4a1d6a||{};_0x407424[_0x42f693(0x1ee)]=_0x50a817||'',_0x407424[_0x42f693(0x228)]='orders',this[_0x42f693(0x20d)](_0x407424);}['subscribeToMarkets'](_0x956fbb){const _0x59746f=a0_0x447552;let _0x49d83f={'channel':_0x59746f(0x21c)};_0x49d83f['name']=_0x956fbb||'',this[_0x59746f(0x20d)](_0x49d83f);}['subscribeToTicker'](_0x1de19a,_0x4f023f){const _0x17b444=a0_0x447552;let _0x4e8848=_0x4f023f||{};_0x4e8848[_0x17b444(0x1ee)]=_0x1de19a||'',_0x4e8848['channel']=_0x17b444(0x1f2),this[_0x17b444(0x20d)](_0x4e8848);}[a0_0x447552(0x21b)](_0x598f9d,_0x115d9a){const _0x110ee7=a0_0x447552;let _0x4243ad=_0x115d9a||{};_0x4243ad['name']=_0x598f9d||'',_0x4243ad[_0x110ee7(0x228)]=_0x110ee7(0x206),this[_0x110ee7(0x20d)](_0x4243ad);}[a0_0x447552(0x224)](_0x29fe6e,_0x480baf){const _0x223f73=a0_0x447552;let _0x2c41b2=_0x480baf||{};_0x2c41b2[_0x223f73(0x1ee)]=_0x29fe6e||'',_0x2c41b2[_0x223f73(0x228)]=_0x223f73(0x211),this[_0x223f73(0x20d)](_0x2c41b2);}[a0_0x447552(0x230)](_0x445fca){const _0x23f579=a0_0x447552;_0x445fca[_0x23f579(0x21a)]?_0x445fca[_0x23f579(0x21a)](_0x445fca):console['log'](msg||'derived\x20onOpen');}[a0_0x447552(0x1ea)](_0x248667,_0x4658db,_0x4d2ee8){const _0x5f41d=a0_0x447552;let _0x2809ca,_0x3833fa=![];if(_[_0x5f41d(0x1fd)](_0x4658db)){if('fbYdY'!==_0x5f41d(0x1f4))_0x2809ca=JSON[_0x5f41d(0x21f)](_0x4658db),_0x2809ca['type']&&_0x2809ca[_0x5f41d(0x215)]=='unsubscribed'&&(_0x3833fa=!![],delete _0x2809ca[_0x5f41d(0x215)],_0x248667[_0x5f41d(0x1f8)](_0x248667,_0x2809ca));else{let _0x4d8c45=_0x117381||{};_0x4d8c45[_0x5f41d(0x1ee)]=_0x4432e3||'',_0x4d8c45[_0x5f41d(0x228)]='orders',this[_0x5f41d(0x20d)](_0x4d8c45);}}else'McZgU'!==_0x5f41d(0x202)?(this[_0x5f41d(0x1ed)]=!![],_0x2a0a83[_0x5f41d(0x1e9)](_0x36d082||'logged\x20in')):_0x2809ca=_0x4658db;_0x248667['getOptions']()[_0x5f41d(0x1e8)]?(_0x3833fa==!![]&&('UcKhN'!=='KvkbZ'?_0x2809ca={'type':_0x5f41d(0x205),..._0x2809ca}:_0x56ba79[_0x5f41d(0x21a)]?_0x1f7bb3[_0x5f41d(0x21a)](_0x2b8588):_0x5ae30c[_0x5f41d(0x1e9)](_0x2b2022||_0x5f41d(0x21e))),_0x248667['getOptions']()[_0x5f41d(0x1e8)](_0x4d2ee8,_0x2809ca)):'WjNxv'!==_0x5f41d(0x20f)?_0x522f98[_0x5f41d(0x1e9)](_0x2b784d||_0x5f41d(0x1f1)):console['log'](_0x4658db||'derived\x20onMessage');}[a0_0x447552(0x22c)](_0x41bd2e,_0x37f07d){const _0xa2f3ba=a0_0x447552;let _0x3d49c0;if(_[_0xa2f3ba(0x1fd)](msg))try{if(_0xa2f3ba(0x20b)!=='TqaAP')_0x3d49c0=JSON[_0xa2f3ba(0x21f)](msg);else{if(_0xecd909['toString']()[_0xa2f3ba(0x20e)](_0xa2f3ba(0x1fb))>-0x1){const _0x553d2b=_0x390fa5[_0xa2f3ba(0x22b)]()[_0xa2f3ba(0x22e)]('bytearray(b\x27'[_0xa2f3ba(0x1fe)]),_0x287e71=_0x553d2b[_0xa2f3ba(0x20e)]('\x27)');_0x4f0ae4=_0x287e71>-0x1?_0x553d2b[_0xa2f3ba(0x22e)](0x0,_0x287e71):_0x553d2b;}}}catch(_0x34b843){if(msg['toString']()['indexOf'](_0xa2f3ba(0x1fb))>-0x1){if(_0xa2f3ba(0x217)===_0xa2f3ba(0x217)){const _0x2490d7=msg[_0xa2f3ba(0x22b)]()[_0xa2f3ba(0x22e)](_0xa2f3ba(0x1fb)[_0xa2f3ba(0x1fe)]),_0x2cc2c5=_0x2490d7[_0xa2f3ba(0x20e)]('\x27)');_0x3d49c0=_0x2cc2c5>-0x1?_0x2490d7[_0xa2f3ba(0x22e)](0x0,_0x2cc2c5):_0x2490d7;}else{const _0x116854={'channel':_0x3a4dbc[_0xa2f3ba(0x228)],'market':_0xe78c0a[_0xa2f3ba(0x20a)],'op':'subscribe'};_0x51bccf['subaccount']&&(_0x116854[_0xa2f3ba(0x210)]=_0x304755[_0xa2f3ba(0x210)]);let _0x36e85d={..._0x116854};delete _0x36e85d['op'],_0x36e85d[_0xa2f3ba(0x210)]&&delete _0x36e85d[_0xa2f3ba(0x210)],_0x36e85d[_0xa2f3ba(0x20a)]==_0x3924c7&&delete _0x36e85d['market'],this[_0xa2f3ba(0x219)](_0xb92b1b,_0x36e85d),this[_0xa2f3ba(0x204)](_0x113a7e['stringify'](_0x116854));}}}else _0x3d49c0=msg;_0x37f07d[_0xa2f3ba(0x220)]?_0x37f07d[_0xa2f3ba(0x220)](_0x37f07d,_0x3d49c0):console[_0xa2f3ba(0x1e9)](msg||_0xa2f3ba(0x1f1));}[a0_0x447552(0x200)](_0x45c972,_0x51b3ad,_0x302719){const _0x28fabf=a0_0x447552;let _0x3f8dfb;if(_[_0x28fabf(0x1fd)](_0x51b3ad))try{_0x3f8dfb=JSON[_0x28fabf(0x21f)](_0x51b3ad);}catch(_0x1a3bab){if(_0x51b3ad[_0x28fabf(0x22b)]()['indexOf'](_0x28fabf(0x1fb))>-0x1){const _0x500216=_0x51b3ad[_0x28fabf(0x22b)]()[_0x28fabf(0x22e)](_0x28fabf(0x1fb)[_0x28fabf(0x1fe)]),_0x4c43f9=_0x500216[_0x28fabf(0x20e)]('\x27)');_0x3f8dfb=_0x4c43f9>-0x1?_0x500216['slice'](0x0,_0x4c43f9):_0x500216;}}else _0x3f8dfb=_0x51b3ad;if(_0x302719[_0x28fabf(0x1f6)])_0x302719[_0x28fabf(0x1f6)](_0x45c972,_0x3f8dfb,_0x302719);else{if(_0x28fabf(0x208)===_0x28fabf(0x208))console[_0x28fabf(0x1e9)](_0x51b3ad||_0x28fabf(0x213));else try{_0xc37480=_0x30fd1a[_0x28fabf(0x21f)](_0x46b6b2);}catch(_0x2c780c){if(_0x35208a[_0x28fabf(0x22b)]()['indexOf'](_0x28fabf(0x1fb))>-0x1){const _0x5b7352=_0x24959b[_0x28fabf(0x22b)]()[_0x28fabf(0x22e)]('bytearray(b\x27'[_0x28fabf(0x1fe)]),_0x130fa1=_0x5b7352[_0x28fabf(0x20e)]('\x27)');_0x666b01=_0x130fa1>-0x1?_0x5b7352[_0x28fabf(0x22e)](0x0,_0x130fa1):_0x5b7352;}}}}}function a0_0x4d22(_0x390041,_0x2d040b){const _0x52529a=a0_0x5252();return a0_0x4d22=function(_0x4d222d,_0x14265b){_0x4d222d=_0x4d222d-0x1e8;let _0x504863=_0x52529a[_0x4d222d];return _0x504863;},a0_0x4d22(_0x390041,_0x2d040b);}function a0_0x5252(){const _0x535131=['alkAu','login','validateSubscription','clientOnOpen','subscribeToTrades','markets','key','derived\x20onOpen','parse','clientOnError','lqhro','now','digest','subscribeToOrderBooks','subscribeToOrders','284624avgbNO','secret','channel','cECYk','getSubscriptions','toString','subclassOnError','responseReceived','slice','logged\x20in','subclassOnOpen','2080866svKbCD','url','clientOnMessage','log','subclassOnMessage','sha256','SUUtS','loggedIn','name','args','hex','derived\x20onError','ticker','4044761lAUEKB','LPwfV','1719009qQvcga','clientOnClose','fills','removeSubscriptionHavingArgs','18lzSwRU','891300dPwqbC','bytearray(b\x27','sign','isObject','length','subscribeToFills','subclassOnClose','wss://stream.binancefuture.com','McZgU','734BaBQuh','send','unsubscribed','trades','4NtEohS','NFLlt','QFUQR','market','yYqGo','getOptions','subscribe','indexOf','WjNxv','subaccount','orderbook','2873770PYpYQK','derived\x20onClose','251JVZunH','type','stringify'];a0_0x5252=function(){return _0x535131;};return a0_0x5252();}