Built motion from commit 43538d75.|2.5.35
[motion2.git] / server / api / network / network.controller.js
index af3e990..26a8c57 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xb941=['root','server/files/templates/stun_multiple.ejs','render','writeFileSync','Reload','res_stun_monitor.so','utf8','format','/etc/asterisk/sip_xcally_%s.conf','toLowerCase','chan_sip.so','findAll','/etc/asterisk/stun_xcally.conf','TURN','server/files/templates/turn_multiple.ejs','/etc/asterisk/turn_xcally.conf','destroy','STUN','eml-format','rimraf','zip-dir','request-promise','moment','util','path','sox','to-csv','ejs','fs-extra','squel','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','jayson/promise','client','http','request','info','debug','request\x20sent','stringify','error','code','Network,\x20%s,\x20%s','message','result','catch','sendStatus','status','end','json','offset','limit','undefined','count','Content-Range','reject','save','update','stack','name','send','index','map','fieldName','type','key','model','keys','query','intersection','attributes','fields','length','nolimit','order','sort','filters','filter','merge','where','VIRTUAL','options','Network','then','include','show','params','includeAll','find','create','sequelize','transaction','body','toUpperCase','readFileSync','join'];(function(_0x1ee4c6,_0x4a13a7){var _0x57f271=function(_0xa6d22a){while(--_0xa6d22a){_0x1ee4c6['push'](_0x1ee4c6['shift']());}};_0x57f271(++_0x4a13a7);}(_0xb941,0x7e));var _0x1b94=function(_0xe04111,_0x554f5d){_0xe04111=_0xe04111-0x0;var _0x146fbb=_0xb941[_0xe04111];return _0x146fbb;};'use strict';var emlformat=require(_0x1b94('0x0'));var rimraf=require(_0x1b94('0x1'));var zipdir=require(_0x1b94('0x2'));var jsonpatch=require('fast-json-patch');var rp=require(_0x1b94('0x3'));var moment=require(_0x1b94('0x4'));var BPromise=require('bluebird');var Mustache=require('mustache');var util=require(_0x1b94('0x5'));var path=require(_0x1b94('0x6'));var sox=require(_0x1b94('0x7'));var csv=require(_0x1b94('0x8'));var ejs=require(_0x1b94('0x9'));var fs=require('fs');var fs_extra=require(_0x1b94('0xa'));var _=require('lodash');var squel=require(_0x1b94('0xb'));var crypto=require('crypto');var jsforce=require('jsforce');var deskjs=require(_0x1b94('0xc'));var toCsv=require(_0x1b94('0x8'));var querystring=require(_0x1b94('0xd'));var Papa=require(_0x1b94('0xe'));var Redis=require(_0x1b94('0xf'));var authService=require(_0x1b94('0x10'));var qs=require(_0x1b94('0x11'));var as=require(_0x1b94('0x12'));var hardwareService=require(_0x1b94('0x13'));var logger=require(_0x1b94('0x14'))(_0x1b94('0x15'));var utils=require(_0x1b94('0x16'));var config=require(_0x1b94('0x17'));var licenseUtil=require(_0x1b94('0x18'));var db=require(_0x1b94('0x19'))['db'];var jayson=require(_0x1b94('0x1a'));var client=jayson[_0x1b94('0x1b')][_0x1b94('0x1c')]({'port':0x232a});function respondWithRpcPromise(_0x2ead40,_0x4b1238,_0x3ae39e,_0x58c24b){return new BPromise(function(_0x38ee6e,_0x26dcd1){var _0x43d551=_0x58c24b||client;return _0x43d551[_0x1b94('0x1d')](_0x2ead40,_0x3ae39e)['then'](function(_0x12d44a){logger[_0x1b94('0x1e')]('Network,\x20%s,\x20%s',_0x4b1238,'request\x20sent');logger[_0x1b94('0x1f')]('Network,\x20%s,\x20%s,\x20%s',_0x4b1238,_0x1b94('0x20'),JSON[_0x1b94('0x21')](_0x12d44a));if(_0x12d44a[_0x1b94('0x22')]){if(_0x12d44a[_0x1b94('0x22')][_0x1b94('0x23')]===0x1f4){logger[_0x1b94('0x22')](_0x1b94('0x24'),_0x4b1238,_0x12d44a[_0x1b94('0x22')]['message']);return _0x26dcd1(_0x12d44a[_0x1b94('0x22')]['message']);}logger[_0x1b94('0x22')]('Network,\x20%s,\x20%s',_0x4b1238,_0x12d44a[_0x1b94('0x22')][_0x1b94('0x25')]);return _0x38ee6e(_0x12d44a[_0x1b94('0x22')]['message']);}else{logger['info'](_0x1b94('0x24'),_0x4b1238,_0x1b94('0x20'));_0x38ee6e(_0x12d44a[_0x1b94('0x26')]['message']);}})[_0x1b94('0x27')](function(_0x50b1e1){logger['error']('Network,\x20%s,\x20%s',_0x4b1238,_0x50b1e1);_0x26dcd1(_0x50b1e1);});});}function respondWithStatusCode(_0x30b2ba,_0x16a879){_0x16a879=_0x16a879||0xcc;return function(_0x141172){if(_0x141172){return _0x30b2ba[_0x1b94('0x28')](_0x16a879);}return _0x30b2ba[_0x1b94('0x29')](_0x16a879)[_0x1b94('0x2a')]();};}function respondWithResult(_0x2cc7e2,_0x18a652){_0x18a652=_0x18a652||0xc8;return function(_0x59c4a7){if(_0x59c4a7){return _0x2cc7e2[_0x1b94('0x29')](_0x18a652)[_0x1b94('0x2b')](_0x59c4a7);}};}function respondWithFilteredResult(_0x21aae6,_0x3dbeac){return function(_0x264365){if(_0x264365){var _0x54841d=typeof _0x3dbeac[_0x1b94('0x2c')]==='undefined'&&typeof _0x3dbeac[_0x1b94('0x2d')]===_0x1b94('0x2e');var _0x390c0b=_0x264365[_0x1b94('0x2f')];var _0xeca00b=_0x54841d?0x0:_0x3dbeac[_0x1b94('0x2c')];var _0x420909=_0x54841d?_0x264365[_0x1b94('0x2f')]:_0x3dbeac[_0x1b94('0x2c')]+_0x3dbeac[_0x1b94('0x2d')];var _0x557cb3;if(_0x420909>=_0x390c0b){_0x420909=_0x390c0b;_0x557cb3=0xc8;}else{_0x557cb3=0xce;}_0x21aae6[_0x1b94('0x29')](_0x557cb3);return _0x21aae6['set'](_0x1b94('0x30'),_0xeca00b+'-'+_0x420909+'/'+_0x390c0b)[_0x1b94('0x2b')](_0x264365);}return null;};}function patchUpdates(_0x3247e7){return function(_0x5f1349){try{jsonpatch['apply'](_0x5f1349,_0x3247e7,!![]);}catch(_0x2d97e1){return BPromise[_0x1b94('0x31')](_0x2d97e1);}return _0x5f1349[_0x1b94('0x32')]();};}function saveUpdates(_0xb80476,_0x20b953){return function(_0x19cfa4){if(_0x19cfa4){return _0x19cfa4[_0x1b94('0x33')](_0xb80476)['then'](function(_0x1435df){return _0x1435df;});}return null;};}function removeEntity(_0x57a5eb,_0x38eff2){return function(_0x402384){if(_0x402384){return _0x402384['destroy']()['then'](function(){_0x57a5eb[_0x1b94('0x29')](0xcc)[_0x1b94('0x2a')]();});}};}function handleEntityNotFound(_0x239f5c,_0x5e399b){return function(_0x450767){if(!_0x450767){_0x239f5c['sendStatus'](0x194);}return _0x450767;};}function handleError(_0x39fa4e,_0xd820b8){_0xd820b8=_0xd820b8||0x1f4;return function(_0x183431){logger[_0x1b94('0x22')](_0x183431[_0x1b94('0x34')]);if(_0x183431[_0x1b94('0x35')]){delete _0x183431['name'];}_0x39fa4e['status'](_0xd820b8)[_0x1b94('0x36')](_0x183431);};}exports[_0x1b94('0x37')]=function(_0x3a93b8,_0x411274){var _0x30c575={},_0x3ee77a={},_0x2f7df3={'count':0x0,'rows':[]};var _0x1708c1=_[_0x1b94('0x38')](db['Network']['rawAttributes'],function(_0x2c588d){return{'name':_0x2c588d[_0x1b94('0x39')],'type':_0x2c588d[_0x1b94('0x3a')][_0x1b94('0x3b')]};});_0x3ee77a[_0x1b94('0x3c')]=_[_0x1b94('0x38')](_0x1708c1,_0x1b94('0x35'));_0x3ee77a['query']=_[_0x1b94('0x3d')](_0x3a93b8[_0x1b94('0x3e')]);_0x3ee77a['filters']=_[_0x1b94('0x3f')](_0x3ee77a[_0x1b94('0x3c')],_0x3ee77a['query']);_0x30c575[_0x1b94('0x40')]=_['intersection'](_0x3ee77a[_0x1b94('0x3c')],qs[_0x1b94('0x41')](_0x3a93b8['query']['fields']));_0x30c575[_0x1b94('0x40')]=_0x30c575[_0x1b94('0x40')][_0x1b94('0x42')]?_0x30c575['attributes']:_0x3ee77a[_0x1b94('0x3c')];if(!_0x3a93b8[_0x1b94('0x3e')]['hasOwnProperty'](_0x1b94('0x43'))){_0x30c575[_0x1b94('0x2d')]=qs['limit'](_0x3a93b8[_0x1b94('0x3e')]['limit']);_0x30c575[_0x1b94('0x2c')]=qs[_0x1b94('0x2c')](_0x3a93b8[_0x1b94('0x3e')][_0x1b94('0x2c')]);}_0x30c575[_0x1b94('0x44')]=qs['sort'](_0x3a93b8[_0x1b94('0x3e')][_0x1b94('0x45')]);_0x30c575['where']=qs[_0x1b94('0x46')](_['pick'](_0x3a93b8['query'],_0x3ee77a['filters']),_0x1708c1);if(_0x3a93b8[_0x1b94('0x3e')][_0x1b94('0x47')]){_0x30c575['where']=_[_0x1b94('0x48')](_0x30c575[_0x1b94('0x49')],{'$or':_['map'](_0x1708c1,function(_0x5a7342){if(_0x5a7342[_0x1b94('0x3a')]!==_0x1b94('0x4a')){var _0x327a32={};_0x327a32[_0x5a7342[_0x1b94('0x35')]]={'$like':'%'+_0x3a93b8[_0x1b94('0x3e')][_0x1b94('0x47')]+'%'};return _0x327a32;}})});}_0x30c575=_[_0x1b94('0x48')]({},_0x30c575,_0x3a93b8[_0x1b94('0x4b')]);var _0x3b6b44={'where':_0x30c575['where']};return db[_0x1b94('0x4c')][_0x1b94('0x2f')](_0x3b6b44)[_0x1b94('0x4d')](function(_0x529a2d){_0x2f7df3[_0x1b94('0x2f')]=_0x529a2d;if(_0x3a93b8[_0x1b94('0x3e')]['includeAll']){_0x30c575[_0x1b94('0x4e')]=[{'all':!![]}];}return db[_0x1b94('0x4c')]['findAll'](_0x30c575);})['then'](function(_0x35602){_0x2f7df3['rows']=_0x35602;return _0x2f7df3;})[_0x1b94('0x4d')](respondWithFilteredResult(_0x411274,_0x30c575))[_0x1b94('0x27')](handleError(_0x411274,null));};exports[_0x1b94('0x4f')]=function(_0x3d8b41,_0x1d4a03){var _0x336ffa={'raw':!![],'where':{'id':_0x3d8b41[_0x1b94('0x50')]['id']}},_0x5a1c19={};_0x5a1c19[_0x1b94('0x3c')]=_['keys'](db[_0x1b94('0x4c')]['rawAttributes']);_0x5a1c19[_0x1b94('0x3e')]=_[_0x1b94('0x3d')](_0x3d8b41[_0x1b94('0x3e')]);_0x5a1c19[_0x1b94('0x46')]=_['intersection'](_0x5a1c19[_0x1b94('0x3c')],_0x5a1c19[_0x1b94('0x3e')]);_0x336ffa[_0x1b94('0x40')]=_[_0x1b94('0x3f')](_0x5a1c19[_0x1b94('0x3c')],qs[_0x1b94('0x41')](_0x3d8b41[_0x1b94('0x3e')][_0x1b94('0x41')]));_0x336ffa[_0x1b94('0x40')]=_0x336ffa[_0x1b94('0x40')][_0x1b94('0x42')]?_0x336ffa['attributes']:_0x5a1c19[_0x1b94('0x3c')];if(_0x3d8b41[_0x1b94('0x3e')][_0x1b94('0x51')]){_0x336ffa[_0x1b94('0x4e')]=[{'all':!![]}];}_0x336ffa=_[_0x1b94('0x48')]({},_0x336ffa,_0x3d8b41[_0x1b94('0x4b')]);return db[_0x1b94('0x4c')][_0x1b94('0x52')](_0x336ffa)[_0x1b94('0x4d')](handleEntityNotFound(_0x1d4a03,null))[_0x1b94('0x4d')](respondWithResult(_0x1d4a03,null))[_0x1b94('0x27')](handleError(_0x1d4a03,null));};exports[_0x1b94('0x53')]=function(_0x5cfe10,_0x1805a2,_0x1fd952){var _0x1aff60;return db[_0x1b94('0x54')][_0x1b94('0x55')](function(_0x1d3c99){return db[_0x1b94('0x4c')][_0x1b94('0x53')](_0x5cfe10[_0x1b94('0x56')],{'raw':!![]})[_0x1b94('0x4d')](function(_0x44efdb){_0x1aff60=_0x44efdb;return db['Network']['findAll']({'where':{'type':_0x5cfe10[_0x1b94('0x56')]['type']},'raw':!![]});})[_0x1b94('0x4d')](function(_0x47a140){if(_0x1aff60[_0x1b94('0x3a')][_0x1b94('0x57')]()=='STUN'){var _0x539a6b=fs[_0x1b94('0x58')](path[_0x1b94('0x59')](config[_0x1b94('0x5a')],_0x1b94('0x5b')),'utf8');var _0x53614b=ejs[_0x1b94('0x5c')](_0x539a6b,{'networks':_0x47a140||[]});fs[_0x1b94('0x5d')]('/etc/asterisk/stun_xcally.conf',_0x53614b);return respondWithRpcPromise(_0x1b94('0x5e'),'create',{'module':_0x1b94('0x5f')});}else if(_0x1aff60['type'][_0x1b94('0x57')]()=='TURN'){var _0x5a6f2b=fs['readFileSync'](path[_0x1b94('0x59')](config['root'],'server/files/templates/turn_multiple.ejs'),_0x1b94('0x60'));var _0x1e2d95=ejs[_0x1b94('0x5c')](_0x5a6f2b,{'networks':_0x47a140||[]});fs[_0x1b94('0x5d')]('/etc/asterisk/turn_xcally.conf',_0x1e2d95);return respondWithRpcPromise(_0x1b94('0x5e'),'create',{'module':_0x1b94('0x5f')});}else{var _0x494719=fs[_0x1b94('0x58')](path['join'](config[_0x1b94('0x5a')],'server/files/templates/network.ejs'),_0x1b94('0x60'));var _0x35707a=ejs[_0x1b94('0x5c')](_0x494719,{'networks':_0x47a140||[]});fs[_0x1b94('0x5d')](util[_0x1b94('0x61')](_0x1b94('0x62'),_0x5cfe10['body'][_0x1b94('0x3a')][_0x1b94('0x63')]()),_0x35707a);return respondWithRpcPromise(_0x1b94('0x5e'),_0x1b94('0x53'),{'module':_0x1b94('0x64')});}return null;})[_0x1b94('0x4d')](function(){return _0x1aff60;});})[_0x1b94('0x4d')](respondWithResult(_0x1805a2,0xc9))[_0x1b94('0x27')](handleError(_0x1805a2,null));};exports[_0x1b94('0x33')]=function(_0x277d6b,_0x4c7f88,_0x346067){var _0x12f62d;return db[_0x1b94('0x54')][_0x1b94('0x55')](function(_0x1da729){return db[_0x1b94('0x4c')][_0x1b94('0x52')]({'where':{'id':_0x277d6b[_0x1b94('0x50')]['id']}})[_0x1b94('0x4d')](handleEntityNotFound(_0x4c7f88,null))[_0x1b94('0x4d')](saveUpdates(_0x277d6b[_0x1b94('0x56')],null))[_0x1b94('0x4d')](function(_0x5849ea){if(_0x5849ea){_0x12f62d=_0x5849ea;return db[_0x1b94('0x4c')][_0x1b94('0x65')]({'where':{'type':_0x12f62d['type']},'raw':!![]});}return null;})[_0x1b94('0x4d')](function(_0x41b91b){if(_0x12f62d[_0x1b94('0x3a')]['toUpperCase']()=='STUN'){var _0x5137e7=fs['readFileSync'](path[_0x1b94('0x59')](config[_0x1b94('0x5a')],_0x1b94('0x5b')),_0x1b94('0x60'));var _0x2b639a=ejs[_0x1b94('0x5c')](_0x5137e7,{'networks':_0x41b91b||[]});fs[_0x1b94('0x5d')](_0x1b94('0x66'),_0x2b639a);return respondWithRpcPromise(_0x1b94('0x5e'),'update',{'module':_0x1b94('0x5f')});}else if(_0x12f62d[_0x1b94('0x3a')][_0x1b94('0x57')]()==_0x1b94('0x67')){var _0x2cd45a=fs[_0x1b94('0x58')](path[_0x1b94('0x59')](config[_0x1b94('0x5a')],_0x1b94('0x68')),_0x1b94('0x60'));var _0x468491=ejs[_0x1b94('0x5c')](_0x2cd45a,{'networks':_0x41b91b||[]});fs[_0x1b94('0x5d')](_0x1b94('0x69'),_0x468491);return respondWithRpcPromise('Reload','update',{'module':_0x1b94('0x5f')});}else{var _0x12ad73=fs['readFileSync'](path[_0x1b94('0x59')](config[_0x1b94('0x5a')],'server/files/templates/network.ejs'),_0x1b94('0x60'));var _0x40ce87=ejs['render'](_0x12ad73,{'networks':_0x41b91b||[]});fs[_0x1b94('0x5d')](util[_0x1b94('0x61')]('/etc/asterisk/sip_xcally_%s.conf',_0x277d6b['body']['type'][_0x1b94('0x63')]()),_0x40ce87);return respondWithRpcPromise(_0x1b94('0x5e'),_0x1b94('0x33'),{'module':'chan_sip.so'});}return null;})['then'](function(_0x6dcd99){if(_0x6dcd99){return _0x12f62d;}return null;});})[_0x1b94('0x4d')](respondWithResult(_0x4c7f88,null))[_0x1b94('0x27')](handleError(_0x4c7f88,null));};exports[_0x1b94('0x6a')]=function(_0x5b23cd,_0x365dc7,_0xb7a05){var _0x55111b;return db[_0x1b94('0x4c')]['find']({'where':{'id':_0x5b23cd[_0x1b94('0x50')]['id']}})[_0x1b94('0x4d')](function(_0xae114a){_0x55111b=_0xae114a;return _0xae114a;})[_0x1b94('0x4d')](handleEntityNotFound(_0x365dc7,null))[_0x1b94('0x4d')](removeEntity(_0x365dc7,null))[_0x1b94('0x4d')](function(){if(_0x55111b){return db['Network'][_0x1b94('0x65')]({'where':{'type':_0x55111b[_0x1b94('0x3a')]},'raw':!![]});}})[_0x1b94('0x4d')](function(_0x45a1ee){if(_0x55111b['type'][_0x1b94('0x57')]()==_0x1b94('0x6b')){var _0x45f276=fs['readFileSync'](path[_0x1b94('0x59')](config[_0x1b94('0x5a')],'server/files/templates/stun_multiple.ejs'),'utf8');var _0x532746=ejs['render'](_0x45f276,{'networks':_0x45a1ee||[]});fs['writeFileSync'](_0x1b94('0x66'),_0x532746);return respondWithRpcPromise(_0x1b94('0x5e'),_0x1b94('0x6a'),{'module':_0x1b94('0x5f')});}else if(_0x55111b[_0x1b94('0x3a')][_0x1b94('0x57')]()==_0x1b94('0x67')){var _0x586abe=fs[_0x1b94('0x58')](path[_0x1b94('0x59')](config[_0x1b94('0x5a')],_0x1b94('0x68')),_0x1b94('0x60'));var _0x31dfcd=ejs[_0x1b94('0x5c')](_0x586abe,{'networks':_0x45a1ee||[]});fs[_0x1b94('0x5d')](_0x1b94('0x69'),_0x31dfcd);return respondWithRpcPromise(_0x1b94('0x5e'),_0x1b94('0x6a'),{'module':_0x1b94('0x5f')});}else{var _0x50feb4=fs['readFileSync'](path['join'](config[_0x1b94('0x5a')],'server/files/templates/network.ejs'),_0x1b94('0x60'));var _0x21b993=ejs['render'](_0x50feb4,{'networks':_0x45a1ee||[]});fs[_0x1b94('0x5d')](util[_0x1b94('0x61')](_0x1b94('0x62'),_0x5b23cd[_0x1b94('0x56')][_0x1b94('0x3a')][_0x1b94('0x63')]()),_0x21b993);return respondWithRpcPromise(_0x1b94('0x5e'),'destroy',{'module':_0x1b94('0x64')});}return null;})[_0x1b94('0x27')](handleError(_0x365dc7,null));};
\ No newline at end of file
+var _0x4403=['catch','sendStatus','end','status','offset','limit','undefined','count','apply','save','update','destroy','stack','name','send','index','map','Network','rawAttributes','type','key','model','query','filters','intersection','fields','attributes','length','hasOwnProperty','order','sort','where','pick','filter','merge','options','includeAll','include','findAll','rows','show','keys','create','sequelize','transaction','body','STUN','join','root','server/files/templates/stun_multiple.ejs','render','writeFileSync','/etc/asterisk/stun_xcally.conf','Reload','toUpperCase','readFileSync','server/files/templates/turn_multiple.ejs','utf8','/etc/asterisk/turn_xcally.conf','res_stun_monitor.so','/etc/asterisk/sip_xcally_%s.conf','chan_sip.so','find','params','TURN','server/files/templates/network.ejs','format','toLowerCase','fast-json-patch','moment','bluebird','mustache','util','sox','fs-extra','lodash','squel','jsforce','to-csv','querystring','papaparse','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/license/util','../../mysqldb','jayson/promise','http','request','then','info','Network,\x20%s,\x20%s','request\x20sent','debug','Network,\x20%s,\x20%s,\x20%s','stringify','error','code','message'];(function(_0x323c60,_0x219b72){var _0x103f23=function(_0x7695b3){while(--_0x7695b3){_0x323c60['push'](_0x323c60['shift']());}};_0x103f23(++_0x219b72);}(_0x4403,0x179));var _0x3440=function(_0x3713c8,_0x2aecfb){_0x3713c8=_0x3713c8-0x0;var _0x17c79f=_0x4403[_0x3713c8];return _0x17c79f;};'use strict';var emlformat=require('eml-format');var rimraf=require('rimraf');var zipdir=require('zip-dir');var jsonpatch=require(_0x3440('0x0'));var rp=require('request-promise');var moment=require(_0x3440('0x1'));var BPromise=require(_0x3440('0x2'));var Mustache=require(_0x3440('0x3'));var util=require(_0x3440('0x4'));var path=require('path');var sox=require(_0x3440('0x5'));var csv=require('to-csv');var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0x3440('0x6'));var _=require(_0x3440('0x7'));var squel=require(_0x3440('0x8'));var crypto=require('crypto');var jsforce=require(_0x3440('0x9'));var deskjs=require('desk.js');var toCsv=require(_0x3440('0xa'));var querystring=require(_0x3440('0xb'));var Papa=require(_0x3440('0xc'));var Redis=require('ioredis');var authService=require(_0x3440('0xd'));var qs=require(_0x3440('0xe'));var as=require(_0x3440('0xf'));var hardwareService=require(_0x3440('0x10'));var logger=require(_0x3440('0x11'))(_0x3440('0x12'));var utils=require(_0x3440('0x13'));var config=require('../../config/environment');var licenseUtil=require(_0x3440('0x14'));var db=require(_0x3440('0x15'))['db'];var jayson=require(_0x3440('0x16'));var client=jayson['client'][_0x3440('0x17')]({'port':0x232a});function respondWithRpcPromise(_0xb24e14,_0x3f86de,_0x3f7c99,_0x26bfc4){return new BPromise(function(_0x5201e6,_0x36dd82){var _0x55eac4=_0x26bfc4||client;return _0x55eac4[_0x3440('0x18')](_0xb24e14,_0x3f7c99)[_0x3440('0x19')](function(_0x33a5bb){logger[_0x3440('0x1a')](_0x3440('0x1b'),_0x3f86de,_0x3440('0x1c'));logger[_0x3440('0x1d')](_0x3440('0x1e'),_0x3f86de,'request\x20sent',JSON[_0x3440('0x1f')](_0x33a5bb));if(_0x33a5bb[_0x3440('0x20')]){if(_0x33a5bb[_0x3440('0x20')][_0x3440('0x21')]===0x1f4){logger[_0x3440('0x20')](_0x3440('0x1b'),_0x3f86de,_0x33a5bb['error'][_0x3440('0x22')]);return _0x36dd82(_0x33a5bb[_0x3440('0x20')][_0x3440('0x22')]);}logger[_0x3440('0x20')](_0x3440('0x1b'),_0x3f86de,_0x33a5bb[_0x3440('0x20')][_0x3440('0x22')]);return _0x5201e6(_0x33a5bb[_0x3440('0x20')][_0x3440('0x22')]);}else{logger[_0x3440('0x1a')](_0x3440('0x1b'),_0x3f86de,'request\x20sent');_0x5201e6(_0x33a5bb['result']['message']);}})[_0x3440('0x23')](function(_0x45afde){logger['error'](_0x3440('0x1b'),_0x3f86de,_0x45afde);_0x36dd82(_0x45afde);});});}function respondWithStatusCode(_0x232b8f,_0x33cfb5){_0x33cfb5=_0x33cfb5||0xcc;return function(_0x38bf02){if(_0x38bf02){return _0x232b8f[_0x3440('0x24')](_0x33cfb5);}return _0x232b8f['status'](_0x33cfb5)[_0x3440('0x25')]();};}function respondWithResult(_0x264f9d,_0x3b9e75){_0x3b9e75=_0x3b9e75||0xc8;return function(_0x15f121){if(_0x15f121){return _0x264f9d[_0x3440('0x26')](_0x3b9e75)['json'](_0x15f121);}};}function respondWithFilteredResult(_0x381942,_0x2e93c){return function(_0x1cfe3a){if(_0x1cfe3a){var _0x251646=typeof _0x2e93c[_0x3440('0x27')]==='undefined'&&typeof _0x2e93c[_0x3440('0x28')]===_0x3440('0x29');var _0x3a97d9=_0x1cfe3a[_0x3440('0x2a')];var _0x2e6e96=_0x251646?0x0:_0x2e93c[_0x3440('0x27')];var _0xe23a=_0x251646?_0x1cfe3a[_0x3440('0x2a')]:_0x2e93c[_0x3440('0x27')]+_0x2e93c[_0x3440('0x28')];var _0x2f2bdb;if(_0xe23a>=_0x3a97d9){_0xe23a=_0x3a97d9;_0x2f2bdb=0xc8;}else{_0x2f2bdb=0xce;}_0x381942['status'](_0x2f2bdb);return _0x381942['set']('Content-Range',_0x2e6e96+'-'+_0xe23a+'/'+_0x3a97d9)['json'](_0x1cfe3a);}return null;};}function patchUpdates(_0x492706){return function(_0x4ab2ef){try{jsonpatch[_0x3440('0x2b')](_0x4ab2ef,_0x492706,!![]);}catch(_0x4d3a28){return BPromise['reject'](_0x4d3a28);}return _0x4ab2ef[_0x3440('0x2c')]();};}function saveUpdates(_0x10d833,_0x276bf0){return function(_0x4de957){if(_0x4de957){return _0x4de957[_0x3440('0x2d')](_0x10d833)['then'](function(_0x561c53){return _0x561c53;});}return null;};}function removeEntity(_0xd7fc96,_0x58143a){return function(_0x5e3c6b){if(_0x5e3c6b){return _0x5e3c6b[_0x3440('0x2e')]()['then'](function(){_0xd7fc96[_0x3440('0x26')](0xcc)['end']();});}};}function handleEntityNotFound(_0x18fa2a,_0x4faa6c){return function(_0x9f5c8e){if(!_0x9f5c8e){_0x18fa2a['sendStatus'](0x194);}return _0x9f5c8e;};}function handleError(_0x1afe01,_0x299224){_0x299224=_0x299224||0x1f4;return function(_0x43d3ca){logger[_0x3440('0x20')](_0x43d3ca[_0x3440('0x2f')]);if(_0x43d3ca['name']){delete _0x43d3ca[_0x3440('0x30')];}_0x1afe01[_0x3440('0x26')](_0x299224)[_0x3440('0x31')](_0x43d3ca);};}exports[_0x3440('0x32')]=function(_0x5f3ebe,_0x4047a9){var _0x12e049={},_0x4cfce5={},_0x244088={'count':0x0,'rows':[]};var _0x1c99c7=_[_0x3440('0x33')](db[_0x3440('0x34')][_0x3440('0x35')],function(_0x1dc900){return{'name':_0x1dc900['fieldName'],'type':_0x1dc900[_0x3440('0x36')][_0x3440('0x37')]};});_0x4cfce5[_0x3440('0x38')]=_['map'](_0x1c99c7,'name');_0x4cfce5['query']=_['keys'](_0x5f3ebe[_0x3440('0x39')]);_0x4cfce5[_0x3440('0x3a')]=_[_0x3440('0x3b')](_0x4cfce5[_0x3440('0x38')],_0x4cfce5[_0x3440('0x39')]);_0x12e049['attributes']=_[_0x3440('0x3b')](_0x4cfce5[_0x3440('0x38')],qs[_0x3440('0x3c')](_0x5f3ebe['query']['fields']));_0x12e049['attributes']=_0x12e049[_0x3440('0x3d')][_0x3440('0x3e')]?_0x12e049[_0x3440('0x3d')]:_0x4cfce5[_0x3440('0x38')];if(!_0x5f3ebe[_0x3440('0x39')][_0x3440('0x3f')]('nolimit')){_0x12e049[_0x3440('0x28')]=qs[_0x3440('0x28')](_0x5f3ebe[_0x3440('0x39')]['limit']);_0x12e049[_0x3440('0x27')]=qs[_0x3440('0x27')](_0x5f3ebe[_0x3440('0x39')][_0x3440('0x27')]);}_0x12e049[_0x3440('0x40')]=qs[_0x3440('0x41')](_0x5f3ebe['query'][_0x3440('0x41')]);_0x12e049[_0x3440('0x42')]=qs['filters'](_[_0x3440('0x43')](_0x5f3ebe[_0x3440('0x39')],_0x4cfce5[_0x3440('0x3a')]),_0x1c99c7);if(_0x5f3ebe[_0x3440('0x39')][_0x3440('0x44')]){_0x12e049[_0x3440('0x42')]=_[_0x3440('0x45')](_0x12e049[_0x3440('0x42')],{'$or':_[_0x3440('0x33')](_0x1c99c7,function(_0x1a7d59){if(_0x1a7d59[_0x3440('0x36')]!=='VIRTUAL'){var _0x3a1ee8={};_0x3a1ee8[_0x1a7d59['name']]={'$like':'%'+_0x5f3ebe[_0x3440('0x39')][_0x3440('0x44')]+'%'};return _0x3a1ee8;}})});}_0x12e049=_['merge']({},_0x12e049,_0x5f3ebe[_0x3440('0x46')]);var _0x208bfb={'where':_0x12e049[_0x3440('0x42')]};return db[_0x3440('0x34')][_0x3440('0x2a')](_0x208bfb)[_0x3440('0x19')](function(_0x3c352c){_0x244088[_0x3440('0x2a')]=_0x3c352c;if(_0x5f3ebe[_0x3440('0x39')][_0x3440('0x47')]){_0x12e049[_0x3440('0x48')]=[{'all':!![]}];}return db['Network'][_0x3440('0x49')](_0x12e049);})[_0x3440('0x19')](function(_0x56505c){_0x244088[_0x3440('0x4a')]=_0x56505c;return _0x244088;})[_0x3440('0x19')](respondWithFilteredResult(_0x4047a9,_0x12e049))[_0x3440('0x23')](handleError(_0x4047a9,null));};exports[_0x3440('0x4b')]=function(_0x11ac84,_0x173b99){var _0x1c02bd={'raw':!![],'where':{'id':_0x11ac84['params']['id']}},_0x4a00e0={};_0x4a00e0[_0x3440('0x38')]=_[_0x3440('0x4c')](db[_0x3440('0x34')][_0x3440('0x35')]);_0x4a00e0[_0x3440('0x39')]=_[_0x3440('0x4c')](_0x11ac84[_0x3440('0x39')]);_0x4a00e0[_0x3440('0x3a')]=_[_0x3440('0x3b')](_0x4a00e0[_0x3440('0x38')],_0x4a00e0[_0x3440('0x39')]);_0x1c02bd[_0x3440('0x3d')]=_[_0x3440('0x3b')](_0x4a00e0['model'],qs['fields'](_0x11ac84[_0x3440('0x39')][_0x3440('0x3c')]));_0x1c02bd[_0x3440('0x3d')]=_0x1c02bd[_0x3440('0x3d')][_0x3440('0x3e')]?_0x1c02bd['attributes']:_0x4a00e0[_0x3440('0x38')];if(_0x11ac84['query'][_0x3440('0x47')]){_0x1c02bd['include']=[{'all':!![]}];}_0x1c02bd=_[_0x3440('0x45')]({},_0x1c02bd,_0x11ac84['options']);return db[_0x3440('0x34')]['find'](_0x1c02bd)[_0x3440('0x19')](handleEntityNotFound(_0x173b99,null))[_0x3440('0x19')](respondWithResult(_0x173b99,null))[_0x3440('0x23')](handleError(_0x173b99,null));};exports[_0x3440('0x4d')]=function(_0x224093,_0x4796ef,_0x3237af){var _0x24c97f;return db[_0x3440('0x4e')][_0x3440('0x4f')](function(_0x29b243){return db[_0x3440('0x34')][_0x3440('0x4d')](_0x224093[_0x3440('0x50')],{'raw':!![]})[_0x3440('0x19')](function(_0x5a33c8){_0x24c97f=_0x5a33c8;return db[_0x3440('0x34')][_0x3440('0x49')]({'where':{'type':_0x224093[_0x3440('0x50')][_0x3440('0x36')]},'raw':!![]});})['then'](function(_0x3576ab){if(_0x24c97f[_0x3440('0x36')]['toUpperCase']()==_0x3440('0x51')){var _0x64a016=fs['readFileSync'](path[_0x3440('0x52')](config[_0x3440('0x53')],_0x3440('0x54')),'utf8');var _0x380b9d=ejs[_0x3440('0x55')](_0x64a016,{'networks':_0x3576ab||[]});fs[_0x3440('0x56')](_0x3440('0x57'),_0x380b9d);return respondWithRpcPromise(_0x3440('0x58'),'create',{'module':'res_stun_monitor.so'});}else if(_0x24c97f[_0x3440('0x36')][_0x3440('0x59')]()=='TURN'){var _0x30a65a=fs[_0x3440('0x5a')](path[_0x3440('0x52')](config['root'],_0x3440('0x5b')),_0x3440('0x5c'));var _0x48fb55=ejs[_0x3440('0x55')](_0x30a65a,{'networks':_0x3576ab||[]});fs[_0x3440('0x56')](_0x3440('0x5d'),_0x48fb55);return respondWithRpcPromise(_0x3440('0x58'),_0x3440('0x4d'),{'module':_0x3440('0x5e')});}else{var _0x47a893=fs[_0x3440('0x5a')](path['join'](config[_0x3440('0x53')],'server/files/templates/network.ejs'),'utf8');var _0x42e42d=ejs[_0x3440('0x55')](_0x47a893,{'networks':_0x3576ab||[]});fs[_0x3440('0x56')](util['format'](_0x3440('0x5f'),_0x224093[_0x3440('0x50')][_0x3440('0x36')]['toLowerCase']()),_0x42e42d);return respondWithRpcPromise(_0x3440('0x58'),'create',{'module':_0x3440('0x60')});}return null;})['then'](function(){return _0x24c97f;});})['then'](respondWithResult(_0x4796ef,0xc9))[_0x3440('0x23')](handleError(_0x4796ef,null));};exports[_0x3440('0x2d')]=function(_0x4854f5,_0x49069d,_0x2f4c4d){var _0x2cd59f;return db['sequelize']['transaction'](function(_0x24281f){return db['Network'][_0x3440('0x61')]({'where':{'id':_0x4854f5[_0x3440('0x62')]['id']}})[_0x3440('0x19')](handleEntityNotFound(_0x49069d,null))[_0x3440('0x19')](saveUpdates(_0x4854f5['body'],null))['then'](function(_0x310163){if(_0x310163){_0x2cd59f=_0x310163;return db[_0x3440('0x34')]['findAll']({'where':{'type':_0x2cd59f[_0x3440('0x36')]},'raw':!![]});}return null;})[_0x3440('0x19')](function(_0x5587ab){if(_0x2cd59f[_0x3440('0x36')][_0x3440('0x59')]()==_0x3440('0x51')){var _0x4213e6=fs[_0x3440('0x5a')](path[_0x3440('0x52')](config[_0x3440('0x53')],_0x3440('0x54')),'utf8');var _0x4ae414=ejs[_0x3440('0x55')](_0x4213e6,{'networks':_0x5587ab||[]});fs[_0x3440('0x56')](_0x3440('0x57'),_0x4ae414);return respondWithRpcPromise(_0x3440('0x58'),_0x3440('0x2d'),{'module':'res_stun_monitor.so'});}else if(_0x2cd59f[_0x3440('0x36')][_0x3440('0x59')]()==_0x3440('0x63')){var _0x2d7fe1=fs['readFileSync'](path[_0x3440('0x52')](config[_0x3440('0x53')],'server/files/templates/turn_multiple.ejs'),_0x3440('0x5c'));var _0x19dda6=ejs[_0x3440('0x55')](_0x2d7fe1,{'networks':_0x5587ab||[]});fs['writeFileSync'](_0x3440('0x5d'),_0x19dda6);return respondWithRpcPromise(_0x3440('0x58'),_0x3440('0x2d'),{'module':_0x3440('0x5e')});}else{var _0x452f6e=fs[_0x3440('0x5a')](path[_0x3440('0x52')](config[_0x3440('0x53')],_0x3440('0x64')),_0x3440('0x5c'));var _0x16c40d=ejs['render'](_0x452f6e,{'networks':_0x5587ab||[]});fs['writeFileSync'](util[_0x3440('0x65')](_0x3440('0x5f'),_0x4854f5[_0x3440('0x50')][_0x3440('0x36')]['toLowerCase']()),_0x16c40d);return respondWithRpcPromise('Reload',_0x3440('0x2d'),{'module':_0x3440('0x60')});}return null;})[_0x3440('0x19')](function(_0x43b38f){if(_0x43b38f){return _0x2cd59f;}return null;});})[_0x3440('0x19')](respondWithResult(_0x49069d,null))[_0x3440('0x23')](handleError(_0x49069d,null));};exports[_0x3440('0x2e')]=function(_0x18d0e6,_0x55bc3f,_0x33ee9e){var _0x393390;return db['Network'][_0x3440('0x61')]({'where':{'id':_0x18d0e6[_0x3440('0x62')]['id']}})['then'](function(_0x2306c6){_0x393390=_0x2306c6;return _0x2306c6;})['then'](handleEntityNotFound(_0x55bc3f,null))[_0x3440('0x19')](removeEntity(_0x55bc3f,null))[_0x3440('0x19')](function(){if(_0x393390){return db[_0x3440('0x34')]['findAll']({'where':{'type':_0x393390[_0x3440('0x36')]},'raw':!![]});}})[_0x3440('0x19')](function(_0x3d53b6){if(_0x393390[_0x3440('0x36')][_0x3440('0x59')]()==_0x3440('0x51')){var _0x1fd4ee=fs[_0x3440('0x5a')](path['join'](config[_0x3440('0x53')],_0x3440('0x54')),_0x3440('0x5c'));var _0x2f7ee5=ejs[_0x3440('0x55')](_0x1fd4ee,{'networks':_0x3d53b6||[]});fs['writeFileSync']('/etc/asterisk/stun_xcally.conf',_0x2f7ee5);return respondWithRpcPromise(_0x3440('0x58'),_0x3440('0x2e'),{'module':'res_stun_monitor.so'});}else if(_0x393390[_0x3440('0x36')][_0x3440('0x59')]()==_0x3440('0x63')){var _0x1a7ae3=fs[_0x3440('0x5a')](path[_0x3440('0x52')](config['root'],'server/files/templates/turn_multiple.ejs'),_0x3440('0x5c'));var _0x5aa74b=ejs[_0x3440('0x55')](_0x1a7ae3,{'networks':_0x3d53b6||[]});fs[_0x3440('0x56')]('/etc/asterisk/turn_xcally.conf',_0x5aa74b);return respondWithRpcPromise('Reload',_0x3440('0x2e'),{'module':_0x3440('0x5e')});}else{var _0x26e2c9=fs['readFileSync'](path['join'](config['root'],_0x3440('0x64')),_0x3440('0x5c'));var _0x36ebd3=ejs[_0x3440('0x55')](_0x26e2c9,{'networks':_0x3d53b6||[]});fs[_0x3440('0x56')](util['format'](_0x3440('0x5f'),_0x18d0e6[_0x3440('0x50')][_0x3440('0x36')][_0x3440('0x66')]()),_0x36ebd3);return respondWithRpcPromise(_0x3440('0x58'),_0x3440('0x2e'),{'module':_0x3440('0x60')});}return null;})[_0x3440('0x23')](handleError(_0x55bc3f,null));};
\ No newline at end of file