Built motion from commit 25580385.|2.6.2
[motion2.git] / server / api / trunk / trunk.controller.js
index 41eca86..fed0c5b 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x236c=['rows','show','params','keys','include','merge','clone','find','get','omit','createdAt','updatedAt','body','create','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','UserProfileSection','userProfileId','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','readFileSync','join','root','utf8','server/files/templates/registry.ejs','render','writeFileSync','/etc/asterisk/sip_xcally_trunks.conf','registry','/etc/asterisk/sip_xcally_registers.conf','Reload','chan_sip.so','eml-format','zip-dir','fast-json-patch','request-promise','moment','bluebird','util','path','sox','to-csv','ejs','fs-extra','squel','crypto','querystring','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','api','../../config/utils','../../config/license/util','../../mysqldb','client','info','Trunk,\x20%s,\x20%s','request\x20sent','debug','error','code','message','catch','sendStatus','status','end','json','offset','limit','reject','update','then','destroy','Trunks','UserProfileResource','name','send','index','map','Trunk','rawAttributes','fieldName','type','query','filters','intersection','model','attributes','fields','length','hasOwnProperty','order','sort','where','pick','VIRTUAL','filter','options','count','includeAll','findAll'];(function(_0x4baae2,_0x487ab6){var _0x1a2285=function(_0x1cea47){while(--_0x1cea47){_0x4baae2['push'](_0x4baae2['shift']());}};_0x1a2285(++_0x487ab6);}(_0x236c,0x155));var _0xc236=function(_0x1e1912,_0xb716a9){_0x1e1912=_0x1e1912-0x0;var _0xe32b83=_0x236c[_0x1e1912];return _0xe32b83;};'use strict';var emlformat=require(_0xc236('0x0'));var rimraf=require('rimraf');var zipdir=require(_0xc236('0x1'));var jsonpatch=require(_0xc236('0x2'));var rp=require(_0xc236('0x3'));var moment=require(_0xc236('0x4'));var BPromise=require(_0xc236('0x5'));var Mustache=require('mustache');var util=require(_0xc236('0x6'));var path=require(_0xc236('0x7'));var sox=require(_0xc236('0x8'));var csv=require(_0xc236('0x9'));var ejs=require(_0xc236('0xa'));var fs=require('fs');var fs_extra=require(_0xc236('0xb'));var _=require('lodash');var squel=require(_0xc236('0xc'));var crypto=require(_0xc236('0xd'));var jsforce=require('jsforce');var deskjs=require('desk.js');var toCsv=require('to-csv');var querystring=require(_0xc236('0xe'));var Papa=require('papaparse');var Redis=require(_0xc236('0xf'));var authService=require(_0xc236('0x10'));var qs=require(_0xc236('0x11'));var as=require(_0xc236('0x12'));var hardwareService=require(_0xc236('0x13'));var logger=require('../../config/logger')(_0xc236('0x14'));var utils=require(_0xc236('0x15'));var config=require('../../config/environment');var licenseUtil=require(_0xc236('0x16'));var db=require(_0xc236('0x17'))['db'];var jayson=require('jayson/promise');var client=jayson[_0xc236('0x18')]['http']({'port':0x232a});function respondWithRpcPromise(_0x599d36,_0x6db6b9,_0x442095,_0x2184c9){return new BPromise(function(_0x71bce2,_0x5052db){var _0x13a42b=_0x2184c9||client;return _0x13a42b['request'](_0x599d36,_0x442095)['then'](function(_0x9a65e8){logger[_0xc236('0x19')](_0xc236('0x1a'),_0x6db6b9,_0xc236('0x1b'));logger[_0xc236('0x1c')]('Trunk,\x20%s,\x20%s,\x20%s',_0x6db6b9,'request\x20sent',JSON['stringify'](_0x9a65e8));if(_0x9a65e8[_0xc236('0x1d')]){if(_0x9a65e8[_0xc236('0x1d')][_0xc236('0x1e')]===0x1f4){logger['error'](_0xc236('0x1a'),_0x6db6b9,_0x9a65e8['error']['message']);return _0x5052db(_0x9a65e8[_0xc236('0x1d')][_0xc236('0x1f')]);}logger[_0xc236('0x1d')](_0xc236('0x1a'),_0x6db6b9,_0x9a65e8[_0xc236('0x1d')][_0xc236('0x1f')]);return _0x71bce2(_0x9a65e8[_0xc236('0x1d')][_0xc236('0x1f')]);}else{logger[_0xc236('0x19')](_0xc236('0x1a'),_0x6db6b9,_0xc236('0x1b'));_0x71bce2(_0x9a65e8['result'][_0xc236('0x1f')]);}})[_0xc236('0x20')](function(_0x3bd41b){logger[_0xc236('0x1d')](_0xc236('0x1a'),_0x6db6b9,_0x3bd41b);_0x5052db(_0x3bd41b);});});}function respondWithStatusCode(_0x21fab8,_0x3a315b){_0x3a315b=_0x3a315b||0xcc;return function(_0xf921e6){if(_0xf921e6){return _0x21fab8[_0xc236('0x21')](_0x3a315b);}return _0x21fab8[_0xc236('0x22')](_0x3a315b)[_0xc236('0x23')]();};}function respondWithResult(_0x5d4edc,_0x308cd6){_0x308cd6=_0x308cd6||0xc8;return function(_0x21d78f){if(_0x21d78f){return _0x5d4edc[_0xc236('0x22')](_0x308cd6)[_0xc236('0x24')](_0x21d78f);}};}function respondWithFilteredResult(_0x561da1,_0x42f248){return function(_0x5da4b2){if(_0x5da4b2){var _0x5351bc=typeof _0x42f248[_0xc236('0x25')]==='undefined'&&typeof _0x42f248[_0xc236('0x26')]==='undefined';var _0x54365=_0x5da4b2['count'];var _0x423842=_0x5351bc?0x0:_0x42f248[_0xc236('0x25')];var _0x4f5175=_0x5351bc?_0x5da4b2['count']:_0x42f248[_0xc236('0x25')]+_0x42f248[_0xc236('0x26')];var _0x1f4995;if(_0x4f5175>=_0x54365){_0x4f5175=_0x54365;_0x1f4995=0xc8;}else{_0x1f4995=0xce;}_0x561da1[_0xc236('0x22')](_0x1f4995);return _0x561da1['set']('Content-Range',_0x423842+'-'+_0x4f5175+'/'+_0x54365)[_0xc236('0x24')](_0x5da4b2);}return null;};}function patchUpdates(_0x53b767){return function(_0x2c756f){try{jsonpatch['apply'](_0x2c756f,_0x53b767,!![]);}catch(_0x1a3409){return BPromise[_0xc236('0x27')](_0x1a3409);}return _0x2c756f['save']();};}function saveUpdates(_0x5a5ec3,_0x2537f9){return function(_0x3053a3){if(_0x3053a3){return _0x3053a3[_0xc236('0x28')](_0x5a5ec3)[_0xc236('0x29')](function(_0x944298){return _0x944298;});}return null;};}function removeEntity(_0xa298f8,_0x259c0f){return function(_0x22a2ca){if(_0x22a2ca){return _0x22a2ca[_0xc236('0x2a')]()['then'](function(){var _0x51fd41=_0x22a2ca['get']({'plain':!![]});var _0x1b4fb2=_0xc236('0x2b');return db[_0xc236('0x2c')][_0xc236('0x2a')]({'where':{'type':_0x1b4fb2,'resourceId':_0x51fd41['id']}})[_0xc236('0x29')](function(){return _0x22a2ca;});})[_0xc236('0x29')](function(){_0xa298f8[_0xc236('0x22')](0xcc)['end']();});}};}function handleEntityNotFound(_0x15f8c0,_0x3f9b1d){return function(_0xc77281){if(!_0xc77281){_0x15f8c0['sendStatus'](0x194);}return _0xc77281;};}function handleError(_0x40de85,_0x2a8f33){_0x2a8f33=_0x2a8f33||0x1f4;return function(_0x3740c9){logger[_0xc236('0x1d')](_0x3740c9['stack']);if(_0x3740c9[_0xc236('0x2d')]){delete _0x3740c9[_0xc236('0x2d')];}_0x40de85[_0xc236('0x22')](_0x2a8f33)[_0xc236('0x2e')](_0x3740c9);};}exports[_0xc236('0x2f')]=function(_0x1edab3,_0x282c8c){var _0x11ca1c={},_0x131212={},_0x1251af={'count':0x0,'rows':[]};var _0x2bb05e=_[_0xc236('0x30')](db[_0xc236('0x31')][_0xc236('0x32')],function(_0x12e802){return{'name':_0x12e802[_0xc236('0x33')],'type':_0x12e802[_0xc236('0x34')]['key']};});_0x131212['model']=_['map'](_0x2bb05e,'name');_0x131212[_0xc236('0x35')]=_['keys'](_0x1edab3[_0xc236('0x35')]);_0x131212[_0xc236('0x36')]=_[_0xc236('0x37')](_0x131212[_0xc236('0x38')],_0x131212[_0xc236('0x35')]);_0x11ca1c[_0xc236('0x39')]=_[_0xc236('0x37')](_0x131212[_0xc236('0x38')],qs[_0xc236('0x3a')](_0x1edab3[_0xc236('0x35')][_0xc236('0x3a')]));_0x11ca1c[_0xc236('0x39')]=_0x11ca1c[_0xc236('0x39')][_0xc236('0x3b')]?_0x11ca1c[_0xc236('0x39')]:_0x131212['model'];if(!_0x1edab3[_0xc236('0x35')][_0xc236('0x3c')]('nolimit')){_0x11ca1c[_0xc236('0x26')]=qs['limit'](_0x1edab3[_0xc236('0x35')]['limit']);_0x11ca1c[_0xc236('0x25')]=qs[_0xc236('0x25')](_0x1edab3[_0xc236('0x35')]['offset']);}_0x11ca1c[_0xc236('0x3d')]=qs[_0xc236('0x3e')](_0x1edab3[_0xc236('0x35')]['sort']);_0x11ca1c[_0xc236('0x3f')]=qs[_0xc236('0x36')](_[_0xc236('0x40')](_0x1edab3[_0xc236('0x35')],_0x131212[_0xc236('0x36')]),_0x2bb05e);if(_0x1edab3[_0xc236('0x35')]['filter']){_0x11ca1c[_0xc236('0x3f')]=_['merge'](_0x11ca1c[_0xc236('0x3f')],{'$or':_[_0xc236('0x30')](_0x2bb05e,function(_0x21b7ff){if(_0x21b7ff[_0xc236('0x34')]!==_0xc236('0x41')){var _0xcd341c={};_0xcd341c[_0x21b7ff[_0xc236('0x2d')]]={'$like':'%'+_0x1edab3['query'][_0xc236('0x42')]+'%'};return _0xcd341c;}})});}_0x11ca1c=_['merge']({},_0x11ca1c,_0x1edab3[_0xc236('0x43')]);var _0x2f52b9={'where':_0x11ca1c['where']};return db[_0xc236('0x31')][_0xc236('0x44')](_0x2f52b9)[_0xc236('0x29')](function(_0x161890){_0x1251af[_0xc236('0x44')]=_0x161890;if(_0x1edab3[_0xc236('0x35')][_0xc236('0x45')]){_0x11ca1c['include']=[{'all':!![]}];}return db['Trunk'][_0xc236('0x46')](_0x11ca1c);})[_0xc236('0x29')](function(_0x510f7f){_0x1251af[_0xc236('0x47')]=_0x510f7f;return _0x1251af;})[_0xc236('0x29')](respondWithFilteredResult(_0x282c8c,_0x11ca1c))[_0xc236('0x20')](handleError(_0x282c8c,null));};exports[_0xc236('0x48')]=function(_0x45fa20,_0x1683f4){var _0x300523={'raw':![],'where':{'id':_0x45fa20[_0xc236('0x49')]['id']}},_0x14a83d={};_0x14a83d['model']=_[_0xc236('0x4a')](db[_0xc236('0x31')][_0xc236('0x32')]);_0x14a83d[_0xc236('0x35')]=_[_0xc236('0x4a')](_0x45fa20[_0xc236('0x35')]);_0x14a83d[_0xc236('0x36')]=_['intersection'](_0x14a83d[_0xc236('0x38')],_0x14a83d[_0xc236('0x35')]);_0x300523[_0xc236('0x39')]=_[_0xc236('0x37')](_0x14a83d['model'],qs[_0xc236('0x3a')](_0x45fa20[_0xc236('0x35')][_0xc236('0x3a')]));_0x300523[_0xc236('0x39')]=_0x300523[_0xc236('0x39')]['length']?_0x300523[_0xc236('0x39')]:_0x14a83d['model'];if(_0x45fa20[_0xc236('0x35')][_0xc236('0x45')]){_0x300523[_0xc236('0x4b')]=[{'all':!![]}];}_0x300523=_[_0xc236('0x4c')]({},_0x300523,_0x45fa20[_0xc236('0x43')]);return db['Trunk']['find'](_0x300523)[_0xc236('0x29')](handleEntityNotFound(_0x1683f4,null))[_0xc236('0x29')](respondWithResult(_0x1683f4,null))[_0xc236('0x20')](handleError(_0x1683f4,null));};exports[_0xc236('0x4d')]=function(_0x3c4256,_0x22b929){var _0x3fd22b={'where':{'id':_0x3c4256[_0xc236('0x49')]['id']}},_0x3abc9b={};_0x3abc9b[_0xc236('0x38')]=_['keys'](db['Trunk'][_0xc236('0x32')]);_0x3fd22b[_0xc236('0x39')]=_[_0xc236('0x37')](_0x3abc9b[_0xc236('0x38')],qs['fields'](_0x3c4256[_0xc236('0x35')][_0xc236('0x3a')]));_0x3fd22b['attributes']=_0x3fd22b[_0xc236('0x39')][_0xc236('0x3b')]?_0x3fd22b[_0xc236('0x39')]:_0x3abc9b[_0xc236('0x38')];if(_0x3c4256['query'][_0xc236('0x45')]){_0x3fd22b[_0xc236('0x4b')]=[{'all':!![]}];}_0x3fd22b=_[_0xc236('0x4c')]({},_0x3fd22b,_0x3c4256[_0xc236('0x43')]);return db[_0xc236('0x31')][_0xc236('0x4e')](_0x3fd22b)[_0xc236('0x29')](handleEntityNotFound(_0x22b929,null))['then'](function(_0x490a69){if(_0x490a69){var _0x4c99a4=_0x490a69[_0xc236('0x4f')]({'plain':!![]});_0x4c99a4=qs[_0xc236('0x50')](_0x4c99a4,['id',_0xc236('0x51'),_0xc236('0x52')]);_0x3c4256['body']=_[_0xc236('0x50')](_0x3c4256[_0xc236('0x53')],['id',_0xc236('0x51'),'updatedAt']);return db[_0xc236('0x31')][_0xc236('0x54')](_[_0xc236('0x4c')](_0x4c99a4,_0x3c4256[_0xc236('0x53')]),{'include':_0x3c4256[_0xc236('0x35')][_0xc236('0x45')]?[{'all':!![]}]:undefined})['then'](function(_0x59a87c){var _0xee40c7=_0x3c4256[_0xc236('0x55')][_0xc236('0x4f')]({'plain':!![]});if(!_0xee40c7)throw new Error(_0xc236('0x56'));if(_0xee40c7[_0xc236('0x57')]===_0xc236('0x55')){var _0x264dcd=_0x59a87c['get']({'plain':!![]});var _0x59466f='Trunks';return db[_0xc236('0x58')][_0xc236('0x4e')]({'where':{'name':_0x59466f,'userProfileId':_0xee40c7[_0xc236('0x59')]},'raw':!![]})[_0xc236('0x29')](function(_0x47aa3f){if(_0x47aa3f&&_0x47aa3f['autoAssociation']===0x0){return db['UserProfileResource']['create']({'name':_0x264dcd[_0xc236('0x2d')],'resourceId':_0x264dcd['id'],'type':_0x47aa3f['name'],'sectionId':_0x47aa3f['id']},{})[_0xc236('0x29')](function(){return _0x59a87c;});}else{return _0x59a87c;}})['catch'](function(_0x9fa6b2){logger[_0xc236('0x1d')](_0xc236('0x5a'),_0x9fa6b2);throw _0x9fa6b2;});}return _0x59a87c;});}})[_0xc236('0x29')](respondWithResult(_0x22b929,0xc9))[_0xc236('0x20')](handleError(_0x22b929,null));};exports[_0xc236('0x54')]=function(_0x1d019d,_0x48f0bd,_0x32e876){var _0x5d0172;return db[_0xc236('0x31')][_0xc236('0x54')](_0x1d019d[_0xc236('0x53')],{'raw':!![]})[_0xc236('0x29')](function(_0x1f9fcd){_0x5d0172=_0x1f9fcd;return db[_0xc236('0x31')]['findAll']({'raw':!![]});})[_0xc236('0x29')](function(_0x94f65d){var _0x4bb0c6=fs[_0xc236('0x5b')](path[_0xc236('0x5c')](config[_0xc236('0x5d')],'server/files/templates/trunk.ejs'),_0xc236('0x5e'));var _0x45fe5a=fs[_0xc236('0x5b')](path[_0xc236('0x5c')](config[_0xc236('0x5d')],_0xc236('0x5f')),_0xc236('0x5e'));var _0xd308b7=ejs[_0xc236('0x60')](_0x4bb0c6,{'trunks':_0x94f65d||[]});fs[_0xc236('0x61')](_0xc236('0x62'),_0xd308b7);if(_0x5d0172[_0xc236('0x63')]){var _0x5d627d=ejs[_0xc236('0x60')](_0x45fe5a,{'trunks':_0x94f65d||[]});fs[_0xc236('0x61')](_0xc236('0x64'),_0x5d627d);}})['then'](function(){return respondWithRpcPromise(_0xc236('0x65'),_0xc236('0x54'),{'module':_0xc236('0x66')});})[_0xc236('0x29')](function(){var _0x510314=_0x1d019d[_0xc236('0x55')]['get']({'plain':!![]});if(!_0x510314)throw new Error(_0xc236('0x56'));if(_0x510314['role']===_0xc236('0x55')){var _0x9e8038=_0x5d0172['get']({'plain':!![]});return db['UserProfileSection']['find']({'where':{'name':_0xc236('0x2b'),'userProfileId':_0x510314['userProfileId']},'raw':!![]})[_0xc236('0x29')](function(_0x340c01){if(_0x340c01&&_0x340c01['autoAssociation']===0x0){return db[_0xc236('0x2c')][_0xc236('0x54')]({'name':_0x9e8038['name'],'resourceId':_0x9e8038['id'],'type':_0x340c01[_0xc236('0x2d')],'sectionId':_0x340c01['id']},{})[_0xc236('0x29')](function(){return _0x5d0172;});}else{return _0x5d0172;}})[_0xc236('0x20')](function(_0x1561a9){logger['error'](_0xc236('0x5a'),_0x1561a9);throw _0x1561a9;});}return _0x5d0172;})[_0xc236('0x29')](respondWithResult(_0x48f0bd,0xc9))[_0xc236('0x20')](handleError(_0x48f0bd,null));};exports[_0xc236('0x28')]=function(_0x93aa0f,_0x8b7651,_0x141497){var _0x509f3b;return db['Trunk'][_0xc236('0x4e')]({'where':{'id':_0x93aa0f[_0xc236('0x49')]['id']}})[_0xc236('0x29')](handleEntityNotFound(_0x8b7651,null))[_0xc236('0x29')](saveUpdates(_0x93aa0f[_0xc236('0x53')],null))[_0xc236('0x29')](function(_0x8967c){if(_0x8967c){_0x509f3b=_0x8967c;return db[_0xc236('0x31')]['findAll']({'raw':!![]});}})['then'](function(_0x2c037a){if(_0x2c037a){var _0x47cd85=fs[_0xc236('0x5b')](path[_0xc236('0x5c')](config[_0xc236('0x5d')],'server/files/templates/trunk.ejs'),_0xc236('0x5e'));var _0x4b0345=fs[_0xc236('0x5b')](path[_0xc236('0x5c')](config[_0xc236('0x5d')],_0xc236('0x5f')),'utf8');var _0x41c76d=ejs[_0xc236('0x60')](_0x47cd85,{'trunks':_0x2c037a||[]});fs['writeFileSync'](_0xc236('0x62'),_0x41c76d);var _0x237209=ejs[_0xc236('0x60')](_0x4b0345,{'trunks':_0x2c037a||[]});fs[_0xc236('0x61')](_0xc236('0x64'),_0x237209);return respondWithRpcPromise(_0xc236('0x65'),_0xc236('0x28'),{'module':'chan_sip.so'});}return null;})[_0xc236('0x29')](function(_0x40350d){if(_0x40350d){return _0x509f3b;}})[_0xc236('0x29')](respondWithResult(_0x8b7651,null))[_0xc236('0x20')](handleError(_0x8b7651,null));};exports['destroy']=function(_0x3646c6,_0x1ee8d0,_0x50d1c6){var _0x40fd6d;return db['Trunk'][_0xc236('0x4e')]({'where':{'id':_0x3646c6[_0xc236('0x49')]['id']}})['then'](handleEntityNotFound(_0x1ee8d0,null))[_0xc236('0x29')](removeEntity(_0x1ee8d0,null))[_0xc236('0x29')](function(){return db['Trunk']['findAll']({'raw':!![]});})[_0xc236('0x29')](function(_0x433761){var _0xae0769=fs[_0xc236('0x5b')](path[_0xc236('0x5c')](config[_0xc236('0x5d')],'server/files/templates/trunk.ejs'),_0xc236('0x5e'));var _0x4019e5=fs[_0xc236('0x5b')](path[_0xc236('0x5c')](config['root'],_0xc236('0x5f')),_0xc236('0x5e'));var _0xaedad5=ejs[_0xc236('0x60')](_0xae0769,{'trunks':_0x433761});var _0x161999=ejs['render'](_0x4019e5,{'trunks':_0x433761});fs['writeFileSync'](_0xc236('0x62'),_0xaedad5);fs['writeFileSync'](_0xc236('0x64'),_0x161999);return respondWithRpcPromise(_0xc236('0x65'),_0xc236('0x2a'),{'module':_0xc236('0x66')});})['catch'](handleError(_0x1ee8d0,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(_0x4ef402,_0x58c632){var _0x44b661=function(_0x70dfe3){while(--_0x70dfe3){_0x4ef402['push'](_0x4ef402['shift']());}};_0x44b661(++_0x58c632);}(_0xa41a,0x6b));var _0xaa41=function(_0x6368a2,_0x53740b){_0x6368a2=_0x6368a2-0x0;var _0x247cfb=_0xa41a[_0x6368a2];return _0x247cfb;};'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