Built motion from commit 85328c08.|2.5.50
[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 _0x8aad=['../environment','networkInterfaces','orderBy','length','filter','family','IPv4','internal','concat','mac','00:00:00:00:00:00','address','127.0.0.1','getFirstInterface','cpus','map','model','join','createHash','md5','getUuid','platform','test','licenseToken','dmidecode\x20--string\x20system-uuid','utf8','hostname','macAddress','ipAddress','update','digest','substring','lodash','crypto','bimedia-machine-uuid','child_process'];(function(_0x3d7e16,_0x41cda0){var _0x1d7fb2=function(_0x4ab0e1){while(--_0x4ab0e1){_0x3d7e16['push'](_0x3d7e16['shift']());}};_0x1d7fb2(++_0x41cda0);}(_0x8aad,0xb0));var _0xd8aa=function(_0x1be098,_0x3e6dfe){_0x1be098=_0x1be098-0x0;var _0x5ebbe5=_0x8aad[_0x1be098];return _0x5ebbe5;};'use strict';var _=require(_0xd8aa('0x0'));var os=require('os');var crypto=require(_0xd8aa('0x1'));var machine=require(_0xd8aa('0x2'));var exec=require(_0xd8aa('0x3'))['execSync'];var config=require(_0xd8aa('0x4'));function getInterfaces(){var _0x1c5088=[];var _0x439138=os[_0xd8aa('0x5')]();var _0x521789=_[_0xd8aa('0x6')](_['keys'](_0x439138));for(var _0x5ac0f3=0x0;_0x5ac0f3<_0x521789[_0xd8aa('0x7')];_0x5ac0f3++){var _0x2f6211=_0x439138[_0x521789[_0x5ac0f3]][_0xd8aa('0x8')](function(_0x50511f){return _0x50511f[_0xd8aa('0x9')]===_0xd8aa('0xa')&&_0x50511f[_0xd8aa('0xb')]===![];});_0x1c5088=_0x1c5088[_0xd8aa('0xc')](_0x2f6211);}return _0x1c5088;}function getFirstInterface(){var _0x414ba4=_['head'](getInterfaces());return{'macAddress':_0x414ba4&&_0x414ba4[_0xd8aa('0xd')]?_0x414ba4[_0xd8aa('0xd')]:_0xd8aa('0xe'),'ipAddress':_0x414ba4&&_0x414ba4[_0xd8aa('0xf')]?_0x414ba4[_0xd8aa('0xf')]:_0xd8aa('0x10')};}exports[_0xd8aa('0x11')]=getFirstInterface;function getCPUhash(){var _0x574692=_[_0xd8aa('0x6')](os[_0xd8aa('0x12')]()[_0xd8aa('0x13')](function(_0x350b58){return _0x350b58[_0xd8aa('0x14')];}))[_0xd8aa('0x15')](':');return crypto[_0xd8aa('0x16')](_0xd8aa('0x17'))['update'](_0x574692)['digest']('hex');}exports[_0xd8aa('0x18')]=function(){var _0x34cf3e=os[_0xd8aa('0x19')]();var _0x2f81b4=/[0-9a-f-]{36}/;if(config['licenseToken']&&_0x2f81b4[_0xd8aa('0x1a')](config[_0xd8aa('0x1b')])){return config[_0xd8aa('0x1b')];}else if(_0x34cf3e==='win32'){return exec(_0xd8aa('0x1c'),{'encoding':_0xd8aa('0x1d')})['replace']('\x0d\x0a','');}else{var _0xd9e94b=getFirstInterface();var _0x305b69=getCPUhash();var _0x1386c1=_0x305b69+'|'+os[_0xd8aa('0x1e')]()+'|'+_0xd9e94b[_0xd8aa('0x1f')]+'|'+_0xd9e94b[_0xd8aa('0x20')];var _0x140251=crypto[_0xd8aa('0x16')]('md5')[_0xd8aa('0x21')](_0x1386c1)[_0xd8aa('0x22')]('hex');return _0x140251[_0xd8aa('0x23')](0x0,0x8)+'-'+_0x140251['substring'](0x8,0xc)+'-'+_0x140251['substring'](0xc,0x10)+'-'+_0x140251['substring'](0x10,0x14)+'-'+_0x140251[_0xd8aa('0x23')](0x14);}};