74383bf663c347da228deb89a53bc2506c0af511
[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 _0xaa3f=['networkInterfaces','filter','family','IPv4','internal','concat','head','mac','address','127.0.0.1','getFirstInterface','orderBy','map','model','join','createHash','update','hex','getUuid','platform','win32','dmidecode\x20--string\x20system-uuid','utf8','hostname','macAddress','digest','substring','lodash','crypto','bimedia-machine-uuid','child_process','execSync'];(function(_0x55a3cc,_0x169ae2){var _0x338ffb=function(_0xf5a102){while(--_0xf5a102){_0x55a3cc['push'](_0x55a3cc['shift']());}};_0x338ffb(++_0x169ae2);}(_0xaa3f,0xbb));var _0xfaa3=function(_0x4324aa,_0x1bcdd0){_0x4324aa=_0x4324aa-0x0;var _0x270aa2=_0xaa3f[_0x4324aa];return _0x270aa2;};'use strict';var _=require(_0xfaa3('0x0'));var os=require('os');var crypto=require(_0xfaa3('0x1'));var machine=require(_0xfaa3('0x2'));var exec=require(_0xfaa3('0x3'))[_0xfaa3('0x4')];function getInterfaces(){var _0x1da39b=[];var _0x408343=os[_0xfaa3('0x5')]();var _0x32f4e1=_['orderBy'](_['keys'](_0x408343));for(var _0x2ac57f=0x0;_0x2ac57f<_0x32f4e1['length'];_0x2ac57f++){var _0x3d09aa=_0x408343[_0x32f4e1[_0x2ac57f]][_0xfaa3('0x6')](function(_0x352958){return _0x352958[_0xfaa3('0x7')]===_0xfaa3('0x8')&&_0x352958[_0xfaa3('0x9')]===![];});_0x1da39b=_0x1da39b[_0xfaa3('0xa')](_0x3d09aa);}return _0x1da39b;}function getFirstInterface(){var _0x54fb06=_[_0xfaa3('0xb')](getInterfaces());return{'macAddress':_0x54fb06&&_0x54fb06[_0xfaa3('0xc')]?_0x54fb06['mac']:'00:00:00:00:00:00','ipAddress':_0x54fb06&&_0x54fb06[_0xfaa3('0xd')]?_0x54fb06[_0xfaa3('0xd')]:_0xfaa3('0xe')};}exports[_0xfaa3('0xf')]=getFirstInterface;function getCPUhash(){var _0x23e4b6=_[_0xfaa3('0x10')](os['cpus']()[_0xfaa3('0x11')](function(_0x5be067){return _0x5be067[_0xfaa3('0x12')];}))[_0xfaa3('0x13')](':');return crypto[_0xfaa3('0x14')]('md5')[_0xfaa3('0x15')](_0x23e4b6)['digest'](_0xfaa3('0x16'));}exports[_0xfaa3('0x17')]=function(){switch(os[_0xfaa3('0x18')]()){case _0xfaa3('0x19'):return exec(_0xfaa3('0x1a'),{'encoding':_0xfaa3('0x1b')})['replace']('\x0d\x0a','');default:var _0x5f47dd=getFirstInterface();var _0x46e112=getCPUhash();var _0xe1a082=_0x46e112+'|'+os[_0xfaa3('0x1c')]()+'|'+_0x5f47dd[_0xfaa3('0x1d')]+'|'+_0x5f47dd['ipAddress'];var _0x5dd38c=crypto['createHash']('md5')['update'](_0xe1a082)[_0xfaa3('0x1e')]('hex');return _0x5dd38c[_0xfaa3('0x1f')](0x0,0x8)+'-'+_0x5dd38c[_0xfaa3('0x1f')](0x8,0xc)+'-'+_0x5dd38c[_0xfaa3('0x1f')](0xc,0x10)+'-'+_0x5dd38c[_0xfaa3('0x1f')](0x10,0x14)+'-'+_0x5dd38c[_0xfaa3('0x1f')](0x14);}};