Built motion from commit (unavailable).|2.4.4
[motion2.git] / server / config / license / index.js
index 5f525ba..d08a224 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x404c=['error','message','finally','getUuid','License','findOrCreate','spread','SERVICE\x20LICENSE\x20STARTED\x20%s','default','util','crypto','moment','bluebird','pkginfo','version','../../mysqldb','../environment','./hardware','../logger','license','../../api/jira/jira.controller','format','%s/api/servers/%s/check?version=%s','exports','%s/api/servers/%s/check?version=%s&oldtoken=%s','GET','catch','createCipher','aes-256-ctr','secrets','update','utf8','base64','final','User','findOne','fullname','email','then','|machineUuid|','|email|','getFirstInterface','MOTLICENSE','Motion\x20License\x20Alert','Alert','get','active','info','THE\x20LICENSE\x20HAS\x20BEEN\x20ENABLED','THE\x20LICENSE\x20HAS\x20BEEN\x20UPDATED','data1','Disabled','THE\x20LICENSE\x20HAS\x20BEEN\x20DISABLED','Changed','uuid','toUpperCase','YYYY-MM-DD\x20HH:mm','diff','data2','days','DEMO\x20START\x20AT\x20%s','NEW\x20UUID\x20DETECTED:\x20FROM\x20%s\x20TO\x20%s'];(function(_0x7e69c8,_0x4f964b){var _0x1df2b9=function(_0xadd615){while(--_0xadd615){_0x7e69c8['push'](_0x7e69c8['shift']());}};_0x1df2b9(++_0x4f964b);}(_0x404c,0x1bb));var _0xc404=function(_0x19ff45,_0x53d563){_0x19ff45=_0x19ff45-0x0;var _0x21919d=_0x404c[_0x19ff45];return _0x21919d;};'use strict';var util=require(_0xc404('0x0'));var crypto=require(_0xc404('0x1'));var moment=require(_0xc404('0x2'));var rp=require('request-promise');var BPromise=require(_0xc404('0x3'));var pkginfo=require(_0xc404('0x4'))(module,_0xc404('0x5'));var db=require(_0xc404('0x6'))['db'];var config=require(_0xc404('0x7'));var hardware=require(_0xc404('0x8'));var logger=require(_0xc404('0x9'))(_0xc404('0xa'));var jira=require(_0xc404('0xb'));var HOST='https://www.xcallymotion.com';var TIME=0x3c*0x1388;var DAYS=0x7;var GRAY_PERIOD_REASON;var ADMIN;var oldToken;function httpRequest(_0x4f035b){return new BPromise(function(_0x2433b0,_0x4c4d26){var _0x4245a2=util[_0xc404('0xc')](_0xc404('0xd'),HOST,_0x4f035b,module[_0xc404('0xe')][_0xc404('0x5')]);if(oldToken){_0x4245a2=util[_0xc404('0xc')](_0xc404('0xf'),HOST,_0x4f035b,module[_0xc404('0xe')]['version'],oldToken);}var _0x35df5e={'uri':_0x4245a2,'method':_0xc404('0x10'),'timeout':0xea60,'json':!![]};return rp(_0x35df5e)['then'](function(_0x3e35ef){_0x2433b0(_0x3e35ef);})[_0xc404('0x11')](function(_0x1e889c){_0x4c4d26(_0x1e889c);});});}function encryptDate(_0x5b23fc){var _0x4e268a=crypto[_0xc404('0x12')](_0xc404('0x13'),config[_0xc404('0x14')]['session']);var _0x45294d=_0x4e268a[_0xc404('0x15')](_0x5b23fc,_0xc404('0x16'),_0xc404('0x17'));_0x45294d+=_0x4e268a[_0xc404('0x18')](_0xc404('0x17'));return _0x45294d;}function decryptDate(_0x31256a){var _0x3b2be2=crypto['createDecipher'](_0xc404('0x13'),config[_0xc404('0x14')]['session']);var _0x326ff5=_0x3b2be2[_0xc404('0x15')](_0x31256a,_0xc404('0x17'),'utf8');_0x326ff5+=_0x3b2be2[_0xc404('0x18')](_0xc404('0x16'));return _0x326ff5;}function sendJiraAlert(_0x5e7f63,_0x28f158,_0x276792){var _0x12f0a4='||FIELD||VALUE||\x0a';return db[_0xc404('0x19')][_0xc404('0x1a')]({'where':{'role':'admin'},'attributes':[_0xc404('0x1b'),_0xc404('0x1c')],'raw':!![]})[_0xc404('0x1d')](function(_0x9a1e29){ADMIN=_0x9a1e29;_0x12f0a4+='|reason|'+_0x276792+'|\x0a';_0x12f0a4+='|uuid|'+_0x5e7f63+'|\x0a';_0x12f0a4+=_0xc404('0x1e')+_0x28f158+'|\x0a';_0x12f0a4+='|name|'+ADMIN['fullname']+'|\x0a';_0x12f0a4+=_0xc404('0x1f')+ADMIN[_0xc404('0x1c')]+'|\x0a';return _0x12f0a4;})[_0xc404('0x1d')](function(_0xfee6ba){var _0x3ab7bd=hardware[_0xc404('0x20')]()['ipAddress'];return jira['openIssue']({'key':_0xc404('0x21'),'summary':_0xc404('0x22'),'description':_0xfee6ba,'issuetype':_0xc404('0x23'),'oldToken':_0x5e7f63,'newToken':_0x28f158,'email':ADMIN[_0xc404('0x1c')],'name':ADMIN[_0xc404('0x1b')],'reason':GRAY_PERIOD_REASON,'ip':_0x3ab7bd});});}function manageLicense(_0xa0b576,_0x2c42d0){var _0x5d6097=_0x2c42d0[_0xc404('0x24')]({'plain':!![]});httpRequest(_0xa0b576)['then'](function(_0x2271cd){if(oldToken){oldToken=undefined;}if(_0x2271cd[_0xc404('0x25')]){if(!_0x5d6097[_0xc404('0xa')]&&_0x5d6097[_0xc404('0xa')]!=_0x2271cd[_0xc404('0xa')]||_0x5d6097['license']&&_0x5d6097['data2']){logger[_0xc404('0x26')](_0xc404('0x27'));}if(_0x5d6097[_0xc404('0xa')]&&!_0x5d6097['data2']&&_0x5d6097['license']!=_0x2271cd[_0xc404('0xa')]){logger[_0xc404('0x26')](_0xc404('0x28'));}if(_0x5d6097[_0xc404('0xa')]&&!_0x5d6097['data2']&&_0x5d6097['license']==_0x2271cd['license']){return _0x2c42d0;}return _0x2c42d0['update']({'data1':_0xa0b576,'data2':null,'license':_0x2271cd[_0xc404('0xa')]});}else{if(_0x2271cd[_0xc404('0xa')]||_0x5d6097[_0xc404('0xa')]){if(!_0x5d6097['data2']){if(_0x5d6097[_0xc404('0x29')]==_0xa0b576){GRAY_PERIOD_REASON=_0xc404('0x2a');logger[_0xc404('0x26')](_0xc404('0x2b'));}else{GRAY_PERIOD_REASON=_0xc404('0x2c');oldToken=_0x5d6097[_0xc404('0x29')];logger[_0xc404('0x26')]('NEW\x20UUID\x20DETECTED:\x20FROM\x20%s\x20TO\x20%s',_0x5d6097[_0xc404('0x29')],_0xa0b576);}sendJiraAlert(_0x5d6097['data1'],_0x2271cd[_0xc404('0x2d')],GRAY_PERIOD_REASON);logger[_0xc404('0x26')]('%s\x20-\x20GRAY\x20PERIOD\x20STARTED\x20AT\x20%s',GRAY_PERIOD_REASON[_0xc404('0x2e')](),moment()[_0xc404('0xc')](_0xc404('0x2f')));return _0x2c42d0['update']({'data2':encryptDate(moment()['format'](_0xc404('0x2f')))});}else{if(moment()[_0xc404('0x30')](decryptDate(_0x5d6097[_0xc404('0x31')]),_0xc404('0x32'))>DAYS){logger[_0xc404('0x26')](_0xc404('0x33'),moment()[_0xc404('0xc')](_0xc404('0x2f')));return _0x2c42d0['update']({'data1':_0xa0b576,'data2':null,'license':null});}}}else{if(_0x5d6097['data1']!=_0xa0b576){logger[_0xc404('0x26')](_0xc404('0x34'),_0x5d6097[_0xc404('0x29')],_0xa0b576);return _0x2c42d0[_0xc404('0x15')]({'data1':_0xa0b576,'data2':null,'license':null});}}}return _0x2c42d0;})[_0xc404('0x1d')](function(_0x21142c){_0x2c42d0=_0x21142c;})[_0xc404('0x11')](function(_0x5ecf3e){logger[_0xc404('0x35')](_0x5ecf3e[_0xc404('0x36')]);})[_0xc404('0x37')](function(){setTimeout(function(){manageLicense(hardware[_0xc404('0x38')](),_0x2c42d0);},TIME);});}function defaultLicense(){var _0x28040f=hardware[_0xc404('0x38')]();if(_0x28040f){return db[_0xc404('0x39')][_0xc404('0x3a')]({'where':{'id':0x1},'defaults':{'data1':_0x28040f}})[_0xc404('0x3b')](function(_0x2abeec,_0x13b7e4){logger[_0xc404('0x26')](_0xc404('0x3c'),_0x28040f);manageLicense(_0x28040f,_0x2abeec);})['catch'](function(_0x275bbe){logger[_0xc404('0x35')](_0x275bbe[_0xc404('0x36')]);});}}exports[_0xc404('0x3d')]=defaultLicense;
\ No newline at end of file
+var _0x5f22=['License','findOrCreate','spread','message','default','util','crypto','moment','request-promise','pkginfo','version','../../mysqldb','../environment','../logger','../../api/jira/jira.controller','https://www.xcallymotion.com','%s/api/servers/%s/check?version=%s','format','%s/api/servers/%s/check?version=%s&oldtoken=%s','GET','then','catch','createCipher','aes-256-ctr','secrets','update','utf8','final','base64','createDecipher','session','||FIELD||VALUE||\x0a','findOne','admin','fullname','email','|reason|','|uuid|','|email|','MOTLICENSE','Motion\x20License\x20Alert','Alert','get','active','license','data2','info','data1','Changed','uuid','YYYY-MM-DD\x20HH:mm','diff','DEMO\x20START\x20AT\x20%s','NEW\x20UUID\x20DETECTED:\x20FROM\x20%s\x20TO\x20%s','error','finally','getUuid'];(function(_0x46e9c9,_0x15a63e){var _0xf1ba55=function(_0x2ecff1){while(--_0x2ecff1){_0x46e9c9['push'](_0x46e9c9['shift']());}};_0xf1ba55(++_0x15a63e);}(_0x5f22,0x77));var _0x25f2=function(_0x3b0731,_0xcf9925){_0x3b0731=_0x3b0731-0x0;var _0x4204d7=_0x5f22[_0x3b0731];return _0x4204d7;};'use strict';var util=require(_0x25f2('0x0'));var crypto=require(_0x25f2('0x1'));var moment=require(_0x25f2('0x2'));var rp=require(_0x25f2('0x3'));var BPromise=require('bluebird');var pkginfo=require(_0x25f2('0x4'))(module,_0x25f2('0x5'));var db=require(_0x25f2('0x6'))['db'];var config=require(_0x25f2('0x7'));var hardware=require('./hardware');var logger=require(_0x25f2('0x8'))('license');var jira=require(_0x25f2('0x9'));var HOST=_0x25f2('0xa');var TIME=0x3c*0x1388;var DAYS=0x7;var GRAY_PERIOD_REASON;var ADMIN;var oldToken;function httpRequest(_0x5adf78){return new BPromise(function(_0xb448c1,_0x57f704){var _0x2f2850=util['format'](_0x25f2('0xb'),HOST,_0x5adf78,module['exports'][_0x25f2('0x5')]);if(oldToken){_0x2f2850=util[_0x25f2('0xc')](_0x25f2('0xd'),HOST,_0x5adf78,module['exports'][_0x25f2('0x5')],oldToken);}var _0xc365d4={'uri':_0x2f2850,'method':_0x25f2('0xe'),'timeout':0xea60,'json':!![]};return rp(_0xc365d4)[_0x25f2('0xf')](function(_0x5ac22d){_0xb448c1(_0x5ac22d);})[_0x25f2('0x10')](function(_0x2bb131){_0x57f704(_0x2bb131);});});}function encryptDate(_0x5ad322){var _0x38fa46=crypto[_0x25f2('0x11')](_0x25f2('0x12'),config[_0x25f2('0x13')]['session']);var _0x1526c3=_0x38fa46[_0x25f2('0x14')](_0x5ad322,_0x25f2('0x15'),'base64');_0x1526c3+=_0x38fa46[_0x25f2('0x16')](_0x25f2('0x17'));return _0x1526c3;}function decryptDate(_0x4ab62f){var _0x2e7288=crypto[_0x25f2('0x18')](_0x25f2('0x12'),config[_0x25f2('0x13')][_0x25f2('0x19')]);var _0xb2e08b=_0x2e7288[_0x25f2('0x14')](_0x4ab62f,_0x25f2('0x17'),_0x25f2('0x15'));_0xb2e08b+=_0x2e7288['final']('utf8');return _0xb2e08b;}function sendJiraAlert(_0x1d03cf,_0x481822,_0x3658ce){var _0x4d4d39=_0x25f2('0x1a');return db['User'][_0x25f2('0x1b')]({'where':{'role':_0x25f2('0x1c')},'attributes':[_0x25f2('0x1d'),_0x25f2('0x1e')],'raw':!![]})[_0x25f2('0xf')](function(_0x1fe445){ADMIN=_0x1fe445;_0x4d4d39+=_0x25f2('0x1f')+_0x3658ce+'|\x0a';_0x4d4d39+=_0x25f2('0x20')+_0x1d03cf+'|\x0a';_0x4d4d39+='|machineUuid|'+_0x481822+'|\x0a';_0x4d4d39+='|name|'+ADMIN['fullname']+'|\x0a';_0x4d4d39+=_0x25f2('0x21')+ADMIN[_0x25f2('0x1e')]+'|\x0a';return _0x4d4d39;})['then'](function(_0x246ba6){var _0x123388=hardware['getFirstInterface']()['ipAddress'];return jira['openIssue']({'key':_0x25f2('0x22'),'summary':_0x25f2('0x23'),'description':_0x246ba6,'issuetype':_0x25f2('0x24'),'oldToken':_0x1d03cf,'newToken':_0x481822,'email':ADMIN['email'],'name':ADMIN['fullname'],'reason':GRAY_PERIOD_REASON,'ip':_0x123388});});}function manageLicense(_0x4323ce,_0x48054e){var _0x360a69=_0x48054e[_0x25f2('0x25')]({'plain':!![]});httpRequest(_0x4323ce)['then'](function(_0x589211){if(oldToken){oldToken=undefined;}if(_0x589211[_0x25f2('0x26')]){if(!_0x360a69['license']&&_0x360a69[_0x25f2('0x27')]!=_0x589211['license']||_0x360a69[_0x25f2('0x27')]&&_0x360a69[_0x25f2('0x28')]){logger[_0x25f2('0x29')]('THE\x20LICENSE\x20HAS\x20BEEN\x20ENABLED');}if(_0x360a69[_0x25f2('0x27')]&&!_0x360a69[_0x25f2('0x28')]&&_0x360a69[_0x25f2('0x27')]!=_0x589211['license']){logger['info']('THE\x20LICENSE\x20HAS\x20BEEN\x20UPDATED');}if(_0x360a69[_0x25f2('0x27')]&&!_0x360a69['data2']&&_0x360a69[_0x25f2('0x27')]==_0x589211[_0x25f2('0x27')]){return _0x48054e;}return _0x48054e[_0x25f2('0x14')]({'data1':_0x4323ce,'data2':null,'license':_0x589211['license']});}else{if(_0x589211[_0x25f2('0x27')]||_0x360a69[_0x25f2('0x27')]){if(!_0x360a69[_0x25f2('0x28')]){if(_0x360a69[_0x25f2('0x2a')]==_0x4323ce){GRAY_PERIOD_REASON='Disabled';logger['info']('THE\x20LICENSE\x20HAS\x20BEEN\x20DISABLED');}else{GRAY_PERIOD_REASON=_0x25f2('0x2b');oldToken=_0x360a69[_0x25f2('0x2a')];logger['info']('NEW\x20UUID\x20DETECTED:\x20FROM\x20%s\x20TO\x20%s',_0x360a69[_0x25f2('0x2a')],_0x4323ce);}sendJiraAlert(_0x360a69[_0x25f2('0x2a')],_0x589211[_0x25f2('0x2c')],GRAY_PERIOD_REASON);logger[_0x25f2('0x29')]('%s\x20-\x20GRAY\x20PERIOD\x20STARTED\x20AT\x20%s',GRAY_PERIOD_REASON['toUpperCase'](),moment()[_0x25f2('0xc')]('YYYY-MM-DD\x20HH:mm'));return _0x48054e['update']({'data2':encryptDate(moment()[_0x25f2('0xc')](_0x25f2('0x2d')))});}else{if(moment()[_0x25f2('0x2e')](decryptDate(_0x360a69[_0x25f2('0x28')]),'days')>DAYS){logger[_0x25f2('0x29')](_0x25f2('0x2f'),moment()[_0x25f2('0xc')](_0x25f2('0x2d')));return _0x48054e[_0x25f2('0x14')]({'data1':_0x4323ce,'data2':null,'license':null});}}}else{if(_0x360a69['data1']!=_0x4323ce){logger[_0x25f2('0x29')](_0x25f2('0x30'),_0x360a69[_0x25f2('0x2a')],_0x4323ce);return _0x48054e[_0x25f2('0x14')]({'data1':_0x4323ce,'data2':null,'license':null});}}}return _0x48054e;})[_0x25f2('0xf')](function(_0x2cbc66){_0x48054e=_0x2cbc66;})[_0x25f2('0x10')](function(_0x394aa2){logger[_0x25f2('0x31')](_0x394aa2['message']);})[_0x25f2('0x32')](function(){setTimeout(function(){manageLicense(hardware[_0x25f2('0x33')](),_0x48054e);},TIME);});}function defaultLicense(){var _0x1054a1=hardware[_0x25f2('0x33')]();if(_0x1054a1){return db[_0x25f2('0x34')][_0x25f2('0x35')]({'where':{'id':0x1},'defaults':{'data1':_0x1054a1}})[_0x25f2('0x36')](function(_0x2325d0,_0x1df8ae){logger['info']('SERVICE\x20LICENSE\x20STARTED\x20%s',_0x1054a1);manageLicense(_0x1054a1,_0x2325d0);})[_0x25f2('0x10')](function(_0x259a6d){logger[_0x25f2('0x31')](_0x259a6d[_0x25f2('0x37')]);});}}exports[_0x25f2('0x38')]=defaultLicense;
\ No newline at end of file