Built motion from commit b5996064.|2.6.21
[motion2.git] / server / api / network / network.controller.js
index c01ff1d..92b91c3 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x061f=['index','map','Network','rawAttributes','fieldName','type','keys','query','intersection','model','fields','attributes','length','hasOwnProperty','nolimit','order','sort','pick','filter','where','merge','options','includeAll','include','findAll','rows','show','params','filters','find','create','sequelize','transaction','body','toUpperCase','STUN','readFileSync','join','server/files/templates/stun_multiple.ejs','utf8','render','Reload','res_stun_monitor.so','TURN','root','writeFileSync','/etc/asterisk/turn_xcally.conf','server/files/templates/network.ejs','/etc/asterisk/sip_xcally_%s.conf','toLowerCase','chan_sip.so','/etc/asterisk/stun_xcally.conf','server/files/templates/turn_multiple.ejs','update','html-pdf','eml-format','rimraf','zip-dir','mustache','path','to-csv','ejs','squel','jsforce','desk.js','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/utils','jayson/promise','http','request','then','info','Network,\x20%s,\x20%s','request\x20sent','debug','stringify','error','code','message','result','catch','sendStatus','status','end','json','count','offset','limit','set','apply','destroy','stack','name','send'];(function(_0x41f936,_0x217ec3){var _0x11a6fe=function(_0x551da4){while(--_0x551da4){_0x41f936['push'](_0x41f936['shift']());}};_0x11a6fe(++_0x217ec3);}(_0x061f,0x15c));var _0xf061=function(_0x443221,_0x199ed4){_0x443221=_0x443221-0x0;var _0x4e040c=_0x061f[_0x443221];return _0x4e040c;};'use strict';var pdf=require(_0xf061('0x0'));var emlformat=require(_0xf061('0x1'));var rimraf=require(_0xf061('0x2'));var zipdir=require(_0xf061('0x3'));var jsonpatch=require('fast-json-patch');var rp=require('request-promise');var moment=require('moment');var BPromise=require('bluebird');var Mustache=require(_0xf061('0x4'));var util=require('util');var path=require(_0xf061('0x5'));var sox=require('sox');var csv=require(_0xf061('0x6'));var ejs=require(_0xf061('0x7'));var fs=require('fs');var _=require('lodash');var squel=require(_0xf061('0x8'));var crypto=require('crypto');var jsforce=require(_0xf061('0x9'));var deskjs=require(_0xf061('0xa'));var toCsv=require(_0xf061('0x6'));var querystring=require('querystring');var Papa=require('papaparse');var Redis=require('ioredis');var authService=require(_0xf061('0xb'));var qs=require(_0xf061('0xc'));var as=require(_0xf061('0xd'));var hardwareService=require(_0xf061('0xe'));var logger=require(_0xf061('0xf'))('api');var utils=require(_0xf061('0x10'));var config=require('../../config/environment');var licenseUtil=require('../../config/license/util');var db=require('../../mysqldb')['db'];var jayson=require(_0xf061('0x11'));var client=jayson['client'][_0xf061('0x12')]({'port':0x232a});function respondWithRpcPromise(_0x570207,_0x13a897,_0x57b6ee,_0x1eec00){return new BPromise(function(_0x37b2db,_0x4b5aff){var _0x423260=_0x1eec00||client;return _0x423260[_0xf061('0x13')](_0x570207,_0x57b6ee)[_0xf061('0x14')](function(_0x5cd52e){logger[_0xf061('0x15')](_0xf061('0x16'),_0x13a897,_0xf061('0x17'));logger[_0xf061('0x18')]('Network,\x20%s,\x20%s,\x20%s',_0x13a897,_0xf061('0x17'),JSON[_0xf061('0x19')](_0x5cd52e));if(_0x5cd52e[_0xf061('0x1a')]){if(_0x5cd52e[_0xf061('0x1a')][_0xf061('0x1b')]===0x1f4){logger[_0xf061('0x1a')](_0xf061('0x16'),_0x13a897,_0x5cd52e[_0xf061('0x1a')][_0xf061('0x1c')]);return _0x4b5aff(_0x5cd52e['error'][_0xf061('0x1c')]);}logger[_0xf061('0x1a')](_0xf061('0x16'),_0x13a897,_0x5cd52e['error']['message']);return _0x37b2db(_0x5cd52e[_0xf061('0x1a')][_0xf061('0x1c')]);}else{logger[_0xf061('0x15')](_0xf061('0x16'),_0x13a897,_0xf061('0x17'));_0x37b2db(_0x5cd52e[_0xf061('0x1d')][_0xf061('0x1c')]);}})[_0xf061('0x1e')](function(_0x52a6bf){logger['error']('Network,\x20%s,\x20%s',_0x13a897,_0x52a6bf);_0x4b5aff(_0x52a6bf);});});}function respondWithStatusCode(_0x4033cb,_0x179271){_0x179271=_0x179271||0xcc;return function(_0x37cc44){if(_0x37cc44){return _0x4033cb[_0xf061('0x1f')](_0x179271);}return _0x4033cb[_0xf061('0x20')](_0x179271)[_0xf061('0x21')]();};}function respondWithResult(_0x577344,_0xcf5d2e){_0xcf5d2e=_0xcf5d2e||0xc8;return function(_0x54ef2f){if(_0x54ef2f){return _0x577344[_0xf061('0x20')](_0xcf5d2e)[_0xf061('0x22')](_0x54ef2f);}};}function respondWithFilteredResult(_0x49f865,_0x2db671){return function(_0x467a50){if(_0x467a50){var _0x28a94f=_0x467a50[_0xf061('0x23')],_0x3251a6=_0x2db671[_0xf061('0x24')],_0xd58a51=_0x2db671[_0xf061('0x24')]+_0x2db671[_0xf061('0x25')],_0x35fdbd;if(_0xd58a51>=_0x28a94f){_0xd58a51=_0x28a94f;_0x35fdbd=0xc8;}else{_0x35fdbd=0xce;}_0x49f865[_0xf061('0x20')](_0x35fdbd);return _0x49f865[_0xf061('0x26')]('Content-Range',_0x3251a6+'-'+_0xd58a51+'/'+_0x28a94f)[_0xf061('0x22')](_0x467a50);}return null;};}function patchUpdates(_0x335ee6){return function(_0x36de3a){try{jsonpatch[_0xf061('0x27')](_0x36de3a,_0x335ee6,!![]);}catch(_0x7baccc){return BPromise['reject'](_0x7baccc);}return _0x36de3a['save']();};}function saveUpdates(_0x4fc382,_0x4c2aeb){return function(_0x3d2730){if(_0x3d2730){return _0x3d2730['update'](_0x4fc382)[_0xf061('0x14')](function(_0x32d3e4){return _0x32d3e4;});}return null;};}function removeEntity(_0x5ba4ba,_0x4ff37f){return function(_0x19c929){if(_0x19c929){return _0x19c929[_0xf061('0x28')]()[_0xf061('0x14')](function(){_0x5ba4ba['status'](0xcc)['end']();});}};}function handleEntityNotFound(_0x8f11dd,_0x410f75){return function(_0x24d43a){if(!_0x24d43a){_0x8f11dd[_0xf061('0x1f')](0x194);}return _0x24d43a;};}function handleError(_0x43e83f,_0x58b3a0){_0x58b3a0=_0x58b3a0||0x1f4;return function(_0x1edf4){logger[_0xf061('0x1a')](_0x1edf4[_0xf061('0x29')]);if(_0x1edf4['name']){delete _0x1edf4[_0xf061('0x2a')];}_0x43e83f['status'](_0x58b3a0)[_0xf061('0x2b')](_0x1edf4);};}exports[_0xf061('0x2c')]=function(_0x13c8fc,_0x596bb7){var _0x36851b={},_0x531b53={},_0x4bb5f0={'count':0x0,'rows':[]};var _0x5a1f4e=_[_0xf061('0x2d')](db[_0xf061('0x2e')][_0xf061('0x2f')],function(_0x325135){return{'name':_0x325135[_0xf061('0x30')],'type':_0x325135[_0xf061('0x31')]['key']};});_0x531b53['model']=_[_0xf061('0x2d')](_0x5a1f4e,_0xf061('0x2a'));_0x531b53['query']=_[_0xf061('0x32')](_0x13c8fc[_0xf061('0x33')]);_0x531b53['filters']=_[_0xf061('0x34')](_0x531b53['model'],_0x531b53['query']);_0x36851b['attributes']=_[_0xf061('0x34')](_0x531b53[_0xf061('0x35')],qs[_0xf061('0x36')](_0x13c8fc[_0xf061('0x33')][_0xf061('0x36')]));_0x36851b['attributes']=_0x36851b[_0xf061('0x37')][_0xf061('0x38')]?_0x36851b[_0xf061('0x37')]:_0x531b53[_0xf061('0x35')];if(!_0x13c8fc[_0xf061('0x33')][_0xf061('0x39')](_0xf061('0x3a'))){_0x36851b[_0xf061('0x25')]=qs['limit'](_0x13c8fc[_0xf061('0x33')][_0xf061('0x25')]);_0x36851b['offset']=qs[_0xf061('0x24')](_0x13c8fc['query'][_0xf061('0x24')]);}_0x36851b[_0xf061('0x3b')]=qs[_0xf061('0x3c')](_0x13c8fc[_0xf061('0x33')][_0xf061('0x3c')]);_0x36851b['where']=qs['filters'](_[_0xf061('0x3d')](_0x13c8fc[_0xf061('0x33')],_0x531b53['filters']),_0x5a1f4e);if(_0x13c8fc['query'][_0xf061('0x3e')]){_0x36851b[_0xf061('0x3f')]=_['merge'](_0x36851b[_0xf061('0x3f')],{'$or':_[_0xf061('0x2d')](_0x5a1f4e,function(_0x7c3490){if(_0x7c3490[_0xf061('0x31')]!=='VIRTUAL'){var _0x52377c={};_0x52377c[_0x7c3490[_0xf061('0x2a')]]={'$like':'%'+_0x13c8fc[_0xf061('0x33')][_0xf061('0x3e')]+'%'};return _0x52377c;}})});}_0x36851b=_[_0xf061('0x40')]({},_0x36851b,_0x13c8fc[_0xf061('0x41')]);var _0x599804={'where':_0x36851b[_0xf061('0x3f')]};return db[_0xf061('0x2e')][_0xf061('0x23')](_0x599804)[_0xf061('0x14')](function(_0x1b35eb){_0x4bb5f0['count']=_0x1b35eb;if(_0x13c8fc[_0xf061('0x33')][_0xf061('0x42')]){_0x36851b[_0xf061('0x43')]=[{'all':!![]}];}return db[_0xf061('0x2e')][_0xf061('0x44')](_0x36851b);})[_0xf061('0x14')](function(_0x24c07c){_0x4bb5f0[_0xf061('0x45')]=_0x24c07c;return _0x4bb5f0;})[_0xf061('0x14')](respondWithFilteredResult(_0x596bb7,_0x36851b))['catch'](handleError(_0x596bb7,null));};exports[_0xf061('0x46')]=function(_0x2ed5af,_0x57f365){var _0x29031d={'raw':!![],'where':{'id':_0x2ed5af[_0xf061('0x47')]['id']}},_0x5eaafe={};_0x5eaafe[_0xf061('0x35')]=_['keys'](db[_0xf061('0x2e')]['rawAttributes']);_0x5eaafe[_0xf061('0x33')]=_[_0xf061('0x32')](_0x2ed5af[_0xf061('0x33')]);_0x5eaafe[_0xf061('0x48')]=_[_0xf061('0x34')](_0x5eaafe['model'],_0x5eaafe[_0xf061('0x33')]);_0x29031d[_0xf061('0x37')]=_[_0xf061('0x34')](_0x5eaafe['model'],qs['fields'](_0x2ed5af['query'][_0xf061('0x36')]));_0x29031d[_0xf061('0x37')]=_0x29031d['attributes'][_0xf061('0x38')]?_0x29031d[_0xf061('0x37')]:_0x5eaafe['model'];if(_0x2ed5af['query'][_0xf061('0x42')]){_0x29031d['include']=[{'all':!![]}];}_0x29031d=_[_0xf061('0x40')]({},_0x29031d,_0x2ed5af[_0xf061('0x41')]);return db[_0xf061('0x2e')][_0xf061('0x49')](_0x29031d)[_0xf061('0x14')](handleEntityNotFound(_0x57f365,null))[_0xf061('0x14')](respondWithResult(_0x57f365,null))[_0xf061('0x1e')](handleError(_0x57f365,null));};exports[_0xf061('0x4a')]=function(_0xd4bf72,_0x3ef934,_0xfbfb60){var _0x165611;return db[_0xf061('0x4b')][_0xf061('0x4c')](function(_0x1a5484){return db[_0xf061('0x2e')][_0xf061('0x4a')](_0xd4bf72[_0xf061('0x4d')],{'raw':!![]})[_0xf061('0x14')](function(_0x37f708){_0x165611=_0x37f708;return db[_0xf061('0x2e')][_0xf061('0x44')]({'where':{'type':_0xd4bf72[_0xf061('0x4d')]['type']},'raw':!![]});})[_0xf061('0x14')](function(_0x561c3c){if(_0x165611[_0xf061('0x31')][_0xf061('0x4e')]()==_0xf061('0x4f')){var _0x4823da=fs[_0xf061('0x50')](path[_0xf061('0x51')](config['root'],_0xf061('0x52')),_0xf061('0x53'));var _0x1cb4df=ejs[_0xf061('0x54')](_0x4823da,{'networks':_0x561c3c||[]});fs['writeFileSync']('/etc/asterisk/stun_xcally.conf',_0x1cb4df);return respondWithRpcPromise(_0xf061('0x55'),_0xf061('0x4a'),{'module':_0xf061('0x56')});}else if(_0x165611['type'][_0xf061('0x4e')]()==_0xf061('0x57')){var _0x558c31=fs['readFileSync'](path['join'](config[_0xf061('0x58')],'server/files/templates/turn_multiple.ejs'),_0xf061('0x53'));var _0x59a14e=ejs['render'](_0x558c31,{'networks':_0x561c3c||[]});fs[_0xf061('0x59')](_0xf061('0x5a'),_0x59a14e);return respondWithRpcPromise(_0xf061('0x55'),_0xf061('0x4a'),{'module':'res_stun_monitor.so'});}else{var _0x45c4c8=fs[_0xf061('0x50')](path[_0xf061('0x51')](config[_0xf061('0x58')],_0xf061('0x5b')),_0xf061('0x53'));var _0x2dbbf7=ejs['render'](_0x45c4c8,{'networks':_0x561c3c||[]});fs[_0xf061('0x59')](util['format'](_0xf061('0x5c'),_0xd4bf72[_0xf061('0x4d')][_0xf061('0x31')][_0xf061('0x5d')]()),_0x2dbbf7);return respondWithRpcPromise('Reload','create',{'module':_0xf061('0x5e')});}return null;})[_0xf061('0x14')](function(){return _0x165611;});})[_0xf061('0x14')](respondWithResult(_0x3ef934,0xc9))[_0xf061('0x1e')](handleError(_0x3ef934,null));};exports['update']=function(_0x27c2bb,_0x4be367,_0x581fa5){var _0x46acc6;return db[_0xf061('0x4b')][_0xf061('0x4c')](function(_0x438a84){return db[_0xf061('0x2e')]['find']({'where':{'id':_0x27c2bb['params']['id']}})['then'](handleEntityNotFound(_0x4be367,null))['then'](saveUpdates(_0x27c2bb[_0xf061('0x4d')],null))[_0xf061('0x14')](function(_0x15868d){if(_0x15868d){_0x46acc6=_0x15868d;return db[_0xf061('0x2e')][_0xf061('0x44')]({'where':{'type':_0x46acc6[_0xf061('0x31')]},'raw':!![]});}return null;})[_0xf061('0x14')](function(_0x15935c){if(_0x46acc6['type'][_0xf061('0x4e')]()==_0xf061('0x4f')){var _0x287161=fs[_0xf061('0x50')](path[_0xf061('0x51')](config['root'],_0xf061('0x52')),'utf8');var _0x22ad19=ejs['render'](_0x287161,{'networks':_0x15935c||[]});fs[_0xf061('0x59')](_0xf061('0x5f'),_0x22ad19);return respondWithRpcPromise(_0xf061('0x55'),'update',{'module':_0xf061('0x56')});}else if(_0x46acc6[_0xf061('0x31')][_0xf061('0x4e')]()==_0xf061('0x57')){var _0x5cd96c=fs[_0xf061('0x50')](path['join'](config[_0xf061('0x58')],_0xf061('0x60')),_0xf061('0x53'));var _0x101ffe=ejs[_0xf061('0x54')](_0x5cd96c,{'networks':_0x15935c||[]});fs[_0xf061('0x59')]('/etc/asterisk/turn_xcally.conf',_0x101ffe);return respondWithRpcPromise(_0xf061('0x55'),_0xf061('0x61'),{'module':_0xf061('0x56')});}else{var _0x595c92=fs[_0xf061('0x50')](path[_0xf061('0x51')](config[_0xf061('0x58')],'server/files/templates/network.ejs'),_0xf061('0x53'));var _0x5d9f2f=ejs['render'](_0x595c92,{'networks':_0x15935c||[]});fs[_0xf061('0x59')](util['format'](_0xf061('0x5c'),_0x27c2bb[_0xf061('0x4d')][_0xf061('0x31')][_0xf061('0x5d')]()),_0x5d9f2f);return respondWithRpcPromise('Reload','update',{'module':_0xf061('0x5e')});}return null;})[_0xf061('0x14')](function(_0x32a52c){if(_0x32a52c){return _0x46acc6;}return null;});})[_0xf061('0x14')](respondWithResult(_0x4be367,null))[_0xf061('0x1e')](handleError(_0x4be367,null));};exports[_0xf061('0x28')]=function(_0x85eda8,_0x662ad9,_0x224fc4){var _0x5565e9;return db[_0xf061('0x2e')][_0xf061('0x49')]({'where':{'id':_0x85eda8['params']['id']}})[_0xf061('0x14')](function(_0x3b2175){_0x5565e9=_0x3b2175;return _0x3b2175;})[_0xf061('0x14')](handleEntityNotFound(_0x662ad9,null))[_0xf061('0x14')](removeEntity(_0x662ad9,null))['then'](function(){if(_0x5565e9){return db[_0xf061('0x2e')][_0xf061('0x44')]({'where':{'type':_0x5565e9[_0xf061('0x31')]},'raw':!![]});}})[_0xf061('0x14')](function(_0x2fa20d){if(_0x5565e9['type'][_0xf061('0x4e')]()=='STUN'){var _0x26f43d=fs[_0xf061('0x50')](path['join'](config[_0xf061('0x58')],_0xf061('0x52')),'utf8');var _0x4053d6=ejs[_0xf061('0x54')](_0x26f43d,{'networks':_0x2fa20d||[]});fs[_0xf061('0x59')]('/etc/asterisk/stun_xcally.conf',_0x4053d6);return respondWithRpcPromise(_0xf061('0x55'),'destroy',{'module':_0xf061('0x56')});}else if(_0x5565e9['type'][_0xf061('0x4e')]()==_0xf061('0x57')){var _0x436122=fs[_0xf061('0x50')](path[_0xf061('0x51')](config[_0xf061('0x58')],_0xf061('0x60')),_0xf061('0x53'));var _0x26647d=ejs[_0xf061('0x54')](_0x436122,{'networks':_0x2fa20d||[]});fs[_0xf061('0x59')](_0xf061('0x5a'),_0x26647d);return respondWithRpcPromise(_0xf061('0x55'),_0xf061('0x28'),{'module':_0xf061('0x56')});}else{var _0x5f29f8=fs[_0xf061('0x50')](path[_0xf061('0x51')](config['root'],_0xf061('0x5b')),_0xf061('0x53'));var _0x16e9f7=ejs[_0xf061('0x54')](_0x5f29f8,{'networks':_0x2fa20d||[]});fs[_0xf061('0x59')](util['format'](_0xf061('0x5c'),_0x85eda8['body'][_0xf061('0x31')][_0xf061('0x5d')]()),_0x16e9f7);return respondWithRpcPromise(_0xf061('0x55'),_0xf061('0x28'),{'module':_0xf061('0x5e')});}return null;})[_0xf061('0x1e')](handleError(_0x662ad9,null));};
\ No newline at end of file
+var _0xf3b0=['format','/etc/asterisk/sip_xcally_%s.conf','chan_sip.so','util','path','ejs','../../components/parsers/qs','../../config/logger','../../mysqldb','client','http','request','then','info','Network,\x20%s,\x20%s','request\x20sent','debug','stringify','error','code','message','result','catch','status','offset','undefined','count','set','json','update','destroy','sendStatus','stack','name','map','Network','rawAttributes','fieldName','key','model','query','keys','intersection','fields','attributes','hasOwnProperty','nolimit','limit','order','sort','where','filters','pick','filter','merge','type','options','include','findAll','rows','show','params','length','includeAll','find','create','body','toUpperCase','STUN','readFileSync','join','root','server/files/templates/stun_multiple.ejs','utf8','render','writeFileSync','/etc/asterisk/stun_xcally.conf','res_stun_monitor.so','TURN','server/files/templates/turn_multiple.ejs','Reload','server/files/templates/network.ejs'];(function(_0x287c23,_0xc81658){var _0x149577=function(_0x37073d){while(--_0x37073d){_0x287c23['push'](_0x287c23['shift']());}};_0x149577(++_0xc81658);}(_0xf3b0,0xa7));var _0x0f3b=function(_0x1e48d3,_0x5d8c43){_0x1e48d3=_0x1e48d3-0x0;var _0x2852b1=_0xf3b0[_0x1e48d3];return _0x2852b1;};'use strict';var util=require(_0x0f3b('0x0'));var path=require(_0x0f3b('0x1'));var ejs=require(_0x0f3b('0x2'));var fs=require('fs');var _=require('lodash');var qs=require(_0x0f3b('0x3'));var logger=require(_0x0f3b('0x4'))('api');var config=require('../../config/environment');var db=require(_0x0f3b('0x5'))['db'];var jayson=require('jayson/promise');var client=jayson[_0x0f3b('0x6')][_0x0f3b('0x7')]({'port':0x232a});function respondWithRpcPromise(_0x4d0496,_0x48beb0,_0x51d16b,_0x35163c){return new Promise(function(_0x2e1711,_0x38f093){var _0x27a7bc=_0x35163c||client;return _0x27a7bc[_0x0f3b('0x8')](_0x4d0496,_0x51d16b)[_0x0f3b('0x9')](function(_0x4bd338){logger[_0x0f3b('0xa')](_0x0f3b('0xb'),_0x48beb0,_0x0f3b('0xc'));logger[_0x0f3b('0xd')]('Network,\x20%s,\x20%s,\x20%s',_0x48beb0,_0x0f3b('0xc'),JSON[_0x0f3b('0xe')](_0x4bd338));if(_0x4bd338[_0x0f3b('0xf')]){if(_0x4bd338[_0x0f3b('0xf')][_0x0f3b('0x10')]===0x1f4){logger[_0x0f3b('0xf')](_0x0f3b('0xb'),_0x48beb0,_0x4bd338['error'][_0x0f3b('0x11')]);return _0x38f093(_0x4bd338['error'][_0x0f3b('0x11')]);}logger[_0x0f3b('0xf')]('Network,\x20%s,\x20%s',_0x48beb0,_0x4bd338[_0x0f3b('0xf')][_0x0f3b('0x11')]);return _0x2e1711(_0x4bd338[_0x0f3b('0xf')]['message']);}else{logger[_0x0f3b('0xa')](_0x0f3b('0xb'),_0x48beb0,_0x0f3b('0xc'));_0x2e1711(_0x4bd338[_0x0f3b('0x12')][_0x0f3b('0x11')]);}})[_0x0f3b('0x13')](function(_0x453221){logger[_0x0f3b('0xf')]('Network,\x20%s,\x20%s',_0x48beb0,_0x453221);_0x38f093(_0x453221);});});}function respondWithResult(_0x3956b2,_0x36753e){_0x36753e=_0x36753e||0xc8;return function(_0x516a52){if(_0x516a52){return _0x3956b2[_0x0f3b('0x14')](_0x36753e)['json'](_0x516a52);}};}function respondWithFilteredResult(_0x213195,_0xde85bb){return function(_0x2a1001){if(_0x2a1001){var _0x5f3c77=typeof _0xde85bb[_0x0f3b('0x15')]===_0x0f3b('0x16')&&typeof _0xde85bb['limit']===_0x0f3b('0x16');var _0x240e74=_0x2a1001[_0x0f3b('0x17')];var _0x294df5=_0x5f3c77?0x0:_0xde85bb[_0x0f3b('0x15')];var _0x105947=_0x5f3c77?_0x2a1001[_0x0f3b('0x17')]:_0xde85bb[_0x0f3b('0x15')]+_0xde85bb['limit'];var _0x4d0350;if(_0x105947>=_0x240e74){_0x105947=_0x240e74;_0x4d0350=0xc8;}else{_0x4d0350=0xce;}_0x213195['status'](_0x4d0350);return _0x213195[_0x0f3b('0x18')]('Content-Range',_0x294df5+'-'+_0x105947+'/'+_0x240e74)[_0x0f3b('0x19')](_0x2a1001);}return null;};}function saveUpdates(_0x11ef38){return function(_0x48e31e){if(_0x48e31e){return _0x48e31e[_0x0f3b('0x1a')](_0x11ef38)[_0x0f3b('0x9')](function(_0x545663){return _0x545663;});}return null;};}function removeEntity(_0x431780){return function(_0x1d81be){if(_0x1d81be){return _0x1d81be[_0x0f3b('0x1b')]()[_0x0f3b('0x9')](function(){_0x431780[_0x0f3b('0x14')](0xcc)['end']();});}};}function handleEntityNotFound(_0x54888c){return function(_0x138fc4){if(!_0x138fc4){_0x54888c[_0x0f3b('0x1c')](0x194);}return _0x138fc4;};}function handleError(_0x5efef4,_0xc1ea4a){_0xc1ea4a=_0xc1ea4a||0x1f4;return function(_0x35cf7f){logger['error'](_0x35cf7f[_0x0f3b('0x1d')]);if(_0x35cf7f[_0x0f3b('0x1e')]){delete _0x35cf7f[_0x0f3b('0x1e')];}_0x5efef4['status'](_0xc1ea4a)['send'](_0x35cf7f);};}exports['index']=function(_0x5b5320,_0x1e0511){var _0x45cf33={},_0x2e2a0d={},_0x1b9aea={'count':0x0,'rows':[]};var _0x2aaf98=_[_0x0f3b('0x1f')](db[_0x0f3b('0x20')][_0x0f3b('0x21')],function(_0x52584b){return{'name':_0x52584b[_0x0f3b('0x22')],'type':_0x52584b['type'][_0x0f3b('0x23')]};});_0x2e2a0d[_0x0f3b('0x24')]=_[_0x0f3b('0x1f')](_0x2aaf98,_0x0f3b('0x1e'));_0x2e2a0d[_0x0f3b('0x25')]=_[_0x0f3b('0x26')](_0x5b5320[_0x0f3b('0x25')]);_0x2e2a0d['filters']=_[_0x0f3b('0x27')](_0x2e2a0d[_0x0f3b('0x24')],_0x2e2a0d[_0x0f3b('0x25')]);_0x45cf33['attributes']=_[_0x0f3b('0x27')](_0x2e2a0d[_0x0f3b('0x24')],qs[_0x0f3b('0x28')](_0x5b5320[_0x0f3b('0x25')][_0x0f3b('0x28')]));_0x45cf33[_0x0f3b('0x29')]=_0x45cf33[_0x0f3b('0x29')]['length']?_0x45cf33['attributes']:_0x2e2a0d[_0x0f3b('0x24')];if(!_0x5b5320['query'][_0x0f3b('0x2a')](_0x0f3b('0x2b'))){_0x45cf33['limit']=qs[_0x0f3b('0x2c')](_0x5b5320[_0x0f3b('0x25')][_0x0f3b('0x2c')]);_0x45cf33['offset']=qs[_0x0f3b('0x15')](_0x5b5320[_0x0f3b('0x25')][_0x0f3b('0x15')]);}_0x45cf33[_0x0f3b('0x2d')]=qs['sort'](_0x5b5320[_0x0f3b('0x25')][_0x0f3b('0x2e')]);_0x45cf33[_0x0f3b('0x2f')]=qs[_0x0f3b('0x30')](_[_0x0f3b('0x31')](_0x5b5320[_0x0f3b('0x25')],_0x2e2a0d['filters']),_0x2aaf98);if(_0x5b5320[_0x0f3b('0x25')][_0x0f3b('0x32')]){_0x45cf33[_0x0f3b('0x2f')]=_[_0x0f3b('0x33')](_0x45cf33[_0x0f3b('0x2f')],{'$or':_[_0x0f3b('0x1f')](_0x2aaf98,function(_0x3fdf06){if(_0x3fdf06[_0x0f3b('0x34')]!=='VIRTUAL'){var _0x9076f1={};_0x9076f1[_0x3fdf06[_0x0f3b('0x1e')]]={'$like':'%'+_0x5b5320['query'][_0x0f3b('0x32')]+'%'};return _0x9076f1;}})});}_0x45cf33=_['merge']({},_0x45cf33,_0x5b5320[_0x0f3b('0x35')]);var _0x575479={'where':_0x45cf33['where']};return db[_0x0f3b('0x20')]['count'](_0x575479)[_0x0f3b('0x9')](function(_0x473c93){_0x1b9aea['count']=_0x473c93;if(_0x5b5320['query']['includeAll']){_0x45cf33[_0x0f3b('0x36')]=[{'all':!![]}];}return db[_0x0f3b('0x20')][_0x0f3b('0x37')](_0x45cf33);})[_0x0f3b('0x9')](function(_0x45906f){_0x1b9aea[_0x0f3b('0x38')]=_0x45906f;return _0x1b9aea;})['then'](respondWithFilteredResult(_0x1e0511,_0x45cf33))[_0x0f3b('0x13')](handleError(_0x1e0511,null));};exports[_0x0f3b('0x39')]=function(_0x5b25c2,_0x578918){var _0x25c033={'raw':!![],'where':{'id':_0x5b25c2[_0x0f3b('0x3a')]['id']}},_0x5563f7={};_0x5563f7['model']=_['keys'](db[_0x0f3b('0x20')][_0x0f3b('0x21')]);_0x5563f7['query']=_[_0x0f3b('0x26')](_0x5b25c2[_0x0f3b('0x25')]);_0x5563f7[_0x0f3b('0x30')]=_['intersection'](_0x5563f7[_0x0f3b('0x24')],_0x5563f7['query']);_0x25c033['attributes']=_[_0x0f3b('0x27')](_0x5563f7[_0x0f3b('0x24')],qs['fields'](_0x5b25c2[_0x0f3b('0x25')][_0x0f3b('0x28')]));_0x25c033[_0x0f3b('0x29')]=_0x25c033[_0x0f3b('0x29')][_0x0f3b('0x3b')]?_0x25c033[_0x0f3b('0x29')]:_0x5563f7[_0x0f3b('0x24')];if(_0x5b25c2[_0x0f3b('0x25')][_0x0f3b('0x3c')]){_0x25c033['include']=[{'all':!![]}];}_0x25c033=_[_0x0f3b('0x33')]({},_0x25c033,_0x5b25c2[_0x0f3b('0x35')]);return db[_0x0f3b('0x20')][_0x0f3b('0x3d')](_0x25c033)[_0x0f3b('0x9')](handleEntityNotFound(_0x578918,null))[_0x0f3b('0x9')](respondWithResult(_0x578918,null))[_0x0f3b('0x13')](handleError(_0x578918,null));};exports[_0x0f3b('0x3e')]=function(_0x5a1cb7,_0x3174a9){var _0xfbe068;return db[_0x0f3b('0x20')][_0x0f3b('0x3e')](_0x5a1cb7['body'],{'raw':!![]})[_0x0f3b('0x9')](function(_0x54af1c){_0xfbe068=_0x54af1c;return db[_0x0f3b('0x20')][_0x0f3b('0x37')]({'where':{'type':_0x5a1cb7[_0x0f3b('0x3f')]['type']},'raw':!![]});})[_0x0f3b('0x9')](function(_0x150ac4){if(_0xfbe068[_0x0f3b('0x34')][_0x0f3b('0x40')]()==_0x0f3b('0x41')){var _0x18b167=fs[_0x0f3b('0x42')](path[_0x0f3b('0x43')](config[_0x0f3b('0x44')],_0x0f3b('0x45')),_0x0f3b('0x46'));var _0x4c1ed1=ejs[_0x0f3b('0x47')](_0x18b167,{'networks':_0x150ac4||[]});fs[_0x0f3b('0x48')](_0x0f3b('0x49'),_0x4c1ed1);return respondWithRpcPromise('Reload',_0x0f3b('0x3e'),{'module':_0x0f3b('0x4a')});}else if(_0xfbe068[_0x0f3b('0x34')][_0x0f3b('0x40')]()==_0x0f3b('0x4b')){var _0x3dca87=fs['readFileSync'](path[_0x0f3b('0x43')](config['root'],_0x0f3b('0x4c')),_0x0f3b('0x46'));var _0x344742=ejs[_0x0f3b('0x47')](_0x3dca87,{'networks':_0x150ac4||[]});fs[_0x0f3b('0x48')]('/etc/asterisk/turn_xcally.conf',_0x344742);return respondWithRpcPromise(_0x0f3b('0x4d'),_0x0f3b('0x3e'),{'module':'res_stun_monitor.so'});}else{var _0x3232f8=fs[_0x0f3b('0x42')](path[_0x0f3b('0x43')](config['root'],_0x0f3b('0x4e')),_0x0f3b('0x46'));var _0x475b1b=ejs[_0x0f3b('0x47')](_0x3232f8,{'networks':_0x150ac4||[]});fs[_0x0f3b('0x48')](util[_0x0f3b('0x4f')](_0x0f3b('0x50'),_0x5a1cb7[_0x0f3b('0x3f')][_0x0f3b('0x34')]['toLowerCase']()),_0x475b1b);return respondWithRpcPromise('Reload',_0x0f3b('0x3e'),{'module':_0x0f3b('0x51')});}})[_0x0f3b('0x9')](function(){return _0xfbe068;})[_0x0f3b('0x9')](respondWithResult(_0x3174a9,0xc9))['catch'](handleError(_0x3174a9,null));};exports[_0x0f3b('0x1a')]=function(_0x21ec7a,_0x4737f1){var _0x4c3978;return db['Network'][_0x0f3b('0x3d')]({'where':{'id':_0x21ec7a['params']['id']}})[_0x0f3b('0x9')](handleEntityNotFound(_0x4737f1,null))[_0x0f3b('0x9')](saveUpdates(_0x21ec7a[_0x0f3b('0x3f')],null))['then'](function(_0x36da5c){if(_0x36da5c){_0x4c3978=_0x36da5c;return db[_0x0f3b('0x20')][_0x0f3b('0x37')]({'where':{'type':_0x4c3978['type']},'raw':!![]});}return null;})['then'](function(_0xa4df4e){if(_0x4c3978['type'][_0x0f3b('0x40')]()==_0x0f3b('0x41')){var _0x4fb86f=fs[_0x0f3b('0x42')](path['join'](config[_0x0f3b('0x44')],'server/files/templates/stun_multiple.ejs'),_0x0f3b('0x46'));var _0x4c972b=ejs[_0x0f3b('0x47')](_0x4fb86f,{'networks':_0xa4df4e||[]});fs[_0x0f3b('0x48')]('/etc/asterisk/stun_xcally.conf',_0x4c972b);return respondWithRpcPromise(_0x0f3b('0x4d'),'update',{'module':_0x0f3b('0x4a')});}else if(_0x4c3978[_0x0f3b('0x34')][_0x0f3b('0x40')]()==_0x0f3b('0x4b')){var _0x27be17=fs[_0x0f3b('0x42')](path['join'](config[_0x0f3b('0x44')],_0x0f3b('0x4c')),_0x0f3b('0x46'));var _0x52d22d=ejs['render'](_0x27be17,{'networks':_0xa4df4e||[]});fs['writeFileSync']('/etc/asterisk/turn_xcally.conf',_0x52d22d);return respondWithRpcPromise(_0x0f3b('0x4d'),_0x0f3b('0x1a'),{'module':'res_stun_monitor.so'});}else{var _0x52d519=fs['readFileSync'](path[_0x0f3b('0x43')](config[_0x0f3b('0x44')],_0x0f3b('0x4e')),_0x0f3b('0x46'));var _0x41e173=ejs[_0x0f3b('0x47')](_0x52d519,{'networks':_0xa4df4e||[]});fs[_0x0f3b('0x48')](util[_0x0f3b('0x4f')]('/etc/asterisk/sip_xcally_%s.conf',_0x21ec7a[_0x0f3b('0x3f')][_0x0f3b('0x34')]['toLowerCase']()),_0x41e173);return respondWithRpcPromise(_0x0f3b('0x4d'),_0x0f3b('0x1a'),{'module':'chan_sip.so'});}})[_0x0f3b('0x9')](function(_0x4abf6b){if(_0x4abf6b){return _0x4c3978;}return null;})[_0x0f3b('0x9')](respondWithResult(_0x4737f1,null))['catch'](handleError(_0x4737f1,null));};exports[_0x0f3b('0x1b')]=function(_0x9aeab4,_0x17bfee){var _0x57f22e;return db['Network']['find']({'where':{'id':_0x9aeab4[_0x0f3b('0x3a')]['id']}})[_0x0f3b('0x9')](function(_0x4a9f25){_0x57f22e=_0x4a9f25;return _0x4a9f25;})[_0x0f3b('0x9')](handleEntityNotFound(_0x17bfee,null))[_0x0f3b('0x9')](removeEntity(_0x17bfee,null))['then'](function(){if(_0x57f22e){return db[_0x0f3b('0x20')][_0x0f3b('0x37')]({'where':{'type':_0x57f22e[_0x0f3b('0x34')]},'raw':!![]});}})[_0x0f3b('0x9')](function(_0x2a8093){if(_0x57f22e['type'][_0x0f3b('0x40')]()==_0x0f3b('0x41')){var _0x133651=fs[_0x0f3b('0x42')](path[_0x0f3b('0x43')](config[_0x0f3b('0x44')],'server/files/templates/stun_multiple.ejs'),'utf8');var _0x23f1b0=ejs[_0x0f3b('0x47')](_0x133651,{'networks':_0x2a8093||[]});fs[_0x0f3b('0x48')]('/etc/asterisk/stun_xcally.conf',_0x23f1b0);return respondWithRpcPromise(_0x0f3b('0x4d'),'destroy',{'module':_0x0f3b('0x4a')});}else if(_0x57f22e['type'][_0x0f3b('0x40')]()=='TURN'){var _0x5dbcbc=fs[_0x0f3b('0x42')](path[_0x0f3b('0x43')](config[_0x0f3b('0x44')],_0x0f3b('0x4c')),_0x0f3b('0x46'));var _0x15ab31=ejs[_0x0f3b('0x47')](_0x5dbcbc,{'networks':_0x2a8093||[]});fs[_0x0f3b('0x48')]('/etc/asterisk/turn_xcally.conf',_0x15ab31);return respondWithRpcPromise(_0x0f3b('0x4d'),_0x0f3b('0x1b'),{'module':_0x0f3b('0x4a')});}else{var _0x5da1c9=fs[_0x0f3b('0x42')](path[_0x0f3b('0x43')](config[_0x0f3b('0x44')],'server/files/templates/network.ejs'),'utf8');var _0x2b5515=ejs[_0x0f3b('0x47')](_0x5da1c9,{'networks':_0x2a8093||[]});fs[_0x0f3b('0x48')](util['format'](_0x0f3b('0x50'),_0x57f22e[_0x0f3b('0x34')]['toLowerCase']()),_0x2b5515);return respondWithRpcPromise(_0x0f3b('0x4d'),_0x0f3b('0x1b'),{'module':_0x0f3b('0x51')});}})[_0x0f3b('0x13')](handleError(_0x17bfee,null));};
\ No newline at end of file