Built motion from commit 00bf23f6.|2.6.16
[motion2.git] / server / api / trunk / trunk.controller.js
index 0d1851a..c516550 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xf820=['end','json','count','offset','limit','set','Content-Range','apply','reject','update','destroy','Trunks','stack','name','send','index','map','Trunk','fieldName','type','model','query','keys','filters','intersection','attributes','fields','hasOwnProperty','order','sort','where','pick','filter','merge','options','includeAll','include','findAll','rows','params','rawAttributes','length','find','clone','createdAt','updatedAt','omit','body','create','user','get','role','autoAssociation','UserProfileResource','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','join','root','server/files/templates/trunk.ejs','utf8','readFileSync','server/files/templates/registry.ejs','render','writeFileSync','/etc/asterisk/sip_xcally_trunks.conf','registry','Reload','chan_sip.so','Unable\x20to\x20retrieve\x20the\x20current\x20user','userProfileId','/etc/asterisk/sip_xcally_registers.conf','html-pdf','eml-format','zip-dir','request-promise','moment','bluebird','mustache','util','path','sox','ejs','crypto','jsforce','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/logger','api','../../config/environment','../../config/license/util','client','http','request','then','Trunk,\x20%s,\x20%s','request\x20sent','debug','Trunk,\x20%s,\x20%s,\x20%s','stringify','error','code','message','info','catch','sendStatus','status'];(function(_0x2f5ac5,_0x1ee939){var _0x37c9a8=function(_0x15031f){while(--_0x15031f){_0x2f5ac5['push'](_0x2f5ac5['shift']());}};_0x37c9a8(++_0x1ee939);}(_0xf820,0x11c));var _0x0f82=function(_0x1d449d,_0x21ae82){_0x1d449d=_0x1d449d-0x0;var _0x2430d7=_0xf820[_0x1d449d];return _0x2430d7;};'use strict';var pdf=require(_0x0f82('0x0'));var emlformat=require(_0x0f82('0x1'));var rimraf=require('rimraf');var zipdir=require(_0x0f82('0x2'));var jsonpatch=require('fast-json-patch');var rp=require(_0x0f82('0x3'));var moment=require(_0x0f82('0x4'));var BPromise=require(_0x0f82('0x5'));var Mustache=require(_0x0f82('0x6'));var util=require(_0x0f82('0x7'));var path=require(_0x0f82('0x8'));var sox=require(_0x0f82('0x9'));var csv=require('to-csv');var ejs=require(_0x0f82('0xa'));var fs=require('fs');var _=require('lodash');var squel=require('squel');var crypto=require(_0x0f82('0xb'));var jsforce=require(_0x0f82('0xc'));var deskjs=require('desk.js');var toCsv=require('to-csv');var querystring=require('querystring');var Papa=require(_0x0f82('0xd'));var Redis=require(_0x0f82('0xe'));var authService=require(_0x0f82('0xf'));var qs=require(_0x0f82('0x10'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require('../../config/license/hardware');var logger=require(_0x0f82('0x11'))(_0x0f82('0x12'));var utils=require('../../config/utils');var config=require(_0x0f82('0x13'));var licenseUtil=require(_0x0f82('0x14'));var db=require('../../mysqldb')['db'];var jayson=require('jayson/promise');var client=jayson[_0x0f82('0x15')][_0x0f82('0x16')]({'port':0x232a});function respondWithRpcPromise(_0x1e086c,_0x166b8f,_0x5caadb,_0x2f4165){return new BPromise(function(_0x3885e2,_0xd988dd){var _0x1a6529=_0x2f4165||client;return _0x1a6529[_0x0f82('0x17')](_0x1e086c,_0x5caadb)[_0x0f82('0x18')](function(_0x5a795b){logger['info'](_0x0f82('0x19'),_0x166b8f,_0x0f82('0x1a'));logger[_0x0f82('0x1b')](_0x0f82('0x1c'),_0x166b8f,_0x0f82('0x1a'),JSON[_0x0f82('0x1d')](_0x5a795b));if(_0x5a795b[_0x0f82('0x1e')]){if(_0x5a795b['error'][_0x0f82('0x1f')]===0x1f4){logger[_0x0f82('0x1e')](_0x0f82('0x19'),_0x166b8f,_0x5a795b[_0x0f82('0x1e')][_0x0f82('0x20')]);return _0xd988dd(_0x5a795b[_0x0f82('0x1e')][_0x0f82('0x20')]);}logger[_0x0f82('0x1e')](_0x0f82('0x19'),_0x166b8f,_0x5a795b[_0x0f82('0x1e')][_0x0f82('0x20')]);return _0x3885e2(_0x5a795b[_0x0f82('0x1e')]['message']);}else{logger[_0x0f82('0x21')]('Trunk,\x20%s,\x20%s',_0x166b8f,_0x0f82('0x1a'));_0x3885e2(_0x5a795b['result'][_0x0f82('0x20')]);}})[_0x0f82('0x22')](function(_0x4f170e){logger[_0x0f82('0x1e')](_0x0f82('0x19'),_0x166b8f,_0x4f170e);_0xd988dd(_0x4f170e);});});}function respondWithStatusCode(_0x1e5286,_0x572cff){_0x572cff=_0x572cff||0xcc;return function(_0xdb587a){if(_0xdb587a){return _0x1e5286[_0x0f82('0x23')](_0x572cff);}return _0x1e5286[_0x0f82('0x24')](_0x572cff)[_0x0f82('0x25')]();};}function respondWithResult(_0x59b7f6,_0x15486a){_0x15486a=_0x15486a||0xc8;return function(_0xb87e74){if(_0xb87e74){return _0x59b7f6[_0x0f82('0x24')](_0x15486a)[_0x0f82('0x26')](_0xb87e74);}};}function respondWithFilteredResult(_0x36326d,_0x40c285){return function(_0x21f27d){if(_0x21f27d){var _0x1baac3=_0x21f27d[_0x0f82('0x27')],_0x34e588=_0x40c285[_0x0f82('0x28')],_0xd66118=_0x40c285['offset']+_0x40c285[_0x0f82('0x29')],_0x3c83d9;if(_0xd66118>=_0x1baac3){_0xd66118=_0x1baac3;_0x3c83d9=0xc8;}else{_0x3c83d9=0xce;}_0x36326d[_0x0f82('0x24')](_0x3c83d9);return _0x36326d[_0x0f82('0x2a')](_0x0f82('0x2b'),_0x34e588+'-'+_0xd66118+'/'+_0x1baac3)[_0x0f82('0x26')](_0x21f27d);}return null;};}function patchUpdates(_0x4bda08){return function(_0x1388c8){try{jsonpatch[_0x0f82('0x2c')](_0x1388c8,_0x4bda08,!![]);}catch(_0x5bc481){return BPromise[_0x0f82('0x2d')](_0x5bc481);}return _0x1388c8['save']();};}function saveUpdates(_0xb2f92c,_0x245ecd){return function(_0x27697d){if(_0x27697d){return _0x27697d[_0x0f82('0x2e')](_0xb2f92c)[_0x0f82('0x18')](function(_0x14124f){return _0x14124f;});}return null;};}function removeEntity(_0x23eb31,_0x50f9e7){return function(_0x46b1e0){if(_0x46b1e0){return _0x46b1e0[_0x0f82('0x2f')]()[_0x0f82('0x18')](function(){var _0x69319b=_0x46b1e0['get']({'plain':!![]});var _0x352728=_0x0f82('0x30');return db['UserProfileResource']['destroy']({'where':{'type':_0x352728,'resourceId':_0x69319b['id']}})[_0x0f82('0x18')](function(){return _0x46b1e0;});})[_0x0f82('0x18')](function(){_0x23eb31[_0x0f82('0x24')](0xcc)[_0x0f82('0x25')]();});}};}function handleEntityNotFound(_0x2a66b9,_0x46676d){return function(_0x1c21e0){if(!_0x1c21e0){_0x2a66b9['sendStatus'](0x194);}return _0x1c21e0;};}function handleError(_0x51aef8,_0x574f5e){_0x574f5e=_0x574f5e||0x1f4;return function(_0x5bb293){logger['error'](_0x5bb293[_0x0f82('0x31')]);if(_0x5bb293[_0x0f82('0x32')]){delete _0x5bb293['name'];}_0x51aef8[_0x0f82('0x24')](_0x574f5e)[_0x0f82('0x33')](_0x5bb293);};}exports[_0x0f82('0x34')]=function(_0x40903d,_0x2291ae){var _0x32d22b={},_0x111e7c={},_0x2dac1a={'count':0x0,'rows':[]};var _0xf25e3b=_[_0x0f82('0x35')](db[_0x0f82('0x36')]['rawAttributes'],function(_0x22ef36){return{'name':_0x22ef36[_0x0f82('0x37')],'type':_0x22ef36[_0x0f82('0x38')]['key']};});_0x111e7c[_0x0f82('0x39')]=_[_0x0f82('0x35')](_0xf25e3b,_0x0f82('0x32'));_0x111e7c[_0x0f82('0x3a')]=_[_0x0f82('0x3b')](_0x40903d[_0x0f82('0x3a')]);_0x111e7c[_0x0f82('0x3c')]=_[_0x0f82('0x3d')](_0x111e7c[_0x0f82('0x39')],_0x111e7c[_0x0f82('0x3a')]);_0x32d22b[_0x0f82('0x3e')]=_[_0x0f82('0x3d')](_0x111e7c['model'],qs[_0x0f82('0x3f')](_0x40903d['query'][_0x0f82('0x3f')]));_0x32d22b[_0x0f82('0x3e')]=_0x32d22b[_0x0f82('0x3e')]['length']?_0x32d22b['attributes']:_0x111e7c['model'];if(!_0x40903d[_0x0f82('0x3a')][_0x0f82('0x40')]('nolimit')){_0x32d22b['limit']=qs[_0x0f82('0x29')](_0x40903d[_0x0f82('0x3a')]['limit']);_0x32d22b[_0x0f82('0x28')]=qs[_0x0f82('0x28')](_0x40903d['query']['offset']);}_0x32d22b[_0x0f82('0x41')]=qs['sort'](_0x40903d[_0x0f82('0x3a')][_0x0f82('0x42')]);_0x32d22b[_0x0f82('0x43')]=qs[_0x0f82('0x3c')](_[_0x0f82('0x44')](_0x40903d[_0x0f82('0x3a')],_0x111e7c[_0x0f82('0x3c')]),_0xf25e3b);if(_0x40903d[_0x0f82('0x3a')][_0x0f82('0x45')]){_0x32d22b['where']=_[_0x0f82('0x46')](_0x32d22b[_0x0f82('0x43')],{'$or':_[_0x0f82('0x35')](_0xf25e3b,function(_0x7a40da){if(_0x7a40da['type']!=='VIRTUAL'){var _0x572b7f={};_0x572b7f[_0x7a40da[_0x0f82('0x32')]]={'$like':'%'+_0x40903d[_0x0f82('0x3a')][_0x0f82('0x45')]+'%'};return _0x572b7f;}})});}_0x32d22b=_[_0x0f82('0x46')]({},_0x32d22b,_0x40903d[_0x0f82('0x47')]);var _0x235183={'where':_0x32d22b[_0x0f82('0x43')]};return db[_0x0f82('0x36')][_0x0f82('0x27')](_0x235183)['then'](function(_0x35720e){_0x2dac1a[_0x0f82('0x27')]=_0x35720e;if(_0x40903d[_0x0f82('0x3a')][_0x0f82('0x48')]){_0x32d22b[_0x0f82('0x49')]=[{'all':!![]}];}return db['Trunk'][_0x0f82('0x4a')](_0x32d22b);})[_0x0f82('0x18')](function(_0x3fbc45){_0x2dac1a[_0x0f82('0x4b')]=_0x3fbc45;return _0x2dac1a;})[_0x0f82('0x18')](respondWithFilteredResult(_0x2291ae,_0x32d22b))[_0x0f82('0x22')](handleError(_0x2291ae,null));};exports['show']=function(_0x411feb,_0x27772a){var _0x49e07a={'raw':![],'where':{'id':_0x411feb[_0x0f82('0x4c')]['id']}},_0x3c5f8f={};_0x3c5f8f[_0x0f82('0x39')]=_['keys'](db[_0x0f82('0x36')][_0x0f82('0x4d')]);_0x3c5f8f['query']=_[_0x0f82('0x3b')](_0x411feb[_0x0f82('0x3a')]);_0x3c5f8f[_0x0f82('0x3c')]=_[_0x0f82('0x3d')](_0x3c5f8f['model'],_0x3c5f8f[_0x0f82('0x3a')]);_0x49e07a[_0x0f82('0x3e')]=_['intersection'](_0x3c5f8f[_0x0f82('0x39')],qs[_0x0f82('0x3f')](_0x411feb[_0x0f82('0x3a')]['fields']));_0x49e07a['attributes']=_0x49e07a[_0x0f82('0x3e')][_0x0f82('0x4e')]?_0x49e07a[_0x0f82('0x3e')]:_0x3c5f8f['model'];if(_0x411feb[_0x0f82('0x3a')][_0x0f82('0x48')]){_0x49e07a[_0x0f82('0x49')]=[{'all':!![]}];}_0x49e07a=_[_0x0f82('0x46')]({},_0x49e07a,_0x411feb[_0x0f82('0x47')]);return db[_0x0f82('0x36')][_0x0f82('0x4f')](_0x49e07a)[_0x0f82('0x18')](handleEntityNotFound(_0x27772a,null))['then'](respondWithResult(_0x27772a,null))[_0x0f82('0x22')](handleError(_0x27772a,null));};exports[_0x0f82('0x50')]=function(_0x303d6d,_0x37314b){var _0x5cb0b1={'where':{'id':_0x303d6d[_0x0f82('0x4c')]['id']}},_0x404230={};_0x404230[_0x0f82('0x39')]=_[_0x0f82('0x3b')](db[_0x0f82('0x36')][_0x0f82('0x4d')]);_0x5cb0b1[_0x0f82('0x3e')]=_['intersection'](_0x404230[_0x0f82('0x39')],qs[_0x0f82('0x3f')](_0x303d6d[_0x0f82('0x3a')][_0x0f82('0x3f')]));_0x5cb0b1[_0x0f82('0x3e')]=_0x5cb0b1[_0x0f82('0x3e')][_0x0f82('0x4e')]?_0x5cb0b1[_0x0f82('0x3e')]:_0x404230[_0x0f82('0x39')];if(_0x303d6d['query'][_0x0f82('0x48')]){_0x5cb0b1[_0x0f82('0x49')]=[{'all':!![]}];}_0x5cb0b1=_[_0x0f82('0x46')]({},_0x5cb0b1,_0x303d6d[_0x0f82('0x47')]);return db[_0x0f82('0x36')]['find'](_0x5cb0b1)[_0x0f82('0x18')](handleEntityNotFound(_0x37314b,null))[_0x0f82('0x18')](function(_0x3b4a3d){if(_0x3b4a3d){var _0x4dd407=_0x3b4a3d['get']({'plain':!![]});_0x4dd407=qs['omit'](_0x4dd407,['id',_0x0f82('0x51'),_0x0f82('0x52')]);_0x303d6d['body']=_[_0x0f82('0x53')](_0x303d6d[_0x0f82('0x54')],['id',_0x0f82('0x51'),_0x0f82('0x52')]);return db[_0x0f82('0x36')][_0x0f82('0x55')](_[_0x0f82('0x46')](_0x4dd407,_0x303d6d['body']),{'include':_0x303d6d[_0x0f82('0x3a')][_0x0f82('0x48')]?[{'all':!![]}]:undefined})[_0x0f82('0x18')](function(_0x369ead){var _0x3a5bda=_0x303d6d[_0x0f82('0x56')][_0x0f82('0x57')]({'plain':!![]});if(!_0x3a5bda)throw new Error('Unable\x20to\x20retrieve\x20the\x20current\x20user');if(_0x3a5bda[_0x0f82('0x58')]==='user'){var _0x38d1a2=_0x369ead[_0x0f82('0x57')]({'plain':!![]});var _0x4e0d1f=_0x0f82('0x30');return db['UserProfileSection'][_0x0f82('0x4f')]({'where':{'name':_0x4e0d1f,'userProfileId':_0x3a5bda['userProfileId']},'raw':!![]})['then'](function(_0x341fab){if(_0x341fab&&_0x341fab[_0x0f82('0x59')]===0x0){return db[_0x0f82('0x5a')][_0x0f82('0x55')]({'name':_0x38d1a2[_0x0f82('0x32')],'resourceId':_0x38d1a2['id'],'type':_0x341fab[_0x0f82('0x32')],'sectionId':_0x341fab['id']},{})[_0x0f82('0x18')](function(){return _0x369ead;});}else{return _0x369ead;}})[_0x0f82('0x22')](function(_0x1f2b8b){logger[_0x0f82('0x1e')](_0x0f82('0x5b'),_0x1f2b8b);throw _0x1f2b8b;});}return _0x369ead;});}})[_0x0f82('0x18')](respondWithResult(_0x37314b,0xc9))[_0x0f82('0x22')](handleError(_0x37314b,null));};exports[_0x0f82('0x55')]=function(_0x5cc427,_0x12a33d,_0x31c1d5){var _0xf13e9d;return db[_0x0f82('0x36')][_0x0f82('0x55')](_0x5cc427[_0x0f82('0x54')],{'raw':!![]})[_0x0f82('0x18')](function(_0x5ee3ee){_0xf13e9d=_0x5ee3ee;return db[_0x0f82('0x36')][_0x0f82('0x4a')]({'raw':!![]});})[_0x0f82('0x18')](function(_0x3ec51d){var _0x582d01=fs['readFileSync'](path[_0x0f82('0x5c')](config[_0x0f82('0x5d')],_0x0f82('0x5e')),_0x0f82('0x5f'));var _0x4cf165=fs[_0x0f82('0x60')](path['join'](config[_0x0f82('0x5d')],_0x0f82('0x61')),'utf8');var _0x5d6fbf=ejs[_0x0f82('0x62')](_0x582d01,{'trunks':_0x3ec51d||[]});fs[_0x0f82('0x63')](_0x0f82('0x64'),_0x5d6fbf);if(_0xf13e9d[_0x0f82('0x65')]){var _0x54c3b6=ejs['render'](_0x4cf165,{'trunks':_0x3ec51d||[]});fs[_0x0f82('0x63')]('/etc/asterisk/sip_xcally_registers.conf',_0x54c3b6);}})[_0x0f82('0x18')](function(){return respondWithRpcPromise(_0x0f82('0x66'),_0x0f82('0x55'),{'module':_0x0f82('0x67')});})[_0x0f82('0x18')](function(){var _0x10b7af=_0x5cc427[_0x0f82('0x56')][_0x0f82('0x57')]({'plain':!![]});if(!_0x10b7af)throw new Error(_0x0f82('0x68'));if(_0x10b7af[_0x0f82('0x58')]===_0x0f82('0x56')){var _0x43f013=_0xf13e9d[_0x0f82('0x57')]({'plain':!![]});return db['UserProfileSection'][_0x0f82('0x4f')]({'where':{'name':'Trunks','userProfileId':_0x10b7af[_0x0f82('0x69')]},'raw':!![]})[_0x0f82('0x18')](function(_0x57e6a4){if(_0x57e6a4&&_0x57e6a4['autoAssociation']===0x0){return db[_0x0f82('0x5a')]['create']({'name':_0x43f013[_0x0f82('0x32')],'resourceId':_0x43f013['id'],'type':_0x57e6a4[_0x0f82('0x32')],'sectionId':_0x57e6a4['id']},{})['then'](function(){return _0xf13e9d;});}else{return _0xf13e9d;}})['catch'](function(_0x4f1c9f){logger[_0x0f82('0x1e')]('Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s',_0x4f1c9f);throw _0x4f1c9f;});}return _0xf13e9d;})['then'](respondWithResult(_0x12a33d,0xc9))['catch'](handleError(_0x12a33d,null));};exports[_0x0f82('0x2e')]=function(_0x4a91bd,_0x2b6c1,_0x276584){var _0x24eb10;return db['Trunk'][_0x0f82('0x4f')]({'where':{'id':_0x4a91bd['params']['id']}})['then'](handleEntityNotFound(_0x2b6c1,null))[_0x0f82('0x18')](saveUpdates(_0x4a91bd[_0x0f82('0x54')],null))['then'](function(_0x22f977){if(_0x22f977){_0x24eb10=_0x22f977;return db['Trunk'][_0x0f82('0x4a')]({'raw':!![]});}})[_0x0f82('0x18')](function(_0x1c1156){if(_0x1c1156){var _0x245331=fs[_0x0f82('0x60')](path[_0x0f82('0x5c')](config['root'],'server/files/templates/trunk.ejs'),'utf8');var _0xc624f1=fs[_0x0f82('0x60')](path['join'](config[_0x0f82('0x5d')],_0x0f82('0x61')),_0x0f82('0x5f'));var _0xadab4c=ejs[_0x0f82('0x62')](_0x245331,{'trunks':_0x1c1156||[]});fs['writeFileSync'](_0x0f82('0x64'),_0xadab4c);var _0x326090=ejs['render'](_0xc624f1,{'trunks':_0x1c1156||[]});fs[_0x0f82('0x63')](_0x0f82('0x6a'),_0x326090);return respondWithRpcPromise('Reload','update',{'module':_0x0f82('0x67')});}return null;})['then'](function(_0xf55027){if(_0xf55027){return _0x24eb10;}})[_0x0f82('0x18')](respondWithResult(_0x2b6c1,null))[_0x0f82('0x22')](handleError(_0x2b6c1,null));};exports['destroy']=function(_0x55bda8,_0x593c70,_0x5503e7){var _0x4a0348;return db[_0x0f82('0x36')][_0x0f82('0x4f')]({'where':{'id':_0x55bda8['params']['id']}})['then'](handleEntityNotFound(_0x593c70,null))[_0x0f82('0x18')](removeEntity(_0x593c70,null))[_0x0f82('0x18')](function(){return db[_0x0f82('0x36')][_0x0f82('0x4a')]({'raw':!![]});})[_0x0f82('0x18')](function(_0x1c78e4){var _0x55ab24=fs['readFileSync'](path[_0x0f82('0x5c')](config[_0x0f82('0x5d')],_0x0f82('0x5e')),'utf8');var _0x347235=fs[_0x0f82('0x60')](path[_0x0f82('0x5c')](config[_0x0f82('0x5d')],_0x0f82('0x61')),_0x0f82('0x5f'));var _0x4596c8=ejs[_0x0f82('0x62')](_0x55ab24,{'trunks':_0x1c78e4});var _0x356f66=ejs[_0x0f82('0x62')](_0x347235,{'trunks':_0x1c78e4});fs[_0x0f82('0x63')](_0x0f82('0x64'),_0x4596c8);fs[_0x0f82('0x63')](_0x0f82('0x6a'),_0x356f66);return respondWithRpcPromise(_0x0f82('0x66'),_0x0f82('0x2f'),{'module':_0x0f82('0x67')});})[_0x0f82('0x22')](handleError(_0x593c70,null));};
\ No newline at end of file
+var _0x3e74=['map','Trunk','rawAttributes','fieldName','key','model','keys','query','filters','intersection','fields','attributes','length','nolimit','order','sort','pick','where','type','filter','merge','options','includeAll','include','findAll','params','clone','find','get','omit','createdAt','body','updatedAt','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','UserProfileSection','create','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','join','root','server/files/templates/trunk.ejs','utf8','readFileSync','server/files/templates/registry.ejs','render','/etc/asterisk/sip_xcally_trunks.conf','registry','/etc/asterisk/sip_xcally_registers.conf','Reload','chan_sip.so','writeFileSync','eml-format','zip-dir','fast-json-patch','request-promise','mustache','path','sox','to-csv','ejs','fs-extra','squel','crypto','jsforce','desk.js','papaparse','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger','../../config/utils','../../config/environment','../../mysqldb','jayson/promise','client','http','request','then','info','debug','Trunk,\x20%s,\x20%s,\x20%s','request\x20sent','error','code','Trunk,\x20%s,\x20%s','message','result','catch','sendStatus','status','json','undefined','count','offset','limit','set','Content-Range','apply','reject','update','destroy','Trunks','UserProfileResource','stack','name','send','index'];(function(_0x5675ad,_0x331c36){var _0x36add6=function(_0x3abf59){while(--_0x3abf59){_0x5675ad['push'](_0x5675ad['shift']());}};_0x36add6(++_0x331c36);}(_0x3e74,0x175));var _0x43e7=function(_0x302571,_0x22f825){_0x302571=_0x302571-0x0;var _0x19ecda=_0x3e74[_0x302571];return _0x19ecda;};'use strict';var emlformat=require(_0x43e7('0x0'));var rimraf=require('rimraf');var zipdir=require(_0x43e7('0x1'));var jsonpatch=require(_0x43e7('0x2'));var rp=require(_0x43e7('0x3'));var moment=require('moment');var BPromise=require('bluebird');var Mustache=require(_0x43e7('0x4'));var util=require('util');var path=require(_0x43e7('0x5'));var sox=require(_0x43e7('0x6'));var csv=require(_0x43e7('0x7'));var ejs=require(_0x43e7('0x8'));var fs=require('fs');var fs_extra=require(_0x43e7('0x9'));var _=require('lodash');var squel=require(_0x43e7('0xa'));var crypto=require(_0x43e7('0xb'));var jsforce=require(_0x43e7('0xc'));var deskjs=require(_0x43e7('0xd'));var toCsv=require(_0x43e7('0x7'));var querystring=require('querystring');var Papa=require(_0x43e7('0xe'));var Redis=require('ioredis');var authService=require('../../components/auth/service');var qs=require(_0x43e7('0xf'));var as=require(_0x43e7('0x10'));var hardwareService=require('../../config/license/hardware');var logger=require(_0x43e7('0x11'))('api');var utils=require(_0x43e7('0x12'));var config=require(_0x43e7('0x13'));var licenseUtil=require('../../config/license/util');var db=require(_0x43e7('0x14'))['db'];var jayson=require(_0x43e7('0x15'));var client=jayson[_0x43e7('0x16')][_0x43e7('0x17')]({'port':0x232a});function respondWithRpcPromise(_0x4e008c,_0x583d85,_0x2fcb36,_0x21fdd3){return new BPromise(function(_0x44b0bd,_0x51b974){var _0x5e641c=_0x21fdd3||client;return _0x5e641c[_0x43e7('0x18')](_0x4e008c,_0x2fcb36)[_0x43e7('0x19')](function(_0x203378){logger[_0x43e7('0x1a')]('Trunk,\x20%s,\x20%s',_0x583d85,'request\x20sent');logger[_0x43e7('0x1b')](_0x43e7('0x1c'),_0x583d85,_0x43e7('0x1d'),JSON['stringify'](_0x203378));if(_0x203378['error']){if(_0x203378[_0x43e7('0x1e')][_0x43e7('0x1f')]===0x1f4){logger[_0x43e7('0x1e')](_0x43e7('0x20'),_0x583d85,_0x203378[_0x43e7('0x1e')][_0x43e7('0x21')]);return _0x51b974(_0x203378[_0x43e7('0x1e')][_0x43e7('0x21')]);}logger[_0x43e7('0x1e')](_0x43e7('0x20'),_0x583d85,_0x203378[_0x43e7('0x1e')][_0x43e7('0x21')]);return _0x44b0bd(_0x203378['error'][_0x43e7('0x21')]);}else{logger[_0x43e7('0x1a')]('Trunk,\x20%s,\x20%s',_0x583d85,_0x43e7('0x1d'));_0x44b0bd(_0x203378[_0x43e7('0x22')][_0x43e7('0x21')]);}})[_0x43e7('0x23')](function(_0x4077fb){logger[_0x43e7('0x1e')]('Trunk,\x20%s,\x20%s',_0x583d85,_0x4077fb);_0x51b974(_0x4077fb);});});}function respondWithStatusCode(_0x454359,_0x4eea52){_0x4eea52=_0x4eea52||0xcc;return function(_0x4c9df3){if(_0x4c9df3){return _0x454359[_0x43e7('0x24')](_0x4eea52);}return _0x454359[_0x43e7('0x25')](_0x4eea52)['end']();};}function respondWithResult(_0x1f0673,_0x4ca5cf){_0x4ca5cf=_0x4ca5cf||0xc8;return function(_0x326dab){if(_0x326dab){return _0x1f0673['status'](_0x4ca5cf)[_0x43e7('0x26')](_0x326dab);}};}function respondWithFilteredResult(_0x1b5f50,_0x20888b){return function(_0x405f85){if(_0x405f85){var _0x51f4d7=typeof _0x20888b['offset']===_0x43e7('0x27')&&typeof _0x20888b['limit']===_0x43e7('0x27');var _0x40dc8f=_0x405f85[_0x43e7('0x28')];var _0xb1fc63=_0x51f4d7?0x0:_0x20888b['offset'];var _0x33a1a5=_0x51f4d7?_0x405f85[_0x43e7('0x28')]:_0x20888b[_0x43e7('0x29')]+_0x20888b[_0x43e7('0x2a')];var _0x442c3b;if(_0x33a1a5>=_0x40dc8f){_0x33a1a5=_0x40dc8f;_0x442c3b=0xc8;}else{_0x442c3b=0xce;}_0x1b5f50[_0x43e7('0x25')](_0x442c3b);return _0x1b5f50[_0x43e7('0x2b')](_0x43e7('0x2c'),_0xb1fc63+'-'+_0x33a1a5+'/'+_0x40dc8f)[_0x43e7('0x26')](_0x405f85);}return null;};}function patchUpdates(_0x35dbcd){return function(_0x17df44){try{jsonpatch[_0x43e7('0x2d')](_0x17df44,_0x35dbcd,!![]);}catch(_0x2bde44){return BPromise[_0x43e7('0x2e')](_0x2bde44);}return _0x17df44['save']();};}function saveUpdates(_0x238321,_0x44f6b0){return function(_0x3b8f78){if(_0x3b8f78){return _0x3b8f78[_0x43e7('0x2f')](_0x238321)[_0x43e7('0x19')](function(_0x4c8650){return _0x4c8650;});}return null;};}function removeEntity(_0x1eba65,_0x49b83d){return function(_0x30d47e){if(_0x30d47e){return _0x30d47e[_0x43e7('0x30')]()['then'](function(){var _0x5a7342=_0x30d47e['get']({'plain':!![]});var _0xf8320=_0x43e7('0x31');return db[_0x43e7('0x32')][_0x43e7('0x30')]({'where':{'type':_0xf8320,'resourceId':_0x5a7342['id']}})[_0x43e7('0x19')](function(){return _0x30d47e;});})[_0x43e7('0x19')](function(){_0x1eba65['status'](0xcc)['end']();});}};}function handleEntityNotFound(_0x4ac23d,_0x59e5b2){return function(_0x4e8e86){if(!_0x4e8e86){_0x4ac23d['sendStatus'](0x194);}return _0x4e8e86;};}function handleError(_0x5cb753,_0x14d888){_0x14d888=_0x14d888||0x1f4;return function(_0x49cda6){logger[_0x43e7('0x1e')](_0x49cda6[_0x43e7('0x33')]);if(_0x49cda6[_0x43e7('0x34')]){delete _0x49cda6[_0x43e7('0x34')];}_0x5cb753[_0x43e7('0x25')](_0x14d888)[_0x43e7('0x35')](_0x49cda6);};}exports[_0x43e7('0x36')]=function(_0x4f1a5f,_0x5332d9){var _0x5d84f4={},_0xfa0474={},_0xfe70e9={'count':0x0,'rows':[]};var _0x199ff6=_[_0x43e7('0x37')](db[_0x43e7('0x38')][_0x43e7('0x39')],function(_0x1d4589){return{'name':_0x1d4589[_0x43e7('0x3a')],'type':_0x1d4589['type'][_0x43e7('0x3b')]};});_0xfa0474[_0x43e7('0x3c')]=_['map'](_0x199ff6,_0x43e7('0x34'));_0xfa0474['query']=_[_0x43e7('0x3d')](_0x4f1a5f[_0x43e7('0x3e')]);_0xfa0474[_0x43e7('0x3f')]=_[_0x43e7('0x40')](_0xfa0474[_0x43e7('0x3c')],_0xfa0474[_0x43e7('0x3e')]);_0x5d84f4['attributes']=_['intersection'](_0xfa0474[_0x43e7('0x3c')],qs[_0x43e7('0x41')](_0x4f1a5f[_0x43e7('0x3e')][_0x43e7('0x41')]));_0x5d84f4[_0x43e7('0x42')]=_0x5d84f4['attributes'][_0x43e7('0x43')]?_0x5d84f4[_0x43e7('0x42')]:_0xfa0474['model'];if(!_0x4f1a5f[_0x43e7('0x3e')]['hasOwnProperty'](_0x43e7('0x44'))){_0x5d84f4['limit']=qs[_0x43e7('0x2a')](_0x4f1a5f[_0x43e7('0x3e')][_0x43e7('0x2a')]);_0x5d84f4[_0x43e7('0x29')]=qs['offset'](_0x4f1a5f['query'][_0x43e7('0x29')]);}_0x5d84f4[_0x43e7('0x45')]=qs[_0x43e7('0x46')](_0x4f1a5f[_0x43e7('0x3e')]['sort']);_0x5d84f4['where']=qs['filters'](_[_0x43e7('0x47')](_0x4f1a5f['query'],_0xfa0474[_0x43e7('0x3f')]),_0x199ff6);if(_0x4f1a5f['query']['filter']){_0x5d84f4[_0x43e7('0x48')]=_['merge'](_0x5d84f4[_0x43e7('0x48')],{'$or':_[_0x43e7('0x37')](_0x199ff6,function(_0x257bd8){if(_0x257bd8[_0x43e7('0x49')]!=='VIRTUAL'){var _0x91f1e4={};_0x91f1e4[_0x257bd8[_0x43e7('0x34')]]={'$like':'%'+_0x4f1a5f[_0x43e7('0x3e')][_0x43e7('0x4a')]+'%'};return _0x91f1e4;}})});}_0x5d84f4=_[_0x43e7('0x4b')]({},_0x5d84f4,_0x4f1a5f[_0x43e7('0x4c')]);var _0x51eef4={'where':_0x5d84f4['where']};return db[_0x43e7('0x38')][_0x43e7('0x28')](_0x51eef4)[_0x43e7('0x19')](function(_0x4c00a8){_0xfe70e9['count']=_0x4c00a8;if(_0x4f1a5f['query'][_0x43e7('0x4d')]){_0x5d84f4[_0x43e7('0x4e')]=[{'all':!![]}];}return db['Trunk'][_0x43e7('0x4f')](_0x5d84f4);})[_0x43e7('0x19')](function(_0x3c96fe){_0xfe70e9['rows']=_0x3c96fe;return _0xfe70e9;})['then'](respondWithFilteredResult(_0x5332d9,_0x5d84f4))['catch'](handleError(_0x5332d9,null));};exports['show']=function(_0x214e7e,_0xe955fc){var _0x52fea5={'raw':![],'where':{'id':_0x214e7e[_0x43e7('0x50')]['id']}},_0x23e7cb={};_0x23e7cb[_0x43e7('0x3c')]=_[_0x43e7('0x3d')](db['Trunk'][_0x43e7('0x39')]);_0x23e7cb['query']=_['keys'](_0x214e7e[_0x43e7('0x3e')]);_0x23e7cb[_0x43e7('0x3f')]=_[_0x43e7('0x40')](_0x23e7cb[_0x43e7('0x3c')],_0x23e7cb[_0x43e7('0x3e')]);_0x52fea5[_0x43e7('0x42')]=_[_0x43e7('0x40')](_0x23e7cb[_0x43e7('0x3c')],qs[_0x43e7('0x41')](_0x214e7e[_0x43e7('0x3e')]['fields']));_0x52fea5[_0x43e7('0x42')]=_0x52fea5[_0x43e7('0x42')]['length']?_0x52fea5[_0x43e7('0x42')]:_0x23e7cb['model'];if(_0x214e7e[_0x43e7('0x3e')][_0x43e7('0x4d')]){_0x52fea5[_0x43e7('0x4e')]=[{'all':!![]}];}_0x52fea5=_[_0x43e7('0x4b')]({},_0x52fea5,_0x214e7e[_0x43e7('0x4c')]);return db['Trunk']['find'](_0x52fea5)[_0x43e7('0x19')](handleEntityNotFound(_0xe955fc,null))[_0x43e7('0x19')](respondWithResult(_0xe955fc,null))[_0x43e7('0x23')](handleError(_0xe955fc,null));};exports[_0x43e7('0x51')]=function(_0x23d835,_0x25bb44){var _0xa47464={'where':{'id':_0x23d835[_0x43e7('0x50')]['id']}},_0x44f8a0={};_0x44f8a0[_0x43e7('0x3c')]=_[_0x43e7('0x3d')](db['Trunk'][_0x43e7('0x39')]);_0xa47464[_0x43e7('0x42')]=_['intersection'](_0x44f8a0[_0x43e7('0x3c')],qs[_0x43e7('0x41')](_0x23d835[_0x43e7('0x3e')]['fields']));_0xa47464['attributes']=_0xa47464[_0x43e7('0x42')][_0x43e7('0x43')]?_0xa47464['attributes']:_0x44f8a0[_0x43e7('0x3c')];if(_0x23d835['query']['includeAll']){_0xa47464[_0x43e7('0x4e')]=[{'all':!![]}];}_0xa47464=_[_0x43e7('0x4b')]({},_0xa47464,_0x23d835[_0x43e7('0x4c')]);return db[_0x43e7('0x38')][_0x43e7('0x52')](_0xa47464)['then'](handleEntityNotFound(_0x25bb44,null))[_0x43e7('0x19')](function(_0xdb9fbe){if(_0xdb9fbe){var _0x4d89bd=_0xdb9fbe[_0x43e7('0x53')]({'plain':!![]});_0x4d89bd=qs[_0x43e7('0x54')](_0x4d89bd,['id',_0x43e7('0x55'),'updatedAt']);_0x23d835['body']=_['omit'](_0x23d835[_0x43e7('0x56')],['id',_0x43e7('0x55'),_0x43e7('0x57')]);return db[_0x43e7('0x38')]['create'](_['merge'](_0x4d89bd,_0x23d835[_0x43e7('0x56')]),{'include':_0x23d835[_0x43e7('0x3e')][_0x43e7('0x4d')]?[{'all':!![]}]:undefined})[_0x43e7('0x19')](function(_0x5ea0db){var _0x4438c0=_0x23d835[_0x43e7('0x58')][_0x43e7('0x53')]({'plain':!![]});if(!_0x4438c0)throw new Error(_0x43e7('0x59'));if(_0x4438c0[_0x43e7('0x5a')]===_0x43e7('0x58')){var _0x4665db=_0x5ea0db[_0x43e7('0x53')]({'plain':!![]});var _0x406155=_0x43e7('0x31');return db[_0x43e7('0x5b')]['find']({'where':{'name':_0x406155,'userProfileId':_0x4438c0['userProfileId']},'raw':!![]})[_0x43e7('0x19')](function(_0x58a3a8){if(_0x58a3a8&&_0x58a3a8['autoAssociation']===0x0){return db['UserProfileResource'][_0x43e7('0x5c')]({'name':_0x4665db[_0x43e7('0x34')],'resourceId':_0x4665db['id'],'type':_0x58a3a8['name'],'sectionId':_0x58a3a8['id']},{})[_0x43e7('0x19')](function(){return _0x5ea0db;});}else{return _0x5ea0db;}})[_0x43e7('0x23')](function(_0x1d8438){logger['error'](_0x43e7('0x5d'),_0x1d8438);throw _0x1d8438;});}return _0x5ea0db;});}})[_0x43e7('0x19')](respondWithResult(_0x25bb44,0xc9))[_0x43e7('0x23')](handleError(_0x25bb44,null));};exports[_0x43e7('0x5c')]=function(_0x2f43d7,_0x472a19,_0x1e02fa){var _0x515f01;return db[_0x43e7('0x38')][_0x43e7('0x5c')](_0x2f43d7[_0x43e7('0x56')],{'raw':!![]})['then'](function(_0x56b06d){_0x515f01=_0x56b06d;return db[_0x43e7('0x38')]['findAll']({'raw':!![]});})['then'](function(_0x1b793d){var _0x154e47=fs['readFileSync'](path[_0x43e7('0x5e')](config[_0x43e7('0x5f')],_0x43e7('0x60')),_0x43e7('0x61'));var _0x16499c=fs[_0x43e7('0x62')](path[_0x43e7('0x5e')](config['root'],_0x43e7('0x63')),_0x43e7('0x61'));var _0x4e5956=ejs[_0x43e7('0x64')](_0x154e47,{'trunks':_0x1b793d||[]});fs['writeFileSync'](_0x43e7('0x65'),_0x4e5956);if(_0x515f01[_0x43e7('0x66')]){var _0x37301b=ejs[_0x43e7('0x64')](_0x16499c,{'trunks':_0x1b793d||[]});fs['writeFileSync'](_0x43e7('0x67'),_0x37301b);}})[_0x43e7('0x19')](function(){return respondWithRpcPromise(_0x43e7('0x68'),'create',{'module':_0x43e7('0x69')});})[_0x43e7('0x19')](function(){var _0x219dc6=_0x2f43d7[_0x43e7('0x58')][_0x43e7('0x53')]({'plain':!![]});if(!_0x219dc6)throw new Error('Unable\x20to\x20retrieve\x20the\x20current\x20user');if(_0x219dc6[_0x43e7('0x5a')]===_0x43e7('0x58')){var _0x35d133=_0x515f01[_0x43e7('0x53')]({'plain':!![]});return db[_0x43e7('0x5b')][_0x43e7('0x52')]({'where':{'name':_0x43e7('0x31'),'userProfileId':_0x219dc6['userProfileId']},'raw':!![]})['then'](function(_0x405faa){if(_0x405faa&&_0x405faa['autoAssociation']===0x0){return db['UserProfileResource']['create']({'name':_0x35d133[_0x43e7('0x34')],'resourceId':_0x35d133['id'],'type':_0x405faa[_0x43e7('0x34')],'sectionId':_0x405faa['id']},{})[_0x43e7('0x19')](function(){return _0x515f01;});}else{return _0x515f01;}})[_0x43e7('0x23')](function(_0x18713b){logger[_0x43e7('0x1e')]('Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s',_0x18713b);throw _0x18713b;});}return _0x515f01;})[_0x43e7('0x19')](respondWithResult(_0x472a19,0xc9))[_0x43e7('0x23')](handleError(_0x472a19,null));};exports[_0x43e7('0x2f')]=function(_0x5b4c76,_0x2abca0,_0xea84ec){var _0x184ae3;return db[_0x43e7('0x38')][_0x43e7('0x52')]({'where':{'id':_0x5b4c76[_0x43e7('0x50')]['id']}})[_0x43e7('0x19')](handleEntityNotFound(_0x2abca0,null))[_0x43e7('0x19')](saveUpdates(_0x5b4c76['body'],null))['then'](function(_0x55990c){if(_0x55990c){_0x184ae3=_0x55990c;return db[_0x43e7('0x38')][_0x43e7('0x4f')]({'raw':!![]});}})['then'](function(_0x3fe23f){if(_0x3fe23f){var _0x39a787=fs[_0x43e7('0x62')](path[_0x43e7('0x5e')](config['root'],'server/files/templates/trunk.ejs'),'utf8');var _0x177a7a=fs[_0x43e7('0x62')](path['join'](config['root'],_0x43e7('0x63')),_0x43e7('0x61'));var _0x3b7e5b=ejs['render'](_0x39a787,{'trunks':_0x3fe23f||[]});fs[_0x43e7('0x6a')](_0x43e7('0x65'),_0x3b7e5b);var _0x401654=ejs[_0x43e7('0x64')](_0x177a7a,{'trunks':_0x3fe23f||[]});fs['writeFileSync'](_0x43e7('0x67'),_0x401654);return respondWithRpcPromise('Reload',_0x43e7('0x2f'),{'module':_0x43e7('0x69')});}return null;})[_0x43e7('0x19')](function(_0x90667c){if(_0x90667c){return _0x184ae3;}})[_0x43e7('0x19')](respondWithResult(_0x2abca0,null))[_0x43e7('0x23')](handleError(_0x2abca0,null));};exports[_0x43e7('0x30')]=function(_0x5e8d4e,_0x109c86,_0x40257e){var _0x1aea4e;return db[_0x43e7('0x38')]['find']({'where':{'id':_0x5e8d4e['params']['id']}})['then'](handleEntityNotFound(_0x109c86,null))[_0x43e7('0x19')](removeEntity(_0x109c86,null))['then'](function(){return db[_0x43e7('0x38')][_0x43e7('0x4f')]({'raw':!![]});})[_0x43e7('0x19')](function(_0x7387f6){var _0xa75254=fs[_0x43e7('0x62')](path[_0x43e7('0x5e')](config[_0x43e7('0x5f')],_0x43e7('0x60')),_0x43e7('0x61'));var _0x3de22e=fs['readFileSync'](path[_0x43e7('0x5e')](config[_0x43e7('0x5f')],_0x43e7('0x63')),_0x43e7('0x61'));var _0x206e54=ejs['render'](_0xa75254,{'trunks':_0x7387f6});var _0x5e04ec=ejs[_0x43e7('0x64')](_0x3de22e,{'trunks':_0x7387f6});fs[_0x43e7('0x6a')]('/etc/asterisk/sip_xcally_trunks.conf',_0x206e54);fs[_0x43e7('0x6a')](_0x43e7('0x67'),_0x5e04ec);return respondWithRpcPromise('Reload','destroy',{'module':_0x43e7('0x69')});})[_0x43e7('0x23')](handleError(_0x109c86,null));};
\ No newline at end of file