Built motion from commit 06eb8eb0.|2.6.31
[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 _0x4fe1=['networkInterfaces','orderBy','length','filter','family','IPv4','concat','head','mac','00:00:00:00:00:00','address','127.0.0.1','cpus','map','model','join','md5','digest','hex','getUuid','platform','licenseToken','test','win32','dmidecode\x20--string\x20system-uuid','utf8','replace','hostname','macAddress','ipAddress','substring','lodash','crypto','bimedia-machine-uuid','child_process','execSync','../environment'];(function(_0x4f1511,_0x1c4a71){var _0x5cfacb=function(_0x331001){while(--_0x331001){_0x4f1511['push'](_0x4f1511['shift']());}};_0x5cfacb(++_0x1c4a71);}(_0x4fe1,0xb3));var _0x14fe=function(_0x1035c1,_0x2d8583){_0x1035c1=_0x1035c1-0x0;var _0x308d67=_0x4fe1[_0x1035c1];return _0x308d67;};'use strict';var _=require(_0x14fe('0x0'));var os=require('os');var crypto=require(_0x14fe('0x1'));var machine=require(_0x14fe('0x2'));var exec=require(_0x14fe('0x3'))[_0x14fe('0x4')];var config=require(_0x14fe('0x5'));function getInterfaces(){var _0x501d3c=[];var _0x193c37=os[_0x14fe('0x6')]();var _0x412bc8=_[_0x14fe('0x7')](_['keys'](_0x193c37));for(var _0x766f51=0x0;_0x766f51<_0x412bc8[_0x14fe('0x8')];_0x766f51++){var _0x251978=_0x193c37[_0x412bc8[_0x766f51]][_0x14fe('0x9')](function(_0x2dba7e){return _0x2dba7e[_0x14fe('0xa')]===_0x14fe('0xb')&&_0x2dba7e['internal']===![];});_0x501d3c=_0x501d3c[_0x14fe('0xc')](_0x251978);}return _0x501d3c;}function getFirstInterface(){var _0x1513da=_[_0x14fe('0xd')](getInterfaces());return{'macAddress':_0x1513da&&_0x1513da[_0x14fe('0xe')]?_0x1513da[_0x14fe('0xe')]:_0x14fe('0xf'),'ipAddress':_0x1513da&&_0x1513da['address']?_0x1513da[_0x14fe('0x10')]:_0x14fe('0x11')};}exports['getFirstInterface']=getFirstInterface;function getCPUhash(){var _0x8c4759=_[_0x14fe('0x7')](os[_0x14fe('0x12')]()[_0x14fe('0x13')](function(_0x29b3cc){return _0x29b3cc[_0x14fe('0x14')];}))[_0x14fe('0x15')](':');return crypto['createHash'](_0x14fe('0x16'))['update'](_0x8c4759)[_0x14fe('0x17')](_0x14fe('0x18'));}exports[_0x14fe('0x19')]=function(){var _0x2dd8c5=os[_0x14fe('0x1a')]();var _0x26408c=/[0-9a-f-]{36}/;if(config[_0x14fe('0x1b')]&&_0x26408c[_0x14fe('0x1c')](config[_0x14fe('0x1b')])){return config[_0x14fe('0x1b')];}else if(_0x2dd8c5===_0x14fe('0x1d')){return exec(_0x14fe('0x1e'),{'encoding':_0x14fe('0x1f')})[_0x14fe('0x20')]('\x0d\x0a','');}else{var _0x5be74f=getFirstInterface();var _0x5d6703=getCPUhash();var _0x570e7e=_0x5d6703+'|'+os[_0x14fe('0x21')]()+'|'+_0x5be74f[_0x14fe('0x22')]+'|'+_0x5be74f[_0x14fe('0x23')];var _0x22781a=crypto['createHash'](_0x14fe('0x16'))['update'](_0x570e7e)['digest'](_0x14fe('0x18'));return _0x22781a[_0x14fe('0x24')](0x0,0x8)+'-'+_0x22781a['substring'](0x8,0xc)+'-'+_0x22781a[_0x14fe('0x24')](0xc,0x10)+'-'+_0x22781a[_0x14fe('0x24')](0x10,0x14)+'-'+_0x22781a[_0x14fe('0x24')](0x14);}};