18 var _0x7a40=['Sequelize','The\x20password\x20must\x20be\x20at\x20least\x208\x20characters\x20long\x20and\x20have\x201\x20lowercase\x20character,\x201\x20uppercase\x20character,\x201\x20number\x20and\x201\x20special\x20character\x20~!@#$%^&-_=+[{]}.','then','info','Trunk,\x20%s,\x20%s','request\x20sent','Trunk,\x20%s,\x20%s,\x20%s','error','code','message','result','catch','sendStatus','end','status','offset','limit','set','json','reject','save','update','get','Trunks','UserProfileResource','name','send','index','map','rawAttributes','fieldName','type','key','model','query','keys','filters','intersection','attributes','fields','length','hasOwnProperty','order','sort','where','filter','merge','VIRTUAL','Trunk','count','findAll','show','includeAll','options','find','clone','params','include','createdAt','updatedAt','body','Unable\x20to\x20retrieve\x20the\x20current\x20user','UserProfileSection','userProfileId','autoAssociation','create','readFileSync','server/files/templates/trunk.ejs','utf8','join','root','server/files/templates/registry.ejs','render','/etc/asterisk/sip_xcally_trunks.conf','registry','writeFileSync','/etc/asterisk/sip_xcally_registers.conf','chan_sip.so','user','role','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','Reload','destroy','html-pdf','eml-format','rimraf','fast-json-patch','request-promise','moment','bluebird','mustache','path','sox','to-csv','ejs','lodash','crypto','jsforce','desk.js','papaparse','ioredis','../../components/parsers/advancedSearch','../../config/logger','../../config/utils','../../mysqldb','jayson/promise','client','http'];(function(_0x261999,_0x15f7e8){var _0x109e04=function(_0x4c8e93){while(--_0x4c8e93){_0x261999['push'](_0x261999['shift']());}};_0x109e04(++_0x15f7e8);}(_0x7a40,0x197));var _0x07a4=function(_0x3858ff,_0x1a165d){_0x3858ff=_0x3858ff-0x0;var _0x1df232=_0x7a40[_0x3858ff];return _0x1df232;};'use strict';var pdf=require(_0x07a4('0x0'));var emlformat=require(_0x07a4('0x1'));var rimraf=require(_0x07a4('0x2'));var zipdir=require('zip-dir');var jsonpatch=require(_0x07a4('0x3'));var rp=require(_0x07a4('0x4'));var moment=require(_0x07a4('0x5'));var BPromise=require(_0x07a4('0x6'));var Mustache=require(_0x07a4('0x7'));var util=require('util');var path=require(_0x07a4('0x8'));var sox=require(_0x07a4('0x9'));var csv=require(_0x07a4('0xa'));var ejs=require(_0x07a4('0xb'));var fs=require('fs');var _=require(_0x07a4('0xc'));var squel=require('squel');var crypto=require(_0x07a4('0xd'));var jsforce=require(_0x07a4('0xe'));var deskjs=require(_0x07a4('0xf'));var toCsv=require('to-csv');var querystring=require('querystring');var Papa=require(_0x07a4('0x10'));var Redis=require(_0x07a4('0x11'));var authService=require('../../components/auth/service');var qs=require('../../components/parsers/qs');var as=require(_0x07a4('0x12'));var hardwareService=require('../../config/license/hardware');var logger=require(_0x07a4('0x13'))('api');var utils=require(_0x07a4('0x14'));var config=require('../../config/environment');var db=require(_0x07a4('0x15'))['db'];var jayson=require(_0x07a4('0x16'));var client=jayson[_0x07a4('0x17')][_0x07a4('0x18')]({'port':0x232a});function checkPasswordPattern(_0x5210ff,_0x6d3696,_0x30a6b9){if(_0x30a6b9){var _0x1f75b2=new RegExp(/(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[?!@#\$%\^&\*~\-_=+[{\]\}])(?=.{8,})/);if(_0x1f75b2['test'](_0x6d3696)){return _0x5210ff;}else{throw new db[(_0x07a4('0x19'))]['ValidationError'](_0x07a4('0x1a'));}}else{return _0x5210ff;}}function respondWithRpcPromise(_0x12c70c,_0x108eb7,_0x2d61cd,_0x3a2b26){return new BPromise(function(_0x97372b,_0x2c5481){var _0x42443d=_0x3a2b26||client;return _0x42443d['request'](_0x12c70c,_0x2d61cd)[_0x07a4('0x1b')](function(_0x1fbf2f){logger[_0x07a4('0x1c')](_0x07a4('0x1d'),_0x108eb7,_0x07a4('0x1e'));logger['debug'](_0x07a4('0x1f'),_0x108eb7,'request\x20sent',JSON['stringify'](_0x1fbf2f));if(_0x1fbf2f['error']){if(_0x1fbf2f[_0x07a4('0x20')][_0x07a4('0x21')]===0x1f4){logger[_0x07a4('0x20')]('Trunk,\x20%s,\x20%s',_0x108eb7,_0x1fbf2f[_0x07a4('0x20')][_0x07a4('0x22')]);return _0x2c5481(_0x1fbf2f[_0x07a4('0x20')][_0x07a4('0x22')]);}logger[_0x07a4('0x20')](_0x07a4('0x1d'),_0x108eb7,_0x1fbf2f[_0x07a4('0x20')][_0x07a4('0x22')]);return _0x97372b(_0x1fbf2f[_0x07a4('0x20')]['message']);}else{logger[_0x07a4('0x1c')]('Trunk,\x20%s,\x20%s',_0x108eb7,'request\x20sent');_0x97372b(_0x1fbf2f[_0x07a4('0x23')][_0x07a4('0x22')]);}})[_0x07a4('0x24')](function(_0x4bb70f){logger[_0x07a4('0x20')](_0x07a4('0x1d'),_0x108eb7,_0x4bb70f);_0x2c5481(_0x4bb70f);});});}function respondWithStatusCode(_0x2232d4,_0x16a84a){_0x16a84a=_0x16a84a||0xcc;return function(_0x517ae2){if(_0x517ae2){return _0x2232d4[_0x07a4('0x25')](_0x16a84a);}return _0x2232d4['status'](_0x16a84a)[_0x07a4('0x26')]();};}function respondWithResult(_0x2b2cb9,_0x228e88){_0x228e88=_0x228e88||0xc8;return function(_0x4a0b36){if(_0x4a0b36){return _0x2b2cb9[_0x07a4('0x27')](_0x228e88)['json'](_0x4a0b36);}};}function respondWithFilteredResult(_0x8718e0,_0x52e6e2){return function(_0x570232){if(_0x570232){var _0x5593b9=_0x570232['count'],_0x11e048=_0x52e6e2[_0x07a4('0x28')],_0x425802=_0x52e6e2['offset']+_0x52e6e2[_0x07a4('0x29')],_0x154676;if(_0x425802>=_0x5593b9){_0x425802=_0x5593b9;_0x154676=0xc8;}else{_0x154676=0xce;}_0x8718e0[_0x07a4('0x27')](_0x154676);return _0x8718e0[_0x07a4('0x2a')]('Content-Range',_0x11e048+'-'+_0x425802+'/'+_0x5593b9)[_0x07a4('0x2b')](_0x570232);}return null;};}function patchUpdates(_0x4d9308){return function(_0x506e45){try{jsonpatch['apply'](_0x506e45,_0x4d9308,!![]);}catch(_0x214541){return BPromise[_0x07a4('0x2c')](_0x214541);}return _0x506e45[_0x07a4('0x2d')]();};}function saveUpdates(_0x536418,_0x53a517){return function(_0x64d02d){if(_0x64d02d){return _0x64d02d[_0x07a4('0x2e')](_0x536418)[_0x07a4('0x1b')](function(_0x2fec9b){return _0x2fec9b;});}return null;};}function removeEntity(_0xa42c7e,_0x4878e0){return function(_0x40d338){if(_0x40d338){return _0x40d338['destroy']()[_0x07a4('0x1b')](function(){var _0x25bbca=_0x40d338[_0x07a4('0x2f')]({'plain':!![]});var _0x3400bd=_0x07a4('0x30');return db[_0x07a4('0x31')]['destroy']({'where':{'type':_0x3400bd,'resourceId':_0x25bbca['id']}})['then'](function(){return _0x40d338;});})['then'](function(){_0xa42c7e[_0x07a4('0x27')](0xcc)[_0x07a4('0x26')]();});}};}function handleEntityNotFound(_0x47e3ce,_0x2b1f3c){return function(_0x449836){if(!_0x449836){_0x47e3ce[_0x07a4('0x25')](0x194);}return _0x449836;};}function handleError(_0x57472f,_0x2d5d70){_0x2d5d70=_0x2d5d70||0x1f4;return function(_0x21eaf9){logger[_0x07a4('0x20')](_0x21eaf9['stack']);if(_0x21eaf9[_0x07a4('0x32')]){delete _0x21eaf9['name'];}_0x57472f[_0x07a4('0x27')](_0x2d5d70)[_0x07a4('0x33')](_0x21eaf9);};}exports[_0x07a4('0x34')]=function(_0x31de56,_0x40d232){var _0xf3c0c9={},_0x33695f={},_0x35980d={'count':0x0,'rows':[]};var _0x579eb0=_[_0x07a4('0x35')](db['Trunk'][_0x07a4('0x36')],function(_0xb4a564){return{'name':_0xb4a564[_0x07a4('0x37')],'type':_0xb4a564[_0x07a4('0x38')][_0x07a4('0x39')]};});_0x33695f[_0x07a4('0x3a')]=_['map'](_0x579eb0,'name');_0x33695f[_0x07a4('0x3b')]=_[_0x07a4('0x3c')](_0x31de56['query']);_0x33695f[_0x07a4('0x3d')]=_[_0x07a4('0x3e')](_0x33695f[_0x07a4('0x3a')],_0x33695f['query']);_0xf3c0c9[_0x07a4('0x3f')]=_[_0x07a4('0x3e')](_0x33695f[_0x07a4('0x3a')],qs[_0x07a4('0x40')](_0x31de56[_0x07a4('0x3b')][_0x07a4('0x40')]));_0xf3c0c9[_0x07a4('0x3f')]=_0xf3c0c9[_0x07a4('0x3f')][_0x07a4('0x41')]?_0xf3c0c9[_0x07a4('0x3f')]:_0x33695f[_0x07a4('0x3a')];if(!_0x31de56[_0x07a4('0x3b')][_0x07a4('0x42')]('nolimit')){_0xf3c0c9[_0x07a4('0x29')]=qs[_0x07a4('0x29')](_0x31de56[_0x07a4('0x3b')]['limit']);_0xf3c0c9['offset']=qs[_0x07a4('0x28')](_0x31de56[_0x07a4('0x3b')][_0x07a4('0x28')]);}_0xf3c0c9[_0x07a4('0x43')]=qs[_0x07a4('0x44')](_0x31de56[_0x07a4('0x3b')]['sort']);_0xf3c0c9[_0x07a4('0x45')]=qs[_0x07a4('0x3d')](_['pick'](_0x31de56[_0x07a4('0x3b')],_0x33695f['filters']),_0x579eb0);if(_0x31de56[_0x07a4('0x3b')][_0x07a4('0x46')]){_0xf3c0c9[_0x07a4('0x45')]=_[_0x07a4('0x47')](_0xf3c0c9[_0x07a4('0x45')],{'$or':_[_0x07a4('0x35')](_0x579eb0,function(_0x49b721){if(_0x49b721[_0x07a4('0x38')]!==_0x07a4('0x48')){var _0x58b0ed={};_0x58b0ed[_0x49b721[_0x07a4('0x32')]]={'$like':'%'+_0x31de56[_0x07a4('0x3b')][_0x07a4('0x46')]+'%'};return _0x58b0ed;}})});}_0xf3c0c9=_[_0x07a4('0x47')]({},_0xf3c0c9,_0x31de56['options']);var _0x5025e0={'where':_0xf3c0c9[_0x07a4('0x45')]};return db[_0x07a4('0x49')][_0x07a4('0x4a')](_0x5025e0)[_0x07a4('0x1b')](function(_0x19d9fd){_0x35980d[_0x07a4('0x4a')]=_0x19d9fd;if(_0x31de56['query']['includeAll']){_0xf3c0c9['include']=[{'all':!![]}];}return db['Trunk'][_0x07a4('0x4b')](_0xf3c0c9);})['then'](function(_0x3d5d02){_0x35980d['rows']=_0x3d5d02;return _0x35980d;})[_0x07a4('0x1b')](respondWithFilteredResult(_0x40d232,_0xf3c0c9))[_0x07a4('0x24')](handleError(_0x40d232,null));};exports[_0x07a4('0x4c')]=function(_0x3299e7,_0x342c8c){var _0x421e5f={'raw':![],'where':{'id':_0x3299e7['params']['id']}},_0x35c77b={};_0x35c77b[_0x07a4('0x3a')]=_[_0x07a4('0x3c')](db['Trunk'][_0x07a4('0x36')]);_0x35c77b[_0x07a4('0x3b')]=_[_0x07a4('0x3c')](_0x3299e7[_0x07a4('0x3b')]);_0x35c77b[_0x07a4('0x3d')]=_[_0x07a4('0x3e')](_0x35c77b[_0x07a4('0x3a')],_0x35c77b['query']);_0x421e5f[_0x07a4('0x3f')]=_['intersection'](_0x35c77b[_0x07a4('0x3a')],qs[_0x07a4('0x40')](_0x3299e7[_0x07a4('0x3b')]['fields']));_0x421e5f[_0x07a4('0x3f')]=_0x421e5f[_0x07a4('0x3f')]['length']?_0x421e5f[_0x07a4('0x3f')]:_0x35c77b[_0x07a4('0x3a')];if(_0x3299e7[_0x07a4('0x3b')][_0x07a4('0x4d')]){_0x421e5f['include']=[{'all':!![]}];}_0x421e5f=_['merge']({},_0x421e5f,_0x3299e7[_0x07a4('0x4e')]);return db[_0x07a4('0x49')][_0x07a4('0x4f')](_0x421e5f)[_0x07a4('0x1b')](handleEntityNotFound(_0x342c8c,null))['then'](respondWithResult(_0x342c8c,null))[_0x07a4('0x24')](handleError(_0x342c8c,null));};exports[_0x07a4('0x50')]=function(_0x13ee16,_0x298e10){var _0x28051c={'where':{'id':_0x13ee16[_0x07a4('0x51')]['id']}},_0x3bba10={};_0x3bba10['model']=_[_0x07a4('0x3c')](db[_0x07a4('0x49')][_0x07a4('0x36')]);_0x28051c['attributes']=_[_0x07a4('0x3e')](_0x3bba10[_0x07a4('0x3a')],qs['fields'](_0x13ee16[_0x07a4('0x3b')]['fields']));_0x28051c[_0x07a4('0x3f')]=_0x28051c['attributes'][_0x07a4('0x41')]?_0x28051c[_0x07a4('0x3f')]:_0x3bba10[_0x07a4('0x3a')];if(_0x13ee16[_0x07a4('0x3b')][_0x07a4('0x4d')]){_0x28051c[_0x07a4('0x52')]=[{'all':!![]}];}_0x28051c=_[_0x07a4('0x47')]({},_0x28051c,_0x13ee16[_0x07a4('0x4e')]);return db[_0x07a4('0x49')][_0x07a4('0x4f')](_0x28051c)[_0x07a4('0x1b')](handleEntityNotFound(_0x298e10,null))['then'](function(_0x19a184){if(_0x19a184){var _0x99671f=_0x19a184['get']({'plain':!![]});_0x99671f=qs['omit'](_0x99671f,['id',_0x07a4('0x53'),'updatedAt']);_0x13ee16['body']=_['omit'](_0x13ee16['body'],['id',_0x07a4('0x53'),_0x07a4('0x54')]);return db[_0x07a4('0x49')]['create'](_[_0x07a4('0x47')](_0x99671f,_0x13ee16[_0x07a4('0x55')]),{'include':_0x13ee16['query'][_0x07a4('0x4d')]?[{'all':!![]}]:undefined})[_0x07a4('0x1b')](function(_0x28b996){var _0x3f7525=_0x13ee16['user'][_0x07a4('0x2f')]({'plain':!![]});if(!_0x3f7525)throw new Error(_0x07a4('0x56'));if(_0x3f7525['role']==='user'){var _0x45b46d=_0x28b996[_0x07a4('0x2f')]({'plain':!![]});var _0x40675a=_0x07a4('0x30');return db[_0x07a4('0x57')][_0x07a4('0x4f')]({'where':{'name':_0x40675a,'userProfileId':_0x3f7525[_0x07a4('0x58')]},'raw':!![]})[_0x07a4('0x1b')](function(_0x254888){if(_0x254888&&_0x254888[_0x07a4('0x59')]===0x0){return db[_0x07a4('0x31')][_0x07a4('0x5a')]({'name':_0x45b46d['name'],'resourceId':_0x45b46d['id'],'type':_0x254888[_0x07a4('0x32')],'sectionId':_0x254888['id']},{})[_0x07a4('0x1b')](function(){return _0x28b996;});}else{return _0x28b996;}})['catch'](function(_0x484b4b){logger[_0x07a4('0x20')]('Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s',_0x484b4b);throw _0x484b4b;});}return _0x28b996;});}})['then'](respondWithResult(_0x298e10,0xc9))['catch'](handleError(_0x298e10,null));};exports[_0x07a4('0x5a')]=function(_0x23baf2,_0x46fde6,_0x2c3c2d){var _0x45860e;return db[_0x07a4('0x49')][_0x07a4('0x5a')](_0x23baf2[_0x07a4('0x55')],{'raw':!![]})[_0x07a4('0x1b')](function(_0xd0a7af){_0x45860e=_0xd0a7af;return db[_0x07a4('0x49')][_0x07a4('0x4b')]({'raw':!![]});})[_0x07a4('0x1b')](function(_0x559a52){var _0x120662=fs[_0x07a4('0x5b')](path['join'](config['root'],_0x07a4('0x5c')),_0x07a4('0x5d'));var _0x259012=fs[_0x07a4('0x5b')](path[_0x07a4('0x5e')](config[_0x07a4('0x5f')],_0x07a4('0x60')),_0x07a4('0x5d'));var _0x34fd8b=ejs[_0x07a4('0x61')](_0x120662,{'trunks':_0x559a52||[]});fs['writeFileSync'](_0x07a4('0x62'),_0x34fd8b);if(_0x45860e[_0x07a4('0x63')]){var _0x2ab6e7=ejs[_0x07a4('0x61')](_0x259012,{'trunks':_0x559a52||[]});fs[_0x07a4('0x64')](_0x07a4('0x65'),_0x2ab6e7);}})[_0x07a4('0x1b')](function(){return respondWithRpcPromise('Reload','create',{'module':_0x07a4('0x66')});})[_0x07a4('0x1b')](function(){var _0x2793c1=_0x23baf2[_0x07a4('0x67')]['get']({'plain':!![]});if(!_0x2793c1)throw new Error(_0x07a4('0x56'));if(_0x2793c1[_0x07a4('0x68')]==='user'){var _0x5e8739=_0x45860e['get']({'plain':!![]});return db[_0x07a4('0x57')][_0x07a4('0x4f')]({'where':{'name':_0x07a4('0x30'),'userProfileId':_0x2793c1['userProfileId']},'raw':!![]})[_0x07a4('0x1b')](function(_0x465c4a){if(_0x465c4a&&_0x465c4a[_0x07a4('0x59')]===0x0){return db[_0x07a4('0x31')][_0x07a4('0x5a')]({'name':_0x5e8739[_0x07a4('0x32')],'resourceId':_0x5e8739['id'],'type':_0x465c4a[_0x07a4('0x32')],'sectionId':_0x465c4a['id']},{})[_0x07a4('0x1b')](function(){return _0x45860e;});}else{return _0x45860e;}})['catch'](function(_0x3d0905){logger['error'](_0x07a4('0x69'),_0x3d0905);throw _0x3d0905;});}return _0x45860e;})[_0x07a4('0x1b')](respondWithResult(_0x46fde6,0xc9))[_0x07a4('0x24')](handleError(_0x46fde6,null));};exports[_0x07a4('0x2e')]=function(_0x2e58f4,_0x132b24,_0x55803f){var _0x28ed5c;return db['Trunk'][_0x07a4('0x4f')]({'where':{'id':_0x2e58f4[_0x07a4('0x51')]['id']}})[_0x07a4('0x1b')](handleEntityNotFound(_0x132b24,null))[_0x07a4('0x1b')](saveUpdates(_0x2e58f4[_0x07a4('0x55')],null))['then'](function(_0x546a42){if(_0x546a42){_0x28ed5c=_0x546a42;return db[_0x07a4('0x49')][_0x07a4('0x4b')]({'raw':!![]});}})['then'](function(_0x2f4c14){if(_0x2f4c14){var _0x278753=fs[_0x07a4('0x5b')](path[_0x07a4('0x5e')](config['root'],_0x07a4('0x5c')),_0x07a4('0x5d'));var _0x1b17fc=fs[_0x07a4('0x5b')](path['join'](config[_0x07a4('0x5f')],_0x07a4('0x60')),'utf8');var _0x24d817=ejs[_0x07a4('0x61')](_0x278753,{'trunks':_0x2f4c14||[]});fs[_0x07a4('0x64')](_0x07a4('0x62'),_0x24d817);var _0x4c9894=ejs['render'](_0x1b17fc,{'trunks':_0x2f4c14||[]});fs['writeFileSync'](_0x07a4('0x65'),_0x4c9894);return respondWithRpcPromise(_0x07a4('0x6a'),_0x07a4('0x2e'),{'module':_0x07a4('0x66')});}return null;})[_0x07a4('0x1b')](function(_0x4da42b){if(_0x4da42b){return _0x28ed5c;}})[_0x07a4('0x1b')](respondWithResult(_0x132b24,null))[_0x07a4('0x24')](handleError(_0x132b24,null));};exports[_0x07a4('0x6b')]=function(_0x53d54d,_0x20c572,_0x201965){var _0x1a4269;return db[_0x07a4('0x49')]['find']({'where':{'id':_0x53d54d['params']['id']}})[_0x07a4('0x1b')](handleEntityNotFound(_0x20c572,null))[_0x07a4('0x1b')](removeEntity(_0x20c572,null))[_0x07a4('0x1b')](function(){return db[_0x07a4('0x49')][_0x07a4('0x4b')]({'raw':!![]});})[_0x07a4('0x1b')](function(_0x4e5b62){var _0x4d58ee=fs['readFileSync'](path['join'](config[_0x07a4('0x5f')],_0x07a4('0x5c')),'utf8');var _0xe67509=fs[_0x07a4('0x5b')](path[_0x07a4('0x5e')](config[_0x07a4('0x5f')],_0x07a4('0x60')),'utf8');var _0x34732c=ejs[_0x07a4('0x61')](_0x4d58ee,{'trunks':_0x4e5b62});var _0xd80893=ejs[_0x07a4('0x61')](_0xe67509,{'trunks':_0x4e5b62});fs[_0x07a4('0x64')]('/etc/asterisk/sip_xcally_trunks.conf',_0x34732c);fs['writeFileSync']('/etc/asterisk/sip_xcally_registers.conf',_0xd80893);return respondWithRpcPromise(_0x07a4('0x6a'),_0x07a4('0x6b'),{'module':_0x07a4('0x66')});})['catch'](handleError(_0x20c572,null));};