Built motion from commit (unavailable).|2.5.4
[motion2.git] / server / config / license / index.js
index f8d06c7..587a4c7 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x82d8=['ipAddress','openIssue','MOTLICENSE','Motion\x20License\x20Alert','Alert','info','THE\x20LICENSE\x20HAS\x20BEEN\x20ENABLED','data2','data1','Changed','uuid','%s\x20-\x20GRAY\x20PERIOD\x20STARTED\x20AT\x20%s','YYYY-MM-DD\x20HH:mm','diff','days','NEW\x20UUID\x20DETECTED:\x20FROM\x20%s\x20TO\x20%s','error','message','finally','getUuid','findOrCreate','spread','default','util','moment','pkginfo','../../mysqldb','../logger','license','../../api/jira/jira.controller','https://www.xcallymotion.com','format','%s/api/servers/%s/check?version=%s','exports','%s/api/servers/%s/check?version=%s&oldtoken=%s','version','GET','catch','createCipher','aes-256-ctr','update','utf8','base64','final','createDecipher','secrets','session','||FIELD||VALUE||\x0a','User','admin','fullname','email','|reason|','|uuid|','|machineUuid|','|name|','|email|','then'];(function(_0x4afa79,_0x22c6a4){var _0x274a72=function(_0x59956c){while(--_0x59956c){_0x4afa79['push'](_0x4afa79['shift']());}};_0x274a72(++_0x22c6a4);}(_0x82d8,0xff));var _0x882d=function(_0x431501,_0x46a38c){_0x431501=_0x431501-0x0;var _0x29ac6c=_0x82d8[_0x431501];return _0x29ac6c;};'use strict';var util=require(_0x882d('0x0'));var crypto=require('crypto');var moment=require(_0x882d('0x1'));var rp=require('request-promise');var BPromise=require('bluebird');var pkginfo=require(_0x882d('0x2'))(module,'version');var db=require(_0x882d('0x3'))['db'];var config=require('../environment');var hardware=require('./hardware');var logger=require(_0x882d('0x4'))(_0x882d('0x5'));var jira=require(_0x882d('0x6'));var HOST=_0x882d('0x7');var TIME=0x3c*0x1388;var DAYS=0x7;var GRAY_PERIOD_REASON;var ADMIN;var oldToken;function httpRequest(_0xb7539b){return new BPromise(function(_0x3c8b67,_0x4067a9){var _0x4ea710=util[_0x882d('0x8')](_0x882d('0x9'),HOST,_0xb7539b,module[_0x882d('0xa')]['version']);if(oldToken){_0x4ea710=util[_0x882d('0x8')](_0x882d('0xb'),HOST,_0xb7539b,module['exports'][_0x882d('0xc')],oldToken);}var _0xa2ca7f={'uri':_0x4ea710,'method':_0x882d('0xd'),'timeout':0xea60,'json':!![]};return rp(_0xa2ca7f)['then'](function(_0x287672){_0x3c8b67(_0x287672);})[_0x882d('0xe')](function(_0x18ce3e){_0x4067a9(_0x18ce3e);});});}function encryptDate(_0x3fffe0){var _0x3bd4d9=crypto[_0x882d('0xf')](_0x882d('0x10'),config['secrets']['session']);var _0x2a7091=_0x3bd4d9[_0x882d('0x11')](_0x3fffe0,_0x882d('0x12'),_0x882d('0x13'));_0x2a7091+=_0x3bd4d9[_0x882d('0x14')]('base64');return _0x2a7091;}function decryptDate(_0x3ce2b0){var _0x2d88e5=crypto[_0x882d('0x15')](_0x882d('0x10'),config[_0x882d('0x16')][_0x882d('0x17')]);var _0x46cfcc=_0x2d88e5[_0x882d('0x11')](_0x3ce2b0,_0x882d('0x13'),'utf8');_0x46cfcc+=_0x2d88e5['final'](_0x882d('0x12'));return _0x46cfcc;}function sendJiraAlert(_0x59aaec,_0x3e4cf5,_0x47d6a0){var _0x36ecd0=_0x882d('0x18');return db[_0x882d('0x19')]['findOne']({'where':{'role':_0x882d('0x1a')},'attributes':[_0x882d('0x1b'),_0x882d('0x1c')],'raw':!![]})['then'](function(_0x3420cd){ADMIN=_0x3420cd;_0x36ecd0+=_0x882d('0x1d')+_0x47d6a0+'|\x0a';_0x36ecd0+=_0x882d('0x1e')+_0x59aaec+'|\x0a';_0x36ecd0+=_0x882d('0x1f')+_0x3e4cf5+'|\x0a';_0x36ecd0+=_0x882d('0x20')+ADMIN[_0x882d('0x1b')]+'|\x0a';_0x36ecd0+=_0x882d('0x21')+ADMIN[_0x882d('0x1c')]+'|\x0a';return _0x36ecd0;})[_0x882d('0x22')](function(_0x57f1d4){var _0x37e6fa=hardware['getFirstInterface']()[_0x882d('0x23')];return jira[_0x882d('0x24')]({'key':_0x882d('0x25'),'summary':_0x882d('0x26'),'description':_0x57f1d4,'issuetype':_0x882d('0x27'),'oldToken':_0x59aaec,'newToken':_0x3e4cf5,'email':ADMIN['email'],'name':ADMIN[_0x882d('0x1b')],'reason':GRAY_PERIOD_REASON,'ip':_0x37e6fa});});}function manageLicense(_0x58ddb2,_0xb49a3c){var _0x3cb1e2=_0xb49a3c['get']({'plain':!![]});httpRequest(_0x58ddb2)['then'](function(_0x508003){if(oldToken){oldToken=undefined;}if(_0x508003['active']){if(!_0x3cb1e2[_0x882d('0x5')]&&_0x3cb1e2[_0x882d('0x5')]!=_0x508003[_0x882d('0x5')]||_0x3cb1e2[_0x882d('0x5')]&&_0x3cb1e2['data2']){logger[_0x882d('0x28')](_0x882d('0x29'));}if(_0x3cb1e2[_0x882d('0x5')]&&!_0x3cb1e2[_0x882d('0x2a')]&&_0x3cb1e2[_0x882d('0x5')]!=_0x508003['license']){logger['info']('THE\x20LICENSE\x20HAS\x20BEEN\x20UPDATED');}if(_0x3cb1e2[_0x882d('0x5')]&&!_0x3cb1e2[_0x882d('0x2a')]&&_0x3cb1e2[_0x882d('0x5')]==_0x508003['license']){return _0xb49a3c;}return _0xb49a3c[_0x882d('0x11')]({'data1':_0x58ddb2,'data2':null,'license':_0x508003[_0x882d('0x5')]});}else{if(_0x508003[_0x882d('0x5')]||_0x3cb1e2[_0x882d('0x5')]){if(!_0x3cb1e2[_0x882d('0x2a')]){if(_0x3cb1e2[_0x882d('0x2b')]==_0x58ddb2){GRAY_PERIOD_REASON='Disabled';logger[_0x882d('0x28')]('THE\x20LICENSE\x20HAS\x20BEEN\x20DISABLED');}else{GRAY_PERIOD_REASON=_0x882d('0x2c');oldToken=_0x3cb1e2['data1'];logger[_0x882d('0x28')]('NEW\x20UUID\x20DETECTED:\x20FROM\x20%s\x20TO\x20%s',_0x3cb1e2[_0x882d('0x2b')],_0x58ddb2);}sendJiraAlert(_0x3cb1e2[_0x882d('0x2b')],_0x508003[_0x882d('0x2d')],GRAY_PERIOD_REASON);logger[_0x882d('0x28')](_0x882d('0x2e'),GRAY_PERIOD_REASON['toUpperCase'](),moment()[_0x882d('0x8')]('YYYY-MM-DD\x20HH:mm'));return _0xb49a3c[_0x882d('0x11')]({'data2':encryptDate(moment()[_0x882d('0x8')](_0x882d('0x2f')))});}else{if(moment()[_0x882d('0x30')](decryptDate(_0x3cb1e2[_0x882d('0x2a')]),_0x882d('0x31'))>DAYS){logger['info']('DEMO\x20START\x20AT\x20%s',moment()['format'](_0x882d('0x2f')));return _0xb49a3c[_0x882d('0x11')]({'data1':_0x58ddb2,'data2':null,'license':null});}}}else{if(_0x3cb1e2[_0x882d('0x2b')]!=_0x58ddb2){logger[_0x882d('0x28')](_0x882d('0x32'),_0x3cb1e2['data1'],_0x58ddb2);return _0xb49a3c[_0x882d('0x11')]({'data1':_0x58ddb2,'data2':null,'license':null});}}}return _0xb49a3c;})[_0x882d('0x22')](function(_0xc412ec){_0xb49a3c=_0xc412ec;})[_0x882d('0xe')](function(_0x335dc0){logger[_0x882d('0x33')](_0x335dc0[_0x882d('0x34')]);})[_0x882d('0x35')](function(){setTimeout(function(){manageLicense(hardware[_0x882d('0x36')](),_0xb49a3c);},TIME);});}function defaultLicense(){var _0x56b3fa=hardware['getUuid']();if(_0x56b3fa){return db['License'][_0x882d('0x37')]({'where':{'id':0x1},'defaults':{'data1':_0x56b3fa}})[_0x882d('0x38')](function(_0x1aec6f,_0x6d04f){logger['info']('SERVICE\x20LICENSE\x20STARTED\x20%s',_0x56b3fa);manageLicense(_0x56b3fa,_0x1aec6f);})[_0x882d('0xe')](function(_0x21dd0e){logger[_0x882d('0x33')](_0x21dd0e['message']);});}}exports[_0x882d('0x39')]=defaultLicense;
\ No newline at end of file
+var _0xdc91=['Motion\x20License\x20Alert','Alert','get','data2','info','THE\x20LICENSE\x20HAS\x20BEEN\x20ENABLED','THE\x20LICENSE\x20HAS\x20BEEN\x20UPDATED','data1','Disabled','THE\x20LICENSE\x20HAS\x20BEEN\x20DISABLED','uuid','toUpperCase','YYYY-MM-DD\x20HH:mm','diff','days','error','message','getUuid','License','findOrCreate','spread','SERVICE\x20LICENSE\x20STARTED\x20%s','default','util','crypto','version','../../mysqldb','../environment','./hardware','../logger','license','../../api/jira/jira.controller','https://www.xcallymotion.com','format','%s/api/servers/%s/check?version=%s','exports','%s/api/servers/%s/check?version=%s&oldtoken=%s','then','catch','aes-256-ctr','secrets','update','final','base64','session','utf8','||FIELD||VALUE||\x0a','User','findOne','admin','|machineUuid|','|name|','fullname','|email|','email','getFirstInterface','ipAddress','openIssue'];(function(_0x18df6a,_0x3938b6){var _0x3b154d=function(_0x31cfc2){while(--_0x31cfc2){_0x18df6a['push'](_0x18df6a['shift']());}};_0x3b154d(++_0x3938b6);}(_0xdc91,0x8b));var _0x1dc9=function(_0x3e40e0,_0x4a3332){_0x3e40e0=_0x3e40e0-0x0;var _0x3816d1=_0xdc91[_0x3e40e0];return _0x3816d1;};'use strict';var util=require(_0x1dc9('0x0'));var crypto=require(_0x1dc9('0x1'));var moment=require('moment');var rp=require('request-promise');var BPromise=require('bluebird');var pkginfo=require('pkginfo')(module,_0x1dc9('0x2'));var db=require(_0x1dc9('0x3'))['db'];var config=require(_0x1dc9('0x4'));var hardware=require(_0x1dc9('0x5'));var logger=require(_0x1dc9('0x6'))(_0x1dc9('0x7'));var jira=require(_0x1dc9('0x8'));var HOST=_0x1dc9('0x9');var TIME=0x3c*0x1388;var DAYS=0x7;var GRAY_PERIOD_REASON;var ADMIN;var oldToken;function httpRequest(_0x5ac058){return new BPromise(function(_0x2c6e6c,_0x25a752){var _0x316995=util[_0x1dc9('0xa')](_0x1dc9('0xb'),HOST,_0x5ac058,module[_0x1dc9('0xc')][_0x1dc9('0x2')]);if(oldToken){_0x316995=util[_0x1dc9('0xa')](_0x1dc9('0xd'),HOST,_0x5ac058,module[_0x1dc9('0xc')]['version'],oldToken);}var _0x356525={'uri':_0x316995,'method':'GET','timeout':0xea60,'json':!![]};return rp(_0x356525)[_0x1dc9('0xe')](function(_0x5b29c5){_0x2c6e6c(_0x5b29c5);})[_0x1dc9('0xf')](function(_0x41f1da){_0x25a752(_0x41f1da);});});}function encryptDate(_0x4402f2){var _0x123684=crypto['createCipher'](_0x1dc9('0x10'),config[_0x1dc9('0x11')]['session']);var _0x41c335=_0x123684[_0x1dc9('0x12')](_0x4402f2,'utf8','base64');_0x41c335+=_0x123684[_0x1dc9('0x13')](_0x1dc9('0x14'));return _0x41c335;}function decryptDate(_0x38ee59){var _0x2c94b1=crypto['createDecipher']('aes-256-ctr',config[_0x1dc9('0x11')][_0x1dc9('0x15')]);var _0x5cccb9=_0x2c94b1[_0x1dc9('0x12')](_0x38ee59,_0x1dc9('0x14'),_0x1dc9('0x16'));_0x5cccb9+=_0x2c94b1[_0x1dc9('0x13')](_0x1dc9('0x16'));return _0x5cccb9;}function sendJiraAlert(_0x1e845a,_0x2442d0,_0x1e4aca){var _0x1386c9=_0x1dc9('0x17');return db[_0x1dc9('0x18')][_0x1dc9('0x19')]({'where':{'role':_0x1dc9('0x1a')},'attributes':['fullname','email'],'raw':!![]})[_0x1dc9('0xe')](function(_0x4d3818){ADMIN=_0x4d3818;_0x1386c9+='|reason|'+_0x1e4aca+'|\x0a';_0x1386c9+='|uuid|'+_0x1e845a+'|\x0a';_0x1386c9+=_0x1dc9('0x1b')+_0x2442d0+'|\x0a';_0x1386c9+=_0x1dc9('0x1c')+ADMIN[_0x1dc9('0x1d')]+'|\x0a';_0x1386c9+=_0x1dc9('0x1e')+ADMIN[_0x1dc9('0x1f')]+'|\x0a';return _0x1386c9;})[_0x1dc9('0xe')](function(_0x2b1ff8){var _0x48dd9c=hardware[_0x1dc9('0x20')]()[_0x1dc9('0x21')];return jira[_0x1dc9('0x22')]({'key':'MOTLICENSE','summary':_0x1dc9('0x23'),'description':_0x2b1ff8,'issuetype':_0x1dc9('0x24'),'oldToken':_0x1e845a,'newToken':_0x2442d0,'email':ADMIN[_0x1dc9('0x1f')],'name':ADMIN[_0x1dc9('0x1d')],'reason':GRAY_PERIOD_REASON,'ip':_0x48dd9c});});}function manageLicense(_0x2dfe03,_0x476111){var _0x179498=_0x476111[_0x1dc9('0x25')]({'plain':!![]});httpRequest(_0x2dfe03)[_0x1dc9('0xe')](function(_0x59f588){if(oldToken){oldToken=undefined;}if(_0x59f588['active']){if(!_0x179498[_0x1dc9('0x7')]&&_0x179498[_0x1dc9('0x7')]!=_0x59f588[_0x1dc9('0x7')]||_0x179498[_0x1dc9('0x7')]&&_0x179498[_0x1dc9('0x26')]){logger[_0x1dc9('0x27')](_0x1dc9('0x28'));}if(_0x179498[_0x1dc9('0x7')]&&!_0x179498[_0x1dc9('0x26')]&&_0x179498['license']!=_0x59f588[_0x1dc9('0x7')]){logger[_0x1dc9('0x27')](_0x1dc9('0x29'));}if(_0x179498[_0x1dc9('0x7')]&&!_0x179498[_0x1dc9('0x26')]&&_0x179498[_0x1dc9('0x7')]==_0x59f588['license']){return _0x476111;}return _0x476111['update']({'data1':_0x2dfe03,'data2':null,'license':_0x59f588[_0x1dc9('0x7')]});}else{if(_0x59f588[_0x1dc9('0x7')]||_0x179498['license']){if(!_0x179498[_0x1dc9('0x26')]){if(_0x179498[_0x1dc9('0x2a')]==_0x2dfe03){GRAY_PERIOD_REASON=_0x1dc9('0x2b');logger['info'](_0x1dc9('0x2c'));}else{GRAY_PERIOD_REASON='Changed';oldToken=_0x179498[_0x1dc9('0x2a')];logger['info']('NEW\x20UUID\x20DETECTED:\x20FROM\x20%s\x20TO\x20%s',_0x179498[_0x1dc9('0x2a')],_0x2dfe03);}sendJiraAlert(_0x179498[_0x1dc9('0x2a')],_0x59f588[_0x1dc9('0x2d')],GRAY_PERIOD_REASON);logger[_0x1dc9('0x27')]('%s\x20-\x20GRAY\x20PERIOD\x20STARTED\x20AT\x20%s',GRAY_PERIOD_REASON[_0x1dc9('0x2e')](),moment()['format'](_0x1dc9('0x2f')));return _0x476111[_0x1dc9('0x12')]({'data2':encryptDate(moment()[_0x1dc9('0xa')](_0x1dc9('0x2f')))});}else{if(moment()[_0x1dc9('0x30')](decryptDate(_0x179498[_0x1dc9('0x26')]),_0x1dc9('0x31'))>DAYS){logger[_0x1dc9('0x27')]('DEMO\x20START\x20AT\x20%s',moment()['format'](_0x1dc9('0x2f')));return _0x476111[_0x1dc9('0x12')]({'data1':_0x2dfe03,'data2':null,'license':null});}}}else{if(_0x179498[_0x1dc9('0x2a')]!=_0x2dfe03){logger[_0x1dc9('0x27')]('NEW\x20UUID\x20DETECTED:\x20FROM\x20%s\x20TO\x20%s',_0x179498[_0x1dc9('0x2a')],_0x2dfe03);return _0x476111['update']({'data1':_0x2dfe03,'data2':null,'license':null});}}}return _0x476111;})[_0x1dc9('0xe')](function(_0x19fc87){_0x476111=_0x19fc87;})[_0x1dc9('0xf')](function(_0x27e309){logger[_0x1dc9('0x32')](_0x27e309[_0x1dc9('0x33')]);})['finally'](function(){setTimeout(function(){manageLicense(hardware[_0x1dc9('0x34')](),_0x476111);},TIME);});}function defaultLicense(){var _0x17bb3c=hardware[_0x1dc9('0x34')]();if(_0x17bb3c){return db[_0x1dc9('0x35')][_0x1dc9('0x36')]({'where':{'id':0x1},'defaults':{'data1':_0x17bb3c}})[_0x1dc9('0x37')](function(_0x4c2386,_0xff1a45){logger[_0x1dc9('0x27')](_0x1dc9('0x38'),_0x17bb3c);manageLicense(_0x17bb3c,_0x4c2386);})[_0x1dc9('0xf')](function(_0x5af473){logger[_0x1dc9('0x32')](_0x5af473[_0x1dc9('0x33')]);});}}exports[_0x1dc9('0x39')]=defaultLicense;
\ No newline at end of file