Built motion from commit e02f907f.|2.6.14
[motion2.git] / server / config / license / hardware.js
1 // *************************************************************************
2 // *                                                                       *
3 // * xCALLY Motion -  The Omnichannel Contact Center                       *
4 // * Copyright (c) Xenialab s.r.l. All Rights Reserved                     *
5 // *                                                                       *
6 // *************************************************************************
7 // *                                                                       *
8 // * Email: info@xcally.com                                                *
9 // * Website: https://www.xcally.com                                       *
10 // *                                                                       *
11 // *************************************************************************
12 // *                                                                       *
13 // * The SOFTWARE PRODUCT is protected by copyright laws and international *
14 // * copyright treaties, as well as other intellectual property laws and   *
15 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                         *
16 // *                                                                       *
17 // *************************************************************************
18 var _0x61c4=['bimedia-machine-uuid','child_process','execSync','../environment','orderBy','keys','length','family','IPv4','internal','concat','head','mac','00:00:00:00:00:00','address','127.0.0.1','getFirstInterface','cpus','map','model','join','createHash','md5','digest','hex','getUuid','platform','licenseToken','test','dmidecode\x20--string\x20system-uuid','utf8','replace','hostname','macAddress','ipAddress','update','substring','lodash','crypto'];(function(_0x52cc00,_0x38520b){var _0x23cbad=function(_0x34affd){while(--_0x34affd){_0x52cc00['push'](_0x52cc00['shift']());}};_0x23cbad(++_0x38520b);}(_0x61c4,0xe8));var _0x461c=function(_0x30625f,_0x32c487){_0x30625f=_0x30625f-0x0;var _0x563d63=_0x61c4[_0x30625f];return _0x563d63;};'use strict';var _=require(_0x461c('0x0'));var os=require('os');var crypto=require(_0x461c('0x1'));var machine=require(_0x461c('0x2'));var exec=require(_0x461c('0x3'))[_0x461c('0x4')];var config=require(_0x461c('0x5'));function getInterfaces(){var _0x996fee=[];var _0x21fa30=os['networkInterfaces']();var _0x286647=_[_0x461c('0x6')](_[_0x461c('0x7')](_0x21fa30));for(var _0x2d0a7e=0x0;_0x2d0a7e<_0x286647[_0x461c('0x8')];_0x2d0a7e++){var _0x370af9=_0x21fa30[_0x286647[_0x2d0a7e]]['filter'](function(_0x6f7d96){return _0x6f7d96[_0x461c('0x9')]===_0x461c('0xa')&&_0x6f7d96[_0x461c('0xb')]===![];});_0x996fee=_0x996fee[_0x461c('0xc')](_0x370af9);}return _0x996fee;}function getFirstInterface(){var _0x560b3b=_[_0x461c('0xd')](getInterfaces());return{'macAddress':_0x560b3b&&_0x560b3b['mac']?_0x560b3b[_0x461c('0xe')]:_0x461c('0xf'),'ipAddress':_0x560b3b&&_0x560b3b[_0x461c('0x10')]?_0x560b3b['address']:_0x461c('0x11')};}exports[_0x461c('0x12')]=getFirstInterface;function getCPUhash(){var _0x2e2f08=_[_0x461c('0x6')](os[_0x461c('0x13')]()[_0x461c('0x14')](function(_0x11cfc1){return _0x11cfc1[_0x461c('0x15')];}))[_0x461c('0x16')](':');return crypto[_0x461c('0x17')](_0x461c('0x18'))['update'](_0x2e2f08)[_0x461c('0x19')](_0x461c('0x1a'));}exports[_0x461c('0x1b')]=function(){var _0x54b8df=os[_0x461c('0x1c')]();var _0x38b509=/[0-9a-f-]{36}/;if(config[_0x461c('0x1d')]&&_0x38b509[_0x461c('0x1e')](config[_0x461c('0x1d')])){return config[_0x461c('0x1d')];}else if(_0x54b8df==='win32'){return exec(_0x461c('0x1f'),{'encoding':_0x461c('0x20')})[_0x461c('0x21')]('\x0d\x0a','');}else{var _0xa5bcaf=getFirstInterface();var _0x16642a=getCPUhash();var _0x36f503=_0x16642a+'|'+os[_0x461c('0x22')]()+'|'+_0xa5bcaf[_0x461c('0x23')]+'|'+_0xa5bcaf[_0x461c('0x24')];var _0x5849d8=crypto[_0x461c('0x17')](_0x461c('0x18'))[_0x461c('0x25')](_0x36f503)[_0x461c('0x19')](_0x461c('0x1a'));return _0x5849d8[_0x461c('0x26')](0x0,0x8)+'-'+_0x5849d8[_0x461c('0x26')](0x8,0xc)+'-'+_0x5849d8[_0x461c('0x26')](0xc,0x10)+'-'+_0x5849d8[_0x461c('0x26')](0x10,0x14)+'-'+_0x5849d8['substring'](0x14);}};