Built motion from commit 497d3d92.|2.5.43
[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 _0xcef4=['bimedia-machine-uuid','child_process','execSync','../environment','networkInterfaces','orderBy','keys','filter','family','IPv4','internal','mac','00:00:00:00:00:00','address','127.0.0.1','getFirstInterface','cpus','map','model','createHash','md5','update','digest','hex','platform','licenseToken','test','win32','dmidecode\x20--string\x20system-uuid','utf8','replace','substring','lodash','crypto'];(function(_0x107cec,_0x4781fa){var _0x3e4721=function(_0x7924d){while(--_0x7924d){_0x107cec['push'](_0x107cec['shift']());}};_0x3e4721(++_0x4781fa);}(_0xcef4,0x64));var _0x4cef=function(_0x56916d,_0x37b935){_0x56916d=_0x56916d-0x0;var _0x2b7f1f=_0xcef4[_0x56916d];return _0x2b7f1f;};'use strict';var _=require(_0x4cef('0x0'));var os=require('os');var crypto=require(_0x4cef('0x1'));var machine=require(_0x4cef('0x2'));var exec=require(_0x4cef('0x3'))[_0x4cef('0x4')];var config=require(_0x4cef('0x5'));function getInterfaces(){var _0x2cf536=[];var _0x337b27=os[_0x4cef('0x6')]();var _0x59831d=_[_0x4cef('0x7')](_[_0x4cef('0x8')](_0x337b27));for(var _0x27bff1=0x0;_0x27bff1<_0x59831d['length'];_0x27bff1++){var _0x213bfe=_0x337b27[_0x59831d[_0x27bff1]][_0x4cef('0x9')](function(_0x139e8e){return _0x139e8e[_0x4cef('0xa')]===_0x4cef('0xb')&&_0x139e8e[_0x4cef('0xc')]===![];});_0x2cf536=_0x2cf536['concat'](_0x213bfe);}return _0x2cf536;}function getFirstInterface(){var _0x3c4223=_['head'](getInterfaces());return{'macAddress':_0x3c4223&&_0x3c4223['mac']?_0x3c4223[_0x4cef('0xd')]:_0x4cef('0xe'),'ipAddress':_0x3c4223&&_0x3c4223[_0x4cef('0xf')]?_0x3c4223[_0x4cef('0xf')]:_0x4cef('0x10')};}exports[_0x4cef('0x11')]=getFirstInterface;function getCPUhash(){var _0x241045=_[_0x4cef('0x7')](os[_0x4cef('0x12')]()[_0x4cef('0x13')](function(_0x3c30de){return _0x3c30de[_0x4cef('0x14')];}))['join'](':');return crypto[_0x4cef('0x15')](_0x4cef('0x16'))[_0x4cef('0x17')](_0x241045)[_0x4cef('0x18')](_0x4cef('0x19'));}exports['getUuid']=function(){var _0x418430=os[_0x4cef('0x1a')]();var _0x32f38e=/[0-9a-f-]{36}/;if(config[_0x4cef('0x1b')]&&_0x32f38e[_0x4cef('0x1c')](config[_0x4cef('0x1b')])){return config[_0x4cef('0x1b')];}else if(_0x418430===_0x4cef('0x1d')){return exec(_0x4cef('0x1e'),{'encoding':_0x4cef('0x1f')})[_0x4cef('0x20')]('\x0d\x0a','');}else{var _0x4e1973=getFirstInterface();var _0x5b24c2=getCPUhash();var _0x40e38f=_0x5b24c2+'|'+os['hostname']()+'|'+_0x4e1973['macAddress']+'|'+_0x4e1973['ipAddress'];var _0x4f3089=crypto['createHash'](_0x4cef('0x16'))[_0x4cef('0x17')](_0x40e38f)[_0x4cef('0x18')](_0x4cef('0x19'));return _0x4f3089[_0x4cef('0x21')](0x0,0x8)+'-'+_0x4f3089[_0x4cef('0x21')](0x8,0xc)+'-'+_0x4f3089[_0x4cef('0x21')](0xc,0x10)+'-'+_0x4f3089[_0x4cef('0x21')](0x10,0x14)+'-'+_0x4f3089[_0x4cef('0x21')](0x14);}};