Built motion from commit ddca4d0d.|2.5.47
[motion2.git] / server / api / trunk / trunk.controller.js
index ecdc153..ec5fd0d 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x8d00=['pick','filters','filter','merge','Trunk','include','rows','show','params','rawAttributes','includeAll','clone','options','find','omit','updatedAt','body','createdAt','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','user','userProfileId','autoAssociation','create','findAll','readFileSync','join','root','server/files/templates/trunk.ejs','utf8','server/files/templates/registry.ejs','writeFileSync','registry','/etc/asterisk/sip_xcally_registers.conf','Reload','chan_sip.so','UserProfileSection','UserProfileResource','update','render','rimraf','request-promise','moment','bluebird','mustache','path','sox','ejs','fs-extra','lodash','crypto','jsforce','desk.js','to-csv','querystring','papaparse','../../components/parsers/qs','../../components/parsers/advancedSearch','api','../../config/license/util','client','http','then','info','Trunk,\x20%s,\x20%s','debug','Trunk,\x20%s,\x20%s,\x20%s','error','code','message','request\x20sent','result','catch','sendStatus','status','end','count','offset','Content-Range','apply','reject','save','destroy','get','Trunks','stack','name','send','index','map','type','key','model','keys','query','attributes','intersection','fields','length','hasOwnProperty','nolimit','limit','sort','where'];(function(_0x5b644e,_0x2e5e07){var _0x49c6bf=function(_0x3032d9){while(--_0x3032d9){_0x5b644e['push'](_0x5b644e['shift']());}};_0x49c6bf(++_0x2e5e07);}(_0x8d00,0x160));var _0x08d0=function(_0x21a746,_0x389e79){_0x21a746=_0x21a746-0x0;var _0x2c9076=_0x8d00[_0x21a746];return _0x2c9076;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0x08d0('0x0'));var zipdir=require('zip-dir');var jsonpatch=require('fast-json-patch');var rp=require(_0x08d0('0x1'));var moment=require(_0x08d0('0x2'));var BPromise=require(_0x08d0('0x3'));var Mustache=require(_0x08d0('0x4'));var util=require('util');var path=require(_0x08d0('0x5'));var sox=require(_0x08d0('0x6'));var csv=require('to-csv');var ejs=require(_0x08d0('0x7'));var fs=require('fs');var fs_extra=require(_0x08d0('0x8'));var _=require(_0x08d0('0x9'));var squel=require('squel');var crypto=require(_0x08d0('0xa'));var jsforce=require(_0x08d0('0xb'));var deskjs=require(_0x08d0('0xc'));var toCsv=require(_0x08d0('0xd'));var querystring=require(_0x08d0('0xe'));var Papa=require(_0x08d0('0xf'));var Redis=require('ioredis');var authService=require('../../components/auth/service');var qs=require(_0x08d0('0x10'));var as=require(_0x08d0('0x11'));var hardwareService=require('../../config/license/hardware');var logger=require('../../config/logger')(_0x08d0('0x12'));var utils=require('../../config/utils');var config=require('../../config/environment');var licenseUtil=require(_0x08d0('0x13'));var db=require('../../mysqldb')['db'];var jayson=require('jayson/promise');var client=jayson[_0x08d0('0x14')][_0x08d0('0x15')]({'port':0x232a});function respondWithRpcPromise(_0x52323e,_0x3f9310,_0x2b2f53,_0x5867c3){return new BPromise(function(_0x57fa2a,_0x151e49){var _0x1dca0a=_0x5867c3||client;return _0x1dca0a['request'](_0x52323e,_0x2b2f53)[_0x08d0('0x16')](function(_0x6dafae){logger[_0x08d0('0x17')](_0x08d0('0x18'),_0x3f9310,'request\x20sent');logger[_0x08d0('0x19')](_0x08d0('0x1a'),_0x3f9310,'request\x20sent',JSON['stringify'](_0x6dafae));if(_0x6dafae[_0x08d0('0x1b')]){if(_0x6dafae[_0x08d0('0x1b')][_0x08d0('0x1c')]===0x1f4){logger[_0x08d0('0x1b')](_0x08d0('0x18'),_0x3f9310,_0x6dafae[_0x08d0('0x1b')][_0x08d0('0x1d')]);return _0x151e49(_0x6dafae[_0x08d0('0x1b')][_0x08d0('0x1d')]);}logger[_0x08d0('0x1b')]('Trunk,\x20%s,\x20%s',_0x3f9310,_0x6dafae[_0x08d0('0x1b')][_0x08d0('0x1d')]);return _0x57fa2a(_0x6dafae[_0x08d0('0x1b')][_0x08d0('0x1d')]);}else{logger[_0x08d0('0x17')](_0x08d0('0x18'),_0x3f9310,_0x08d0('0x1e'));_0x57fa2a(_0x6dafae[_0x08d0('0x1f')]['message']);}})[_0x08d0('0x20')](function(_0x91c3ad){logger[_0x08d0('0x1b')](_0x08d0('0x18'),_0x3f9310,_0x91c3ad);_0x151e49(_0x91c3ad);});});}function respondWithStatusCode(_0x453ed2,_0x380b3a){_0x380b3a=_0x380b3a||0xcc;return function(_0x47ec7f){if(_0x47ec7f){return _0x453ed2[_0x08d0('0x21')](_0x380b3a);}return _0x453ed2[_0x08d0('0x22')](_0x380b3a)[_0x08d0('0x23')]();};}function respondWithResult(_0xb31ccd,_0x182eda){_0x182eda=_0x182eda||0xc8;return function(_0x5c189c){if(_0x5c189c){return _0xb31ccd[_0x08d0('0x22')](_0x182eda)['json'](_0x5c189c);}};}function respondWithFilteredResult(_0x41558d,_0x583b85){return function(_0x148fc3){if(_0x148fc3){var _0x4ebd8e=_0x148fc3[_0x08d0('0x24')],_0x31cf23=_0x583b85[_0x08d0('0x25')],_0x1714d5=_0x583b85[_0x08d0('0x25')]+_0x583b85['limit'],_0x1f2fa5;if(_0x1714d5>=_0x4ebd8e){_0x1714d5=_0x4ebd8e;_0x1f2fa5=0xc8;}else{_0x1f2fa5=0xce;}_0x41558d[_0x08d0('0x22')](_0x1f2fa5);return _0x41558d['set'](_0x08d0('0x26'),_0x31cf23+'-'+_0x1714d5+'/'+_0x4ebd8e)['json'](_0x148fc3);}return null;};}function patchUpdates(_0x2af407){return function(_0xc3dba){try{jsonpatch[_0x08d0('0x27')](_0xc3dba,_0x2af407,!![]);}catch(_0x3b39fc){return BPromise[_0x08d0('0x28')](_0x3b39fc);}return _0xc3dba[_0x08d0('0x29')]();};}function saveUpdates(_0x2f309f,_0x137baa){return function(_0x24f5ed){if(_0x24f5ed){return _0x24f5ed['update'](_0x2f309f)['then'](function(_0x3374a5){return _0x3374a5;});}return null;};}function removeEntity(_0x50632e,_0x3f5012){return function(_0x2b471b){if(_0x2b471b){return _0x2b471b[_0x08d0('0x2a')]()[_0x08d0('0x16')](function(){var _0x207497=_0x2b471b[_0x08d0('0x2b')]({'plain':!![]});var _0x1a69ce=_0x08d0('0x2c');return db['UserProfileResource'][_0x08d0('0x2a')]({'where':{'type':_0x1a69ce,'resourceId':_0x207497['id']}})[_0x08d0('0x16')](function(){return _0x2b471b;});})[_0x08d0('0x16')](function(){_0x50632e[_0x08d0('0x22')](0xcc)[_0x08d0('0x23')]();});}};}function handleEntityNotFound(_0x3ea793,_0x51e6f4){return function(_0x2b19b3){if(!_0x2b19b3){_0x3ea793[_0x08d0('0x21')](0x194);}return _0x2b19b3;};}function handleError(_0x463637,_0x37db5d){_0x37db5d=_0x37db5d||0x1f4;return function(_0x33d702){logger[_0x08d0('0x1b')](_0x33d702[_0x08d0('0x2d')]);if(_0x33d702['name']){delete _0x33d702[_0x08d0('0x2e')];}_0x463637['status'](_0x37db5d)[_0x08d0('0x2f')](_0x33d702);};}exports[_0x08d0('0x30')]=function(_0x50df48,_0x585c6c){var _0x95570a={},_0x2b7505={},_0x5eb30c={'count':0x0,'rows':[]};var _0x197022=_[_0x08d0('0x31')](db['Trunk']['rawAttributes'],function(_0x53464a){return{'name':_0x53464a['fieldName'],'type':_0x53464a[_0x08d0('0x32')][_0x08d0('0x33')]};});_0x2b7505[_0x08d0('0x34')]=_[_0x08d0('0x31')](_0x197022,_0x08d0('0x2e'));_0x2b7505['query']=_[_0x08d0('0x35')](_0x50df48[_0x08d0('0x36')]);_0x2b7505['filters']=_['intersection'](_0x2b7505[_0x08d0('0x34')],_0x2b7505[_0x08d0('0x36')]);_0x95570a[_0x08d0('0x37')]=_[_0x08d0('0x38')](_0x2b7505['model'],qs['fields'](_0x50df48['query'][_0x08d0('0x39')]));_0x95570a['attributes']=_0x95570a[_0x08d0('0x37')][_0x08d0('0x3a')]?_0x95570a[_0x08d0('0x37')]:_0x2b7505['model'];if(!_0x50df48[_0x08d0('0x36')][_0x08d0('0x3b')](_0x08d0('0x3c'))){_0x95570a[_0x08d0('0x3d')]=qs[_0x08d0('0x3d')](_0x50df48[_0x08d0('0x36')][_0x08d0('0x3d')]);_0x95570a[_0x08d0('0x25')]=qs[_0x08d0('0x25')](_0x50df48['query'][_0x08d0('0x25')]);}_0x95570a['order']=qs['sort'](_0x50df48['query'][_0x08d0('0x3e')]);_0x95570a[_0x08d0('0x3f')]=qs['filters'](_[_0x08d0('0x40')](_0x50df48['query'],_0x2b7505[_0x08d0('0x41')]),_0x197022);if(_0x50df48[_0x08d0('0x36')][_0x08d0('0x42')]){_0x95570a[_0x08d0('0x3f')]=_[_0x08d0('0x43')](_0x95570a[_0x08d0('0x3f')],{'$or':_[_0x08d0('0x31')](_0x197022,function(_0xed795){if(_0xed795[_0x08d0('0x32')]!=='VIRTUAL'){var _0x1fba19={};_0x1fba19[_0xed795[_0x08d0('0x2e')]]={'$like':'%'+_0x50df48[_0x08d0('0x36')][_0x08d0('0x42')]+'%'};return _0x1fba19;}})});}_0x95570a=_['merge']({},_0x95570a,_0x50df48['options']);var _0x320f20={'where':_0x95570a[_0x08d0('0x3f')]};return db[_0x08d0('0x44')][_0x08d0('0x24')](_0x320f20)[_0x08d0('0x16')](function(_0x580649){_0x5eb30c[_0x08d0('0x24')]=_0x580649;if(_0x50df48['query']['includeAll']){_0x95570a[_0x08d0('0x45')]=[{'all':!![]}];}return db[_0x08d0('0x44')]['findAll'](_0x95570a);})[_0x08d0('0x16')](function(_0x13313b){_0x5eb30c[_0x08d0('0x46')]=_0x13313b;return _0x5eb30c;})['then'](respondWithFilteredResult(_0x585c6c,_0x95570a))[_0x08d0('0x20')](handleError(_0x585c6c,null));};exports[_0x08d0('0x47')]=function(_0x44b602,_0x4ff944){var _0xcb8f51={'raw':![],'where':{'id':_0x44b602[_0x08d0('0x48')]['id']}},_0x31e871={};_0x31e871[_0x08d0('0x34')]=_['keys'](db[_0x08d0('0x44')][_0x08d0('0x49')]);_0x31e871['query']=_[_0x08d0('0x35')](_0x44b602['query']);_0x31e871[_0x08d0('0x41')]=_[_0x08d0('0x38')](_0x31e871['model'],_0x31e871[_0x08d0('0x36')]);_0xcb8f51['attributes']=_['intersection'](_0x31e871[_0x08d0('0x34')],qs[_0x08d0('0x39')](_0x44b602[_0x08d0('0x36')][_0x08d0('0x39')]));_0xcb8f51['attributes']=_0xcb8f51[_0x08d0('0x37')][_0x08d0('0x3a')]?_0xcb8f51[_0x08d0('0x37')]:_0x31e871[_0x08d0('0x34')];if(_0x44b602[_0x08d0('0x36')][_0x08d0('0x4a')]){_0xcb8f51[_0x08d0('0x45')]=[{'all':!![]}];}_0xcb8f51=_[_0x08d0('0x43')]({},_0xcb8f51,_0x44b602['options']);return db[_0x08d0('0x44')]['find'](_0xcb8f51)[_0x08d0('0x16')](handleEntityNotFound(_0x4ff944,null))[_0x08d0('0x16')](respondWithResult(_0x4ff944,null))[_0x08d0('0x20')](handleError(_0x4ff944,null));};exports[_0x08d0('0x4b')]=function(_0x48fb59,_0x101340){var _0x2f2155={'where':{'id':_0x48fb59[_0x08d0('0x48')]['id']}},_0x5b093d={};_0x5b093d['model']=_[_0x08d0('0x35')](db[_0x08d0('0x44')][_0x08d0('0x49')]);_0x2f2155[_0x08d0('0x37')]=_[_0x08d0('0x38')](_0x5b093d['model'],qs[_0x08d0('0x39')](_0x48fb59[_0x08d0('0x36')]['fields']));_0x2f2155[_0x08d0('0x37')]=_0x2f2155['attributes'][_0x08d0('0x3a')]?_0x2f2155[_0x08d0('0x37')]:_0x5b093d['model'];if(_0x48fb59[_0x08d0('0x36')]['includeAll']){_0x2f2155[_0x08d0('0x45')]=[{'all':!![]}];}_0x2f2155=_[_0x08d0('0x43')]({},_0x2f2155,_0x48fb59[_0x08d0('0x4c')]);return db[_0x08d0('0x44')][_0x08d0('0x4d')](_0x2f2155)[_0x08d0('0x16')](handleEntityNotFound(_0x101340,null))['then'](function(_0x40c6b0){if(_0x40c6b0){var _0x429941=_0x40c6b0[_0x08d0('0x2b')]({'plain':!![]});_0x429941=qs[_0x08d0('0x4e')](_0x429941,['id','createdAt',_0x08d0('0x4f')]);_0x48fb59['body']=_['omit'](_0x48fb59[_0x08d0('0x50')],['id',_0x08d0('0x51'),_0x08d0('0x4f')]);return db[_0x08d0('0x44')]['create'](_[_0x08d0('0x43')](_0x429941,_0x48fb59[_0x08d0('0x50')]),{'include':_0x48fb59[_0x08d0('0x36')]['includeAll']?[{'all':!![]}]:undefined})[_0x08d0('0x16')](function(_0x2fdc4e){var _0x201ae5=_0x48fb59['user']['get']({'plain':!![]});if(!_0x201ae5)throw new Error(_0x08d0('0x52'));if(_0x201ae5[_0x08d0('0x53')]===_0x08d0('0x54')){var _0x2ea642=_0x2fdc4e[_0x08d0('0x2b')]({'plain':!![]});var _0x5d7a50=_0x08d0('0x2c');return db['UserProfileSection']['find']({'where':{'name':_0x5d7a50,'userProfileId':_0x201ae5[_0x08d0('0x55')]},'raw':!![]})[_0x08d0('0x16')](function(_0x46486b){if(_0x46486b&&_0x46486b[_0x08d0('0x56')]===0x0){return db['UserProfileResource']['create']({'name':_0x2ea642[_0x08d0('0x2e')],'resourceId':_0x2ea642['id'],'type':_0x46486b[_0x08d0('0x2e')],'sectionId':_0x46486b['id']},{})['then'](function(){return _0x2fdc4e;});}else{return _0x2fdc4e;}})['catch'](function(_0x289785){logger[_0x08d0('0x1b')]('Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s',_0x289785);throw _0x289785;});}return _0x2fdc4e;});}})[_0x08d0('0x16')](respondWithResult(_0x101340,0xc9))[_0x08d0('0x20')](handleError(_0x101340,null));};exports[_0x08d0('0x57')]=function(_0x21df66,_0x6822f5,_0x2ff026){var _0x52ada2;return db[_0x08d0('0x44')][_0x08d0('0x57')](_0x21df66['body'],{'raw':!![]})['then'](function(_0x46295d){_0x52ada2=_0x46295d;return db[_0x08d0('0x44')][_0x08d0('0x58')]({'raw':!![]});})[_0x08d0('0x16')](function(_0x22d484){var _0x319837=fs[_0x08d0('0x59')](path[_0x08d0('0x5a')](config[_0x08d0('0x5b')],_0x08d0('0x5c')),_0x08d0('0x5d'));var _0x281065=fs[_0x08d0('0x59')](path[_0x08d0('0x5a')](config[_0x08d0('0x5b')],_0x08d0('0x5e')),'utf8');var _0x4f52fd=ejs['render'](_0x319837,{'trunks':_0x22d484||[]});fs[_0x08d0('0x5f')]('/etc/asterisk/sip_xcally_trunks.conf',_0x4f52fd);if(_0x52ada2[_0x08d0('0x60')]){var _0x4a838d=ejs['render'](_0x281065,{'trunks':_0x22d484||[]});fs[_0x08d0('0x5f')](_0x08d0('0x61'),_0x4a838d);}})[_0x08d0('0x16')](function(){return respondWithRpcPromise(_0x08d0('0x62'),_0x08d0('0x57'),{'module':_0x08d0('0x63')});})[_0x08d0('0x16')](function(){var _0x4c1842=_0x21df66[_0x08d0('0x54')]['get']({'plain':!![]});if(!_0x4c1842)throw new Error('Unable\x20to\x20retrieve\x20the\x20current\x20user');if(_0x4c1842[_0x08d0('0x53')]===_0x08d0('0x54')){var _0x1d1244=_0x52ada2['get']({'plain':!![]});return db[_0x08d0('0x64')][_0x08d0('0x4d')]({'where':{'name':_0x08d0('0x2c'),'userProfileId':_0x4c1842[_0x08d0('0x55')]},'raw':!![]})[_0x08d0('0x16')](function(_0xfb3823){if(_0xfb3823&&_0xfb3823[_0x08d0('0x56')]===0x0){return db[_0x08d0('0x65')][_0x08d0('0x57')]({'name':_0x1d1244[_0x08d0('0x2e')],'resourceId':_0x1d1244['id'],'type':_0xfb3823[_0x08d0('0x2e')],'sectionId':_0xfb3823['id']},{})['then'](function(){return _0x52ada2;});}else{return _0x52ada2;}})['catch'](function(_0x3d780b){logger[_0x08d0('0x1b')]('Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s',_0x3d780b);throw _0x3d780b;});}return _0x52ada2;})[_0x08d0('0x16')](respondWithResult(_0x6822f5,0xc9))[_0x08d0('0x20')](handleError(_0x6822f5,null));};exports[_0x08d0('0x66')]=function(_0xd6936d,_0x214a32,_0xa054a4){var _0x533c53;return db['Trunk'][_0x08d0('0x4d')]({'where':{'id':_0xd6936d[_0x08d0('0x48')]['id']}})[_0x08d0('0x16')](handleEntityNotFound(_0x214a32,null))[_0x08d0('0x16')](saveUpdates(_0xd6936d[_0x08d0('0x50')],null))[_0x08d0('0x16')](function(_0x63a8b2){if(_0x63a8b2){_0x533c53=_0x63a8b2;return db[_0x08d0('0x44')][_0x08d0('0x58')]({'raw':!![]});}})[_0x08d0('0x16')](function(_0x3d1f02){if(_0x3d1f02){var _0x5d81c6=fs[_0x08d0('0x59')](path['join'](config[_0x08d0('0x5b')],_0x08d0('0x5c')),_0x08d0('0x5d'));var _0xa436c9=fs['readFileSync'](path[_0x08d0('0x5a')](config[_0x08d0('0x5b')],_0x08d0('0x5e')),'utf8');var _0x3d703c=ejs['render'](_0x5d81c6,{'trunks':_0x3d1f02||[]});fs[_0x08d0('0x5f')]('/etc/asterisk/sip_xcally_trunks.conf',_0x3d703c);var _0x5b0cce=ejs[_0x08d0('0x67')](_0xa436c9,{'trunks':_0x3d1f02||[]});fs[_0x08d0('0x5f')](_0x08d0('0x61'),_0x5b0cce);return respondWithRpcPromise(_0x08d0('0x62'),_0x08d0('0x66'),{'module':_0x08d0('0x63')});}return null;})[_0x08d0('0x16')](function(_0x54c368){if(_0x54c368){return _0x533c53;}})['then'](respondWithResult(_0x214a32,null))[_0x08d0('0x20')](handleError(_0x214a32,null));};exports['destroy']=function(_0x42c8c6,_0x324d42,_0x51405c){var _0x3eb8c8;return db[_0x08d0('0x44')][_0x08d0('0x4d')]({'where':{'id':_0x42c8c6['params']['id']}})[_0x08d0('0x16')](handleEntityNotFound(_0x324d42,null))[_0x08d0('0x16')](removeEntity(_0x324d42,null))[_0x08d0('0x16')](function(){return db[_0x08d0('0x44')][_0x08d0('0x58')]({'raw':!![]});})[_0x08d0('0x16')](function(_0x9ce842){var _0x5ac804=fs[_0x08d0('0x59')](path['join'](config[_0x08d0('0x5b')],'server/files/templates/trunk.ejs'),_0x08d0('0x5d'));var _0x5cdc9=fs[_0x08d0('0x59')](path['join'](config[_0x08d0('0x5b')],_0x08d0('0x5e')),_0x08d0('0x5d'));var _0x67fd5f=ejs[_0x08d0('0x67')](_0x5ac804,{'trunks':_0x9ce842});var _0x124781=ejs[_0x08d0('0x67')](_0x5cdc9,{'trunks':_0x9ce842});fs[_0x08d0('0x5f')]('/etc/asterisk/sip_xcally_trunks.conf',_0x67fd5f);fs[_0x08d0('0x5f')](_0x08d0('0x61'),_0x124781);return respondWithRpcPromise(_0x08d0('0x62'),'destroy',{'module':_0x08d0('0x63')});})[_0x08d0('0x20')](handleError(_0x324d42,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