Built motion from commit ddca4d0d.|2.5.47
[motion2.git] / server / api / trunk / trunk.controller.js
index 702e8bb..ec5fd0d 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xafdc=['length','hasOwnProperty','nolimit','limit','sort','where','pick','merge','type','filter','options','includeAll','findAll','rows','show','params','keys','find','clone','include','createdAt','body','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','UserProfileSection','userProfileId','autoAssociation','create','readFileSync','join','root','server/files/templates/trunk.ejs','utf8','server/files/templates/registry.ejs','render','registry','writeFileSync','/etc/asterisk/sip_xcally_registers.conf','Reload','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','/etc/asterisk/sip_xcally_trunks.conf','chan_sip.so','html-pdf','eml-format','zip-dir','fast-json-patch','moment','mustache','sox','to-csv','lodash','squel','jsforce','desk.js','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/license/util','jayson/promise','client','request','then','info','request\x20sent','debug','stringify','error','code','Trunk,\x20%s,\x20%s','message','result','catch','sendStatus','status','end','json','count','offset','set','apply','save','update','destroy','get','Trunks','UserProfileResource','stack','name','map','Trunk','rawAttributes','key','model','query','filters','intersection','attributes','fields'];(function(_0x418118,_0x38550d){var _0x548dad=function(_0x20f547){while(--_0x20f547){_0x418118['push'](_0x418118['shift']());}};_0x548dad(++_0x38550d);}(_0xafdc,0x163));var _0xcafd=function(_0x382053,_0x40af67){_0x382053=_0x382053-0x0;var _0x421fe5=_0xafdc[_0x382053];return _0x421fe5;};'use strict';var pdf=require(_0xcafd('0x0'));var emlformat=require(_0xcafd('0x1'));var rimraf=require('rimraf');var zipdir=require(_0xcafd('0x2'));var jsonpatch=require(_0xcafd('0x3'));var rp=require('request-promise');var moment=require(_0xcafd('0x4'));var BPromise=require('bluebird');var Mustache=require(_0xcafd('0x5'));var util=require('util');var path=require('path');var sox=require(_0xcafd('0x6'));var csv=require(_0xcafd('0x7'));var ejs=require('ejs');var fs=require('fs');var _=require(_0xcafd('0x8'));var squel=require(_0xcafd('0x9'));var crypto=require('crypto');var jsforce=require(_0xcafd('0xa'));var deskjs=require(_0xcafd('0xb'));var toCsv=require(_0xcafd('0x7'));var querystring=require('querystring');var Papa=require('papaparse');var Redis=require(_0xcafd('0xc'));var authService=require(_0xcafd('0xd'));var qs=require(_0xcafd('0xe'));var as=require(_0xcafd('0xf'));var hardwareService=require(_0xcafd('0x10'));var logger=require(_0xcafd('0x11'))(_0xcafd('0x12'));var utils=require(_0xcafd('0x13'));var config=require('../../config/environment');var licenseUtil=require(_0xcafd('0x14'));var db=require('../../mysqldb')['db'];var jayson=require(_0xcafd('0x15'));var client=jayson[_0xcafd('0x16')]['http']({'port':0x232a});function respondWithRpcPromise(_0x8eb38e,_0x2b9832,_0x4afe7d,_0x4fd525){return new BPromise(function(_0x5e247c,_0x891ac3){var _0x43165a=_0x4fd525||client;return _0x43165a[_0xcafd('0x17')](_0x8eb38e,_0x4afe7d)[_0xcafd('0x18')](function(_0x570219){logger[_0xcafd('0x19')]('Trunk,\x20%s,\x20%s',_0x2b9832,_0xcafd('0x1a'));logger[_0xcafd('0x1b')]('Trunk,\x20%s,\x20%s,\x20%s',_0x2b9832,_0xcafd('0x1a'),JSON[_0xcafd('0x1c')](_0x570219));if(_0x570219['error']){if(_0x570219[_0xcafd('0x1d')][_0xcafd('0x1e')]===0x1f4){logger[_0xcafd('0x1d')](_0xcafd('0x1f'),_0x2b9832,_0x570219[_0xcafd('0x1d')]['message']);return _0x891ac3(_0x570219[_0xcafd('0x1d')]['message']);}logger[_0xcafd('0x1d')](_0xcafd('0x1f'),_0x2b9832,_0x570219[_0xcafd('0x1d')]['message']);return _0x5e247c(_0x570219[_0xcafd('0x1d')][_0xcafd('0x20')]);}else{logger[_0xcafd('0x19')](_0xcafd('0x1f'),_0x2b9832,_0xcafd('0x1a'));_0x5e247c(_0x570219[_0xcafd('0x21')][_0xcafd('0x20')]);}})[_0xcafd('0x22')](function(_0x418b51){logger[_0xcafd('0x1d')]('Trunk,\x20%s,\x20%s',_0x2b9832,_0x418b51);_0x891ac3(_0x418b51);});});}function respondWithStatusCode(_0x463699,_0x3e7562){_0x3e7562=_0x3e7562||0xcc;return function(_0x1c18df){if(_0x1c18df){return _0x463699[_0xcafd('0x23')](_0x3e7562);}return _0x463699[_0xcafd('0x24')](_0x3e7562)[_0xcafd('0x25')]();};}function respondWithResult(_0x505c9a,_0x137db5){_0x137db5=_0x137db5||0xc8;return function(_0x3cc114){if(_0x3cc114){return _0x505c9a[_0xcafd('0x24')](_0x137db5)[_0xcafd('0x26')](_0x3cc114);}};}function respondWithFilteredResult(_0x280295,_0x412e52){return function(_0x54b295){if(_0x54b295){var _0xb590b2=_0x54b295[_0xcafd('0x27')],_0x4c5bb1=_0x412e52[_0xcafd('0x28')],_0x317670=_0x412e52[_0xcafd('0x28')]+_0x412e52['limit'],_0x14ba5a;if(_0x317670>=_0xb590b2){_0x317670=_0xb590b2;_0x14ba5a=0xc8;}else{_0x14ba5a=0xce;}_0x280295[_0xcafd('0x24')](_0x14ba5a);return _0x280295[_0xcafd('0x29')]('Content-Range',_0x4c5bb1+'-'+_0x317670+'/'+_0xb590b2)['json'](_0x54b295);}return null;};}function patchUpdates(_0x45b455){return function(_0x156216){try{jsonpatch[_0xcafd('0x2a')](_0x156216,_0x45b455,!![]);}catch(_0x38212f){return BPromise['reject'](_0x38212f);}return _0x156216[_0xcafd('0x2b')]();};}function saveUpdates(_0x1a757c,_0x21f09c){return function(_0x3c646b){if(_0x3c646b){return _0x3c646b[_0xcafd('0x2c')](_0x1a757c)[_0xcafd('0x18')](function(_0xe4d62c){return _0xe4d62c;});}return null;};}function removeEntity(_0x5eeb8d,_0x190dbb){return function(_0x2f0abf){if(_0x2f0abf){return _0x2f0abf[_0xcafd('0x2d')]()[_0xcafd('0x18')](function(){var _0x50b797=_0x2f0abf[_0xcafd('0x2e')]({'plain':!![]});var _0x5304e8=_0xcafd('0x2f');return db[_0xcafd('0x30')]['destroy']({'where':{'type':_0x5304e8,'resourceId':_0x50b797['id']}})[_0xcafd('0x18')](function(){return _0x2f0abf;});})[_0xcafd('0x18')](function(){_0x5eeb8d['status'](0xcc)[_0xcafd('0x25')]();});}};}function handleEntityNotFound(_0x381a90,_0x35486b){return function(_0x5088e7){if(!_0x5088e7){_0x381a90[_0xcafd('0x23')](0x194);}return _0x5088e7;};}function handleError(_0x55690c,_0x4e0b00){_0x4e0b00=_0x4e0b00||0x1f4;return function(_0x33f52c){logger[_0xcafd('0x1d')](_0x33f52c[_0xcafd('0x31')]);if(_0x33f52c[_0xcafd('0x32')]){delete _0x33f52c[_0xcafd('0x32')];}_0x55690c[_0xcafd('0x24')](_0x4e0b00)['send'](_0x33f52c);};}exports['index']=function(_0x91c11c,_0x3c63cf){var _0x1628c4={},_0xa35b84={},_0x22fcce={'count':0x0,'rows':[]};var _0x2fda0a=_[_0xcafd('0x33')](db[_0xcafd('0x34')][_0xcafd('0x35')],function(_0x4f3870){return{'name':_0x4f3870['fieldName'],'type':_0x4f3870['type'][_0xcafd('0x36')]};});_0xa35b84[_0xcafd('0x37')]=_[_0xcafd('0x33')](_0x2fda0a,_0xcafd('0x32'));_0xa35b84[_0xcafd('0x38')]=_['keys'](_0x91c11c[_0xcafd('0x38')]);_0xa35b84[_0xcafd('0x39')]=_[_0xcafd('0x3a')](_0xa35b84[_0xcafd('0x37')],_0xa35b84['query']);_0x1628c4[_0xcafd('0x3b')]=_[_0xcafd('0x3a')](_0xa35b84['model'],qs['fields'](_0x91c11c[_0xcafd('0x38')][_0xcafd('0x3c')]));_0x1628c4[_0xcafd('0x3b')]=_0x1628c4['attributes'][_0xcafd('0x3d')]?_0x1628c4[_0xcafd('0x3b')]:_0xa35b84[_0xcafd('0x37')];if(!_0x91c11c[_0xcafd('0x38')][_0xcafd('0x3e')](_0xcafd('0x3f'))){_0x1628c4[_0xcafd('0x40')]=qs[_0xcafd('0x40')](_0x91c11c[_0xcafd('0x38')][_0xcafd('0x40')]);_0x1628c4['offset']=qs[_0xcafd('0x28')](_0x91c11c[_0xcafd('0x38')][_0xcafd('0x28')]);}_0x1628c4['order']=qs[_0xcafd('0x41')](_0x91c11c[_0xcafd('0x38')][_0xcafd('0x41')]);_0x1628c4[_0xcafd('0x42')]=qs[_0xcafd('0x39')](_[_0xcafd('0x43')](_0x91c11c[_0xcafd('0x38')],_0xa35b84[_0xcafd('0x39')]),_0x2fda0a);if(_0x91c11c['query']['filter']){_0x1628c4['where']=_[_0xcafd('0x44')](_0x1628c4[_0xcafd('0x42')],{'$or':_[_0xcafd('0x33')](_0x2fda0a,function(_0x2be67d){if(_0x2be67d[_0xcafd('0x45')]!=='VIRTUAL'){var _0x7620a3={};_0x7620a3[_0x2be67d[_0xcafd('0x32')]]={'$like':'%'+_0x91c11c[_0xcafd('0x38')][_0xcafd('0x46')]+'%'};return _0x7620a3;}})});}_0x1628c4=_['merge']({},_0x1628c4,_0x91c11c[_0xcafd('0x47')]);var _0x304ab4={'where':_0x1628c4[_0xcafd('0x42')]};return db[_0xcafd('0x34')]['count'](_0x304ab4)['then'](function(_0x18568e){_0x22fcce[_0xcafd('0x27')]=_0x18568e;if(_0x91c11c['query'][_0xcafd('0x48')]){_0x1628c4['include']=[{'all':!![]}];}return db[_0xcafd('0x34')][_0xcafd('0x49')](_0x1628c4);})[_0xcafd('0x18')](function(_0x4e3696){_0x22fcce[_0xcafd('0x4a')]=_0x4e3696;return _0x22fcce;})['then'](respondWithFilteredResult(_0x3c63cf,_0x1628c4))['catch'](handleError(_0x3c63cf,null));};exports[_0xcafd('0x4b')]=function(_0x5a4044,_0xa6924f){var _0x55d792={'raw':![],'where':{'id':_0x5a4044[_0xcafd('0x4c')]['id']}},_0x1adc73={};_0x1adc73['model']=_[_0xcafd('0x4d')](db[_0xcafd('0x34')][_0xcafd('0x35')]);_0x1adc73[_0xcafd('0x38')]=_['keys'](_0x5a4044[_0xcafd('0x38')]);_0x1adc73[_0xcafd('0x39')]=_['intersection'](_0x1adc73['model'],_0x1adc73[_0xcafd('0x38')]);_0x55d792[_0xcafd('0x3b')]=_[_0xcafd('0x3a')](_0x1adc73['model'],qs[_0xcafd('0x3c')](_0x5a4044['query'][_0xcafd('0x3c')]));_0x55d792[_0xcafd('0x3b')]=_0x55d792[_0xcafd('0x3b')][_0xcafd('0x3d')]?_0x55d792[_0xcafd('0x3b')]:_0x1adc73['model'];if(_0x5a4044[_0xcafd('0x38')][_0xcafd('0x48')]){_0x55d792['include']=[{'all':!![]}];}_0x55d792=_['merge']({},_0x55d792,_0x5a4044[_0xcafd('0x47')]);return db[_0xcafd('0x34')][_0xcafd('0x4e')](_0x55d792)['then'](handleEntityNotFound(_0xa6924f,null))[_0xcafd('0x18')](respondWithResult(_0xa6924f,null))['catch'](handleError(_0xa6924f,null));};exports[_0xcafd('0x4f')]=function(_0x54972b,_0x450de6){var _0x2cc222={'where':{'id':_0x54972b['params']['id']}},_0x439b0d={};_0x439b0d[_0xcafd('0x37')]=_[_0xcafd('0x4d')](db[_0xcafd('0x34')][_0xcafd('0x35')]);_0x2cc222[_0xcafd('0x3b')]=_[_0xcafd('0x3a')](_0x439b0d[_0xcafd('0x37')],qs[_0xcafd('0x3c')](_0x54972b[_0xcafd('0x38')][_0xcafd('0x3c')]));_0x2cc222['attributes']=_0x2cc222[_0xcafd('0x3b')][_0xcafd('0x3d')]?_0x2cc222['attributes']:_0x439b0d['model'];if(_0x54972b[_0xcafd('0x38')][_0xcafd('0x48')]){_0x2cc222[_0xcafd('0x50')]=[{'all':!![]}];}_0x2cc222=_['merge']({},_0x2cc222,_0x54972b[_0xcafd('0x47')]);return db['Trunk']['find'](_0x2cc222)[_0xcafd('0x18')](handleEntityNotFound(_0x450de6,null))[_0xcafd('0x18')](function(_0x1419fb){if(_0x1419fb){var _0x5156d5=_0x1419fb['get']({'plain':!![]});_0x5156d5=qs['omit'](_0x5156d5,['id',_0xcafd('0x51'),'updatedAt']);_0x54972b[_0xcafd('0x52')]=_['omit'](_0x54972b['body'],['id',_0xcafd('0x51'),'updatedAt']);return db[_0xcafd('0x34')]['create'](_[_0xcafd('0x44')](_0x5156d5,_0x54972b[_0xcafd('0x52')]),{'include':_0x54972b[_0xcafd('0x38')][_0xcafd('0x48')]?[{'all':!![]}]:undefined})[_0xcafd('0x18')](function(_0x382255){var _0x44d9e4=_0x54972b[_0xcafd('0x53')][_0xcafd('0x2e')]({'plain':!![]});if(!_0x44d9e4)throw new Error(_0xcafd('0x54'));if(_0x44d9e4[_0xcafd('0x55')]===_0xcafd('0x53')){var _0x5f2f10=_0x382255['get']({'plain':!![]});var _0xa39307='Trunks';return db[_0xcafd('0x56')][_0xcafd('0x4e')]({'where':{'name':_0xa39307,'userProfileId':_0x44d9e4[_0xcafd('0x57')]},'raw':!![]})['then'](function(_0x11df14){if(_0x11df14&&_0x11df14[_0xcafd('0x58')]===0x0){return db[_0xcafd('0x30')][_0xcafd('0x59')]({'name':_0x5f2f10[_0xcafd('0x32')],'resourceId':_0x5f2f10['id'],'type':_0x11df14['name'],'sectionId':_0x11df14['id']},{})[_0xcafd('0x18')](function(){return _0x382255;});}else{return _0x382255;}})[_0xcafd('0x22')](function(_0x3bcd99){logger['error']('Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s',_0x3bcd99);throw _0x3bcd99;});}return _0x382255;});}})[_0xcafd('0x18')](respondWithResult(_0x450de6,0xc9))[_0xcafd('0x22')](handleError(_0x450de6,null));};exports[_0xcafd('0x59')]=function(_0xeca33e,_0x13b683,_0x12449d){var _0x3318bc;return db[_0xcafd('0x34')][_0xcafd('0x59')](_0xeca33e[_0xcafd('0x52')],{'raw':!![]})[_0xcafd('0x18')](function(_0x5de862){_0x3318bc=_0x5de862;return db[_0xcafd('0x34')][_0xcafd('0x49')]({'raw':!![]});})[_0xcafd('0x18')](function(_0x3234d1){var _0x278fd6=fs[_0xcafd('0x5a')](path[_0xcafd('0x5b')](config[_0xcafd('0x5c')],_0xcafd('0x5d')),_0xcafd('0x5e'));var _0xcf9762=fs['readFileSync'](path[_0xcafd('0x5b')](config[_0xcafd('0x5c')],_0xcafd('0x5f')),_0xcafd('0x5e'));var _0x24b261=ejs[_0xcafd('0x60')](_0x278fd6,{'trunks':_0x3234d1||[]});fs['writeFileSync']('/etc/asterisk/sip_xcally_trunks.conf',_0x24b261);if(_0x3318bc[_0xcafd('0x61')]){var _0x4c5e5e=ejs[_0xcafd('0x60')](_0xcf9762,{'trunks':_0x3234d1||[]});fs[_0xcafd('0x62')](_0xcafd('0x63'),_0x4c5e5e);}})[_0xcafd('0x18')](function(){return respondWithRpcPromise(_0xcafd('0x64'),_0xcafd('0x59'),{'module':'chan_sip.so'});})[_0xcafd('0x18')](function(){var _0x4b3242=_0xeca33e[_0xcafd('0x53')][_0xcafd('0x2e')]({'plain':!![]});if(!_0x4b3242)throw new Error(_0xcafd('0x54'));if(_0x4b3242[_0xcafd('0x55')]===_0xcafd('0x53')){var _0x11a628=_0x3318bc[_0xcafd('0x2e')]({'plain':!![]});return db['UserProfileSection'][_0xcafd('0x4e')]({'where':{'name':'Trunks','userProfileId':_0x4b3242[_0xcafd('0x57')]},'raw':!![]})['then'](function(_0x55e3f7){if(_0x55e3f7&&_0x55e3f7['autoAssociation']===0x0){return db['UserProfileResource']['create']({'name':_0x11a628[_0xcafd('0x32')],'resourceId':_0x11a628['id'],'type':_0x55e3f7['name'],'sectionId':_0x55e3f7['id']},{})[_0xcafd('0x18')](function(){return _0x3318bc;});}else{return _0x3318bc;}})['catch'](function(_0x5f3aad){logger[_0xcafd('0x1d')](_0xcafd('0x65'),_0x5f3aad);throw _0x5f3aad;});}return _0x3318bc;})[_0xcafd('0x18')](respondWithResult(_0x13b683,0xc9))[_0xcafd('0x22')](handleError(_0x13b683,null));};exports[_0xcafd('0x2c')]=function(_0x2e330a,_0x22dc33,_0x4fc1fd){var _0x1f6d7b;return db['Trunk']['find']({'where':{'id':_0x2e330a['params']['id']}})['then'](handleEntityNotFound(_0x22dc33,null))[_0xcafd('0x18')](saveUpdates(_0x2e330a[_0xcafd('0x52')],null))[_0xcafd('0x18')](function(_0x337d98){if(_0x337d98){_0x1f6d7b=_0x337d98;return db['Trunk'][_0xcafd('0x49')]({'raw':!![]});}})[_0xcafd('0x18')](function(_0x446f93){if(_0x446f93){var _0x203cd6=fs[_0xcafd('0x5a')](path[_0xcafd('0x5b')](config[_0xcafd('0x5c')],'server/files/templates/trunk.ejs'),_0xcafd('0x5e'));var _0x255475=fs[_0xcafd('0x5a')](path['join'](config[_0xcafd('0x5c')],'server/files/templates/registry.ejs'),_0xcafd('0x5e'));var _0x214c1d=ejs[_0xcafd('0x60')](_0x203cd6,{'trunks':_0x446f93||[]});fs[_0xcafd('0x62')](_0xcafd('0x66'),_0x214c1d);var _0x16e02f=ejs[_0xcafd('0x60')](_0x255475,{'trunks':_0x446f93||[]});fs[_0xcafd('0x62')](_0xcafd('0x63'),_0x16e02f);return respondWithRpcPromise('Reload',_0xcafd('0x2c'),{'module':'chan_sip.so'});}return null;})['then'](function(_0x1a11c3){if(_0x1a11c3){return _0x1f6d7b;}})[_0xcafd('0x18')](respondWithResult(_0x22dc33,null))['catch'](handleError(_0x22dc33,null));};exports['destroy']=function(_0x1370ed,_0x1619be,_0x417919){var _0x5e5c64;return db[_0xcafd('0x34')][_0xcafd('0x4e')]({'where':{'id':_0x1370ed[_0xcafd('0x4c')]['id']}})[_0xcafd('0x18')](handleEntityNotFound(_0x1619be,null))[_0xcafd('0x18')](removeEntity(_0x1619be,null))[_0xcafd('0x18')](function(){return db['Trunk'][_0xcafd('0x49')]({'raw':!![]});})['then'](function(_0x272f04){var _0x51fc1d=fs[_0xcafd('0x5a')](path['join'](config['root'],_0xcafd('0x5d')),_0xcafd('0x5e'));var _0xeea60a=fs['readFileSync'](path[_0xcafd('0x5b')](config[_0xcafd('0x5c')],_0xcafd('0x5f')),_0xcafd('0x5e'));var _0x4049de=ejs[_0xcafd('0x60')](_0x51fc1d,{'trunks':_0x272f04});var _0x5dc9ec=ejs[_0xcafd('0x60')](_0xeea60a,{'trunks':_0x272f04});fs[_0xcafd('0x62')](_0xcafd('0x66'),_0x4049de);fs['writeFileSync'](_0xcafd('0x63'),_0x5dc9ec);return respondWithRpcPromise('Reload',_0xcafd('0x2d'),{'module':_0xcafd('0x67')});})[_0xcafd('0x22')](handleError(_0x1619be,null));};
\ No newline at end of file
+var _0xa41a=['server/files/templates/registry.ejs','eml-format','rimraf','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','sox','ejs','fs-extra','crypto','jsforce','to-csv','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/utils','../../config/environment','jayson/promise','http','request','then','info','Trunk,\x20%s,\x20%s','debug','Trunk,\x20%s,\x20%s,\x20%s','request\x20sent','stringify','error','code','message','result','catch','sendStatus','status','json','offset','undefined','limit','count','set','reject','update','destroy','get','UserProfileResource','end','name','send','map','Trunk','fieldName','type','key','query','intersection','model','attributes','fields','length','order','filters','where','merge','VIRTUAL','filter','options','includeAll','include','findAll','show','params','keys','rawAttributes','find','createdAt','updatedAt','body','create','user','UserProfileSection','userProfileId','autoAssociation','readFileSync','join','root','server/files/templates/trunk.ejs','utf8','render','/etc/asterisk/sip_xcally_trunks.conf','registry','writeFileSync','/etc/asterisk/sip_xcally_registers.conf','chan_sip.so','role','Trunks','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','Reload'];(function(_0x3e84dc,_0x2e616c){var _0x1b2843=function(_0x485a29){while(--_0x485a29){_0x3e84dc['push'](_0x3e84dc['shift']());}};_0x1b2843(++_0x2e616c);}(_0xa41a,0x6b));var _0xaa41=function(_0x51ac0b,_0x324491){_0x51ac0b=_0x51ac0b-0x0;var _0x568820=_0xa41a[_0x51ac0b];return _0x568820;};'use strict';var emlformat=require(_0xaa41('0x0'));var rimraf=require(_0xaa41('0x1'));var zipdir=require('zip-dir');var jsonpatch=require(_0xaa41('0x2'));var rp=require(_0xaa41('0x3'));var moment=require(_0xaa41('0x4'));var BPromise=require(_0xaa41('0x5'));var Mustache=require(_0xaa41('0x6'));var util=require(_0xaa41('0x7'));var path=require(_0xaa41('0x8'));var sox=require(_0xaa41('0x9'));var csv=require('to-csv');var ejs=require(_0xaa41('0xa'));var fs=require('fs');var fs_extra=require(_0xaa41('0xb'));var _=require('lodash');var squel=require('squel');var crypto=require(_0xaa41('0xc'));var jsforce=require(_0xaa41('0xd'));var deskjs=require('desk.js');var toCsv=require(_0xaa41('0xe'));var querystring=require(_0xaa41('0xf'));var Papa=require(_0xaa41('0x10'));var Redis=require(_0xaa41('0x11'));var authService=require(_0xaa41('0x12'));var qs=require(_0xaa41('0x13'));var as=require(_0xaa41('0x14'));var hardwareService=require(_0xaa41('0x15'));var logger=require(_0xaa41('0x16'))('api');var utils=require(_0xaa41('0x17'));var config=require(_0xaa41('0x18'));var licenseUtil=require('../../config/license/util');var db=require('../../mysqldb')['db'];var jayson=require(_0xaa41('0x19'));var client=jayson['client'][_0xaa41('0x1a')]({'port':0x232a});function respondWithRpcPromise(_0x12d9e6,_0x2f64bc,_0x889d44,_0x6f9ade){return new BPromise(function(_0x4eaf81,_0x1e9d7f){var _0x178170=_0x6f9ade||client;return _0x178170[_0xaa41('0x1b')](_0x12d9e6,_0x889d44)[_0xaa41('0x1c')](function(_0x2a6988){logger[_0xaa41('0x1d')](_0xaa41('0x1e'),_0x2f64bc,'request\x20sent');logger[_0xaa41('0x1f')](_0xaa41('0x20'),_0x2f64bc,_0xaa41('0x21'),JSON[_0xaa41('0x22')](_0x2a6988));if(_0x2a6988[_0xaa41('0x23')]){if(_0x2a6988[_0xaa41('0x23')][_0xaa41('0x24')]===0x1f4){logger[_0xaa41('0x23')](_0xaa41('0x1e'),_0x2f64bc,_0x2a6988['error']['message']);return _0x1e9d7f(_0x2a6988[_0xaa41('0x23')][_0xaa41('0x25')]);}logger[_0xaa41('0x23')]('Trunk,\x20%s,\x20%s',_0x2f64bc,_0x2a6988[_0xaa41('0x23')][_0xaa41('0x25')]);return _0x4eaf81(_0x2a6988['error']['message']);}else{logger[_0xaa41('0x1d')]('Trunk,\x20%s,\x20%s',_0x2f64bc,_0xaa41('0x21'));_0x4eaf81(_0x2a6988[_0xaa41('0x26')][_0xaa41('0x25')]);}})[_0xaa41('0x27')](function(_0x1d623c){logger['error'](_0xaa41('0x1e'),_0x2f64bc,_0x1d623c);_0x1e9d7f(_0x1d623c);});});}function respondWithStatusCode(_0x43a85c,_0x448a21){_0x448a21=_0x448a21||0xcc;return function(_0x21f596){if(_0x21f596){return _0x43a85c[_0xaa41('0x28')](_0x448a21);}return _0x43a85c[_0xaa41('0x29')](_0x448a21)['end']();};}function respondWithResult(_0x5795f4,_0x16aec5){_0x16aec5=_0x16aec5||0xc8;return function(_0x527cac){if(_0x527cac){return _0x5795f4['status'](_0x16aec5)[_0xaa41('0x2a')](_0x527cac);}};}function respondWithFilteredResult(_0x59707f,_0x536bed){return function(_0x2d0ac0){if(_0x2d0ac0){var _0x9c8c21=typeof _0x536bed[_0xaa41('0x2b')]===_0xaa41('0x2c')&&typeof _0x536bed[_0xaa41('0x2d')]===_0xaa41('0x2c');var _0x57ef96=_0x2d0ac0[_0xaa41('0x2e')];var _0x1f0275=_0x9c8c21?0x0:_0x536bed[_0xaa41('0x2b')];var _0x9a16e3=_0x9c8c21?_0x2d0ac0[_0xaa41('0x2e')]:_0x536bed[_0xaa41('0x2b')]+_0x536bed[_0xaa41('0x2d')];var _0x104a95;if(_0x9a16e3>=_0x57ef96){_0x9a16e3=_0x57ef96;_0x104a95=0xc8;}else{_0x104a95=0xce;}_0x59707f['status'](_0x104a95);return _0x59707f[_0xaa41('0x2f')]('Content-Range',_0x1f0275+'-'+_0x9a16e3+'/'+_0x57ef96)['json'](_0x2d0ac0);}return null;};}function patchUpdates(_0x714537){return function(_0x1176bd){try{jsonpatch['apply'](_0x1176bd,_0x714537,!![]);}catch(_0x392b5d){return BPromise[_0xaa41('0x30')](_0x392b5d);}return _0x1176bd['save']();};}function saveUpdates(_0x5022fb,_0x5c25fb){return function(_0x1cf3da){if(_0x1cf3da){return _0x1cf3da[_0xaa41('0x31')](_0x5022fb)[_0xaa41('0x1c')](function(_0x38afc4){return _0x38afc4;});}return null;};}function removeEntity(_0x58f203,_0x289c4a){return function(_0x45c8fe){if(_0x45c8fe){return _0x45c8fe[_0xaa41('0x32')]()['then'](function(){var _0x387c55=_0x45c8fe[_0xaa41('0x33')]({'plain':!![]});var _0x321eb7='Trunks';return db[_0xaa41('0x34')][_0xaa41('0x32')]({'where':{'type':_0x321eb7,'resourceId':_0x387c55['id']}})['then'](function(){return _0x45c8fe;});})[_0xaa41('0x1c')](function(){_0x58f203[_0xaa41('0x29')](0xcc)[_0xaa41('0x35')]();});}};}function handleEntityNotFound(_0x5cec87,_0x22b272){return function(_0x48335f){if(!_0x48335f){_0x5cec87[_0xaa41('0x28')](0x194);}return _0x48335f;};}function handleError(_0x199b24,_0xf13742){_0xf13742=_0xf13742||0x1f4;return function(_0x49b77a){logger['error'](_0x49b77a['stack']);if(_0x49b77a[_0xaa41('0x36')]){delete _0x49b77a[_0xaa41('0x36')];}_0x199b24[_0xaa41('0x29')](_0xf13742)[_0xaa41('0x37')](_0x49b77a);};}exports['index']=function(_0x53a2e4,_0x267999){var _0x5673c={},_0x951e52={},_0x4e8d2e={'count':0x0,'rows':[]};var _0xba115a=_[_0xaa41('0x38')](db[_0xaa41('0x39')]['rawAttributes'],function(_0x3adc28){return{'name':_0x3adc28[_0xaa41('0x3a')],'type':_0x3adc28[_0xaa41('0x3b')][_0xaa41('0x3c')]};});_0x951e52['model']=_['map'](_0xba115a,_0xaa41('0x36'));_0x951e52[_0xaa41('0x3d')]=_['keys'](_0x53a2e4[_0xaa41('0x3d')]);_0x951e52['filters']=_[_0xaa41('0x3e')](_0x951e52[_0xaa41('0x3f')],_0x951e52[_0xaa41('0x3d')]);_0x5673c[_0xaa41('0x40')]=_[_0xaa41('0x3e')](_0x951e52[_0xaa41('0x3f')],qs[_0xaa41('0x41')](_0x53a2e4[_0xaa41('0x3d')]['fields']));_0x5673c[_0xaa41('0x40')]=_0x5673c[_0xaa41('0x40')][_0xaa41('0x42')]?_0x5673c[_0xaa41('0x40')]:_0x951e52[_0xaa41('0x3f')];if(!_0x53a2e4[_0xaa41('0x3d')]['hasOwnProperty']('nolimit')){_0x5673c[_0xaa41('0x2d')]=qs['limit'](_0x53a2e4[_0xaa41('0x3d')][_0xaa41('0x2d')]);_0x5673c[_0xaa41('0x2b')]=qs[_0xaa41('0x2b')](_0x53a2e4[_0xaa41('0x3d')][_0xaa41('0x2b')]);}_0x5673c[_0xaa41('0x43')]=qs['sort'](_0x53a2e4[_0xaa41('0x3d')]['sort']);_0x5673c['where']=qs[_0xaa41('0x44')](_['pick'](_0x53a2e4['query'],_0x951e52['filters']),_0xba115a);if(_0x53a2e4[_0xaa41('0x3d')]['filter']){_0x5673c[_0xaa41('0x45')]=_[_0xaa41('0x46')](_0x5673c['where'],{'$or':_['map'](_0xba115a,function(_0xe58f5e){if(_0xe58f5e[_0xaa41('0x3b')]!==_0xaa41('0x47')){var _0x2af8ba={};_0x2af8ba[_0xe58f5e[_0xaa41('0x36')]]={'$like':'%'+_0x53a2e4[_0xaa41('0x3d')][_0xaa41('0x48')]+'%'};return _0x2af8ba;}})});}_0x5673c=_[_0xaa41('0x46')]({},_0x5673c,_0x53a2e4[_0xaa41('0x49')]);var _0x4e1ac4={'where':_0x5673c[_0xaa41('0x45')]};return db[_0xaa41('0x39')][_0xaa41('0x2e')](_0x4e1ac4)[_0xaa41('0x1c')](function(_0x206d86){_0x4e8d2e[_0xaa41('0x2e')]=_0x206d86;if(_0x53a2e4['query'][_0xaa41('0x4a')]){_0x5673c[_0xaa41('0x4b')]=[{'all':!![]}];}return db[_0xaa41('0x39')][_0xaa41('0x4c')](_0x5673c);})['then'](function(_0x23bc61){_0x4e8d2e['rows']=_0x23bc61;return _0x4e8d2e;})['then'](respondWithFilteredResult(_0x267999,_0x5673c))[_0xaa41('0x27')](handleError(_0x267999,null));};exports[_0xaa41('0x4d')]=function(_0x3e16ef,_0x4ca114){var _0xb4773b={'raw':![],'where':{'id':_0x3e16ef[_0xaa41('0x4e')]['id']}},_0x3e1a73={};_0x3e1a73['model']=_[_0xaa41('0x4f')](db[_0xaa41('0x39')][_0xaa41('0x50')]);_0x3e1a73[_0xaa41('0x3d')]=_[_0xaa41('0x4f')](_0x3e16ef[_0xaa41('0x3d')]);_0x3e1a73[_0xaa41('0x44')]=_[_0xaa41('0x3e')](_0x3e1a73['model'],_0x3e1a73[_0xaa41('0x3d')]);_0xb4773b['attributes']=_['intersection'](_0x3e1a73[_0xaa41('0x3f')],qs[_0xaa41('0x41')](_0x3e16ef[_0xaa41('0x3d')][_0xaa41('0x41')]));_0xb4773b[_0xaa41('0x40')]=_0xb4773b[_0xaa41('0x40')][_0xaa41('0x42')]?_0xb4773b[_0xaa41('0x40')]:_0x3e1a73['model'];if(_0x3e16ef[_0xaa41('0x3d')][_0xaa41('0x4a')]){_0xb4773b[_0xaa41('0x4b')]=[{'all':!![]}];}_0xb4773b=_['merge']({},_0xb4773b,_0x3e16ef[_0xaa41('0x49')]);return db[_0xaa41('0x39')]['find'](_0xb4773b)[_0xaa41('0x1c')](handleEntityNotFound(_0x4ca114,null))[_0xaa41('0x1c')](respondWithResult(_0x4ca114,null))[_0xaa41('0x27')](handleError(_0x4ca114,null));};exports['clone']=function(_0x2cf32c,_0xc8e626){var _0x4e3b13={'where':{'id':_0x2cf32c[_0xaa41('0x4e')]['id']}},_0x49789a={};_0x49789a[_0xaa41('0x3f')]=_[_0xaa41('0x4f')](db['Trunk'][_0xaa41('0x50')]);_0x4e3b13[_0xaa41('0x40')]=_[_0xaa41('0x3e')](_0x49789a[_0xaa41('0x3f')],qs[_0xaa41('0x41')](_0x2cf32c['query'][_0xaa41('0x41')]));_0x4e3b13['attributes']=_0x4e3b13['attributes'][_0xaa41('0x42')]?_0x4e3b13['attributes']:_0x49789a[_0xaa41('0x3f')];if(_0x2cf32c[_0xaa41('0x3d')][_0xaa41('0x4a')]){_0x4e3b13['include']=[{'all':!![]}];}_0x4e3b13=_[_0xaa41('0x46')]({},_0x4e3b13,_0x2cf32c[_0xaa41('0x49')]);return db[_0xaa41('0x39')][_0xaa41('0x51')](_0x4e3b13)[_0xaa41('0x1c')](handleEntityNotFound(_0xc8e626,null))[_0xaa41('0x1c')](function(_0xc56018){if(_0xc56018){var _0x337059=_0xc56018[_0xaa41('0x33')]({'plain':!![]});_0x337059=qs['omit'](_0x337059,['id',_0xaa41('0x52'),_0xaa41('0x53')]);_0x2cf32c[_0xaa41('0x54')]=_['omit'](_0x2cf32c[_0xaa41('0x54')],['id',_0xaa41('0x52'),_0xaa41('0x53')]);return db[_0xaa41('0x39')][_0xaa41('0x55')](_[_0xaa41('0x46')](_0x337059,_0x2cf32c[_0xaa41('0x54')]),{'include':_0x2cf32c['query']['includeAll']?[{'all':!![]}]:undefined})['then'](function(_0x540325){var _0x4ec357=_0x2cf32c['user'][_0xaa41('0x33')]({'plain':!![]});if(!_0x4ec357)throw new Error('Unable\x20to\x20retrieve\x20the\x20current\x20user');if(_0x4ec357['role']===_0xaa41('0x56')){var _0x40a524=_0x540325[_0xaa41('0x33')]({'plain':!![]});var _0x312eee='Trunks';return db[_0xaa41('0x57')][_0xaa41('0x51')]({'where':{'name':_0x312eee,'userProfileId':_0x4ec357[_0xaa41('0x58')]},'raw':!![]})[_0xaa41('0x1c')](function(_0xa71432){if(_0xa71432&&_0xa71432[_0xaa41('0x59')]===0x0){return db[_0xaa41('0x34')][_0xaa41('0x55')]({'name':_0x40a524[_0xaa41('0x36')],'resourceId':_0x40a524['id'],'type':_0xa71432['name'],'sectionId':_0xa71432['id']},{})[_0xaa41('0x1c')](function(){return _0x540325;});}else{return _0x540325;}})[_0xaa41('0x27')](function(_0x50170f){logger['error']('Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s',_0x50170f);throw _0x50170f;});}return _0x540325;});}})[_0xaa41('0x1c')](respondWithResult(_0xc8e626,0xc9))['catch'](handleError(_0xc8e626,null));};exports[_0xaa41('0x55')]=function(_0x5c8028,_0x5423b6,_0x18d18b){var _0x4b1ec4;return db[_0xaa41('0x39')][_0xaa41('0x55')](_0x5c8028[_0xaa41('0x54')],{'raw':!![]})[_0xaa41('0x1c')](function(_0x5a2683){_0x4b1ec4=_0x5a2683;return db['Trunk'][_0xaa41('0x4c')]({'raw':!![]});})[_0xaa41('0x1c')](function(_0x4d6d0c){var _0x5954ba=fs[_0xaa41('0x5a')](path[_0xaa41('0x5b')](config[_0xaa41('0x5c')],_0xaa41('0x5d')),_0xaa41('0x5e'));var _0x5a385e=fs[_0xaa41('0x5a')](path['join'](config['root'],'server/files/templates/registry.ejs'),_0xaa41('0x5e'));var _0x19ec63=ejs[_0xaa41('0x5f')](_0x5954ba,{'trunks':_0x4d6d0c||[]});fs['writeFileSync'](_0xaa41('0x60'),_0x19ec63);if(_0x4b1ec4[_0xaa41('0x61')]){var _0x19ed68=ejs[_0xaa41('0x5f')](_0x5a385e,{'trunks':_0x4d6d0c||[]});fs[_0xaa41('0x62')](_0xaa41('0x63'),_0x19ed68);}})[_0xaa41('0x1c')](function(){return respondWithRpcPromise('Reload',_0xaa41('0x55'),{'module':_0xaa41('0x64')});})[_0xaa41('0x1c')](function(){var _0x175ca9=_0x5c8028['user'][_0xaa41('0x33')]({'plain':!![]});if(!_0x175ca9)throw new Error('Unable\x20to\x20retrieve\x20the\x20current\x20user');if(_0x175ca9[_0xaa41('0x65')]===_0xaa41('0x56')){var _0x2b9e68=_0x4b1ec4[_0xaa41('0x33')]({'plain':!![]});return db['UserProfileSection'][_0xaa41('0x51')]({'where':{'name':_0xaa41('0x66'),'userProfileId':_0x175ca9[_0xaa41('0x58')]},'raw':!![]})[_0xaa41('0x1c')](function(_0x59052d){if(_0x59052d&&_0x59052d[_0xaa41('0x59')]===0x0){return db['UserProfileResource'][_0xaa41('0x55')]({'name':_0x2b9e68[_0xaa41('0x36')],'resourceId':_0x2b9e68['id'],'type':_0x59052d['name'],'sectionId':_0x59052d['id']},{})[_0xaa41('0x1c')](function(){return _0x4b1ec4;});}else{return _0x4b1ec4;}})[_0xaa41('0x27')](function(_0x2ba160){logger[_0xaa41('0x23')](_0xaa41('0x67'),_0x2ba160);throw _0x2ba160;});}return _0x4b1ec4;})[_0xaa41('0x1c')](respondWithResult(_0x5423b6,0xc9))[_0xaa41('0x27')](handleError(_0x5423b6,null));};exports[_0xaa41('0x31')]=function(_0x33b5f4,_0x3d4f1e,_0x25a064){var _0x59a30b;return db[_0xaa41('0x39')][_0xaa41('0x51')]({'where':{'id':_0x33b5f4[_0xaa41('0x4e')]['id']}})['then'](handleEntityNotFound(_0x3d4f1e,null))['then'](saveUpdates(_0x33b5f4[_0xaa41('0x54')],null))[_0xaa41('0x1c')](function(_0x59fd6a){if(_0x59fd6a){_0x59a30b=_0x59fd6a;return db[_0xaa41('0x39')][_0xaa41('0x4c')]({'raw':!![]});}})['then'](function(_0x305050){if(_0x305050){var _0x3dd47e=fs[_0xaa41('0x5a')](path[_0xaa41('0x5b')](config[_0xaa41('0x5c')],_0xaa41('0x5d')),_0xaa41('0x5e'));var _0x1472be=fs['readFileSync'](path['join'](config[_0xaa41('0x5c')],'server/files/templates/registry.ejs'),_0xaa41('0x5e'));var _0x44154f=ejs[_0xaa41('0x5f')](_0x3dd47e,{'trunks':_0x305050||[]});fs['writeFileSync'](_0xaa41('0x60'),_0x44154f);var _0x404c38=ejs[_0xaa41('0x5f')](_0x1472be,{'trunks':_0x305050||[]});fs['writeFileSync'](_0xaa41('0x63'),_0x404c38);return respondWithRpcPromise(_0xaa41('0x68'),'update',{'module':_0xaa41('0x64')});}return null;})['then'](function(_0x53faf4){if(_0x53faf4){return _0x59a30b;}})[_0xaa41('0x1c')](respondWithResult(_0x3d4f1e,null))[_0xaa41('0x27')](handleError(_0x3d4f1e,null));};exports['destroy']=function(_0x5a8cb0,_0x241e1a,_0x1726ec){var _0x3c189d;return db[_0xaa41('0x39')]['find']({'where':{'id':_0x5a8cb0[_0xaa41('0x4e')]['id']}})[_0xaa41('0x1c')](handleEntityNotFound(_0x241e1a,null))[_0xaa41('0x1c')](removeEntity(_0x241e1a,null))['then'](function(){return db[_0xaa41('0x39')][_0xaa41('0x4c')]({'raw':!![]});})[_0xaa41('0x1c')](function(_0x5697b6){var _0x183b36=fs['readFileSync'](path['join'](config[_0xaa41('0x5c')],_0xaa41('0x5d')),'utf8');var _0x399fbd=fs[_0xaa41('0x5a')](path[_0xaa41('0x5b')](config['root'],_0xaa41('0x69')),_0xaa41('0x5e'));var _0x1a2deb=ejs[_0xaa41('0x5f')](_0x183b36,{'trunks':_0x5697b6});var _0x38f5d0=ejs['render'](_0x399fbd,{'trunks':_0x5697b6});fs[_0xaa41('0x62')]('/etc/asterisk/sip_xcally_trunks.conf',_0x1a2deb);fs[_0xaa41('0x62')](_0xaa41('0x63'),_0x38f5d0);return respondWithRpcPromise(_0xaa41('0x68'),_0xaa41('0x32'),{'module':_0xaa41('0x64')});})[_0xaa41('0x27')](handleError(_0x241e1a,null));};
\ No newline at end of file