Built motion from commit (unavailable).|2.5.31
[motion2.git] / server / api / trunk / trunk.controller.js
index 8783e87..b65aea0 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x2032=['moment','bluebird','util','path','sox','to-csv','ejs','fs-extra','lodash','squel','crypto','jsforce','desk.js','papaparse','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger','../../config/utils','../../config/license/util','../../mysqldb','request','then','info','Trunk,\x20%s,\x20%s','request\x20sent','debug','Trunk,\x20%s,\x20%s,\x20%s','stringify','error','code','message','catch','sendStatus','status','end','json','offset','limit','undefined','count','Content-Range','reject','Trunks','UserProfileResource','destroy','stack','name','render','body','agent','interaction','account','index','map','Trunk','rawAttributes','type','key','model','keys','filters','intersection','fields','query','attributes','length','hasOwnProperty','nolimit','order','sort','pick','filter','where','merge','options','includeAll','rows','include','find','get','omit','createdAt','updatedAt','create','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','UserProfileSection','userProfileId','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','findAll','readFileSync','join','root','server/files/templates/trunk.ejs','utf8','server/files/templates/registry.ejs','writeFileSync','/etc/asterisk/sip_xcally_trunks.conf','registry','update','params','/etc/asterisk/sip_xcally_registers.conf','chan_sip.so','Reload','rimraf','zip-dir','fast-json-patch'];(function(_0x2ea754,_0xf70140){var _0x32c0e8=function(_0x532475){while(--_0x532475){_0x2ea754['push'](_0x2ea754['shift']());}};_0x32c0e8(++_0xf70140);}(_0x2032,0xd9));var _0x2203=function(_0x5d4c7f,_0xc44c9f){_0x5d4c7f=_0x5d4c7f-0x0;var _0xcfb220=_0x2032[_0x5d4c7f];return _0xcfb220;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0x2203('0x0'));var zipdir=require(_0x2203('0x1'));var jsonpatch=require(_0x2203('0x2'));var rp=require('request-promise');var moment=require(_0x2203('0x3'));var BPromise=require(_0x2203('0x4'));var Mustache=require('mustache');var util=require(_0x2203('0x5'));var path=require(_0x2203('0x6'));var sox=require(_0x2203('0x7'));var csv=require(_0x2203('0x8'));var ejs=require(_0x2203('0x9'));var fs=require('fs');var fs_extra=require(_0x2203('0xa'));var _=require(_0x2203('0xb'));var squel=require(_0x2203('0xc'));var crypto=require(_0x2203('0xd'));var jsforce=require(_0x2203('0xe'));var deskjs=require(_0x2203('0xf'));var toCsv=require('to-csv');var querystring=require('querystring');var Papa=require(_0x2203('0x10'));var Redis=require('ioredis');var authService=require(_0x2203('0x11'));var qs=require(_0x2203('0x12'));var as=require(_0x2203('0x13'));var hardwareService=require('../../config/license/hardware');var logger=require(_0x2203('0x14'))('api');var utils=require(_0x2203('0x15'));var config=require('../../config/environment');var licenseUtil=require(_0x2203('0x16'));var db=require(_0x2203('0x17'))['db'];var jayson=require('jayson/promise');var client=jayson['client']['http']({'port':0x232a});function respondWithRpcPromise(_0x5f56ff,_0x4bad7c,_0x238772,_0x538b30){return new BPromise(function(_0x592e47,_0x21a3af){var _0x472265=_0x538b30||client;return _0x472265[_0x2203('0x18')](_0x5f56ff,_0x238772)[_0x2203('0x19')](function(_0x226209){logger[_0x2203('0x1a')](_0x2203('0x1b'),_0x4bad7c,_0x2203('0x1c'));logger[_0x2203('0x1d')](_0x2203('0x1e'),_0x4bad7c,'request\x20sent',JSON[_0x2203('0x1f')](_0x226209));if(_0x226209[_0x2203('0x20')]){if(_0x226209['error'][_0x2203('0x21')]===0x1f4){logger[_0x2203('0x20')]('Trunk,\x20%s,\x20%s',_0x4bad7c,_0x226209[_0x2203('0x20')]['message']);return _0x21a3af(_0x226209[_0x2203('0x20')][_0x2203('0x22')]);}logger[_0x2203('0x20')](_0x2203('0x1b'),_0x4bad7c,_0x226209[_0x2203('0x20')][_0x2203('0x22')]);return _0x592e47(_0x226209['error'][_0x2203('0x22')]);}else{logger['info']('Trunk,\x20%s,\x20%s',_0x4bad7c,_0x2203('0x1c'));_0x592e47(_0x226209['result'][_0x2203('0x22')]);}})[_0x2203('0x23')](function(_0x5d4c4e){logger[_0x2203('0x20')]('Trunk,\x20%s,\x20%s',_0x4bad7c,_0x5d4c4e);_0x21a3af(_0x5d4c4e);});});}function respondWithStatusCode(_0x5c8da9,_0x226374){_0x226374=_0x226374||0xcc;return function(_0x2718f5){if(_0x2718f5){return _0x5c8da9[_0x2203('0x24')](_0x226374);}return _0x5c8da9[_0x2203('0x25')](_0x226374)[_0x2203('0x26')]();};}function respondWithResult(_0x3114ef,_0x49c12){_0x49c12=_0x49c12||0xc8;return function(_0x250349){if(_0x250349){return _0x3114ef['status'](_0x49c12)[_0x2203('0x27')](_0x250349);}};}function respondWithFilteredResult(_0x36b958,_0x39a11a){return function(_0x5f11bf){if(_0x5f11bf){var _0xb2071b=typeof _0x39a11a[_0x2203('0x28')]==='undefined'&&typeof _0x39a11a[_0x2203('0x29')]===_0x2203('0x2a');var _0x1c6a77=_0x5f11bf[_0x2203('0x2b')];var _0x28ae02=_0xb2071b?0x0:_0x39a11a[_0x2203('0x28')];var _0x9c53f=_0xb2071b?_0x5f11bf['count']:_0x39a11a[_0x2203('0x28')]+_0x39a11a[_0x2203('0x29')];var _0x406ce9;if(_0x9c53f>=_0x1c6a77){_0x9c53f=_0x1c6a77;_0x406ce9=0xc8;}else{_0x406ce9=0xce;}_0x36b958[_0x2203('0x25')](_0x406ce9);return _0x36b958['set'](_0x2203('0x2c'),_0x28ae02+'-'+_0x9c53f+'/'+_0x1c6a77)[_0x2203('0x27')](_0x5f11bf);}return null;};}function patchUpdates(_0x287c95){return function(_0xf59954){try{jsonpatch['apply'](_0xf59954,_0x287c95,!![]);}catch(_0xea1637){return BPromise[_0x2203('0x2d')](_0xea1637);}return _0xf59954['save']();};}function saveUpdates(_0x5c0157,_0x1d5f74){return function(_0x52fafc){if(_0x52fafc){return _0x52fafc['update'](_0x5c0157)[_0x2203('0x19')](function(_0x464c88){return _0x464c88;});}return null;};}function removeEntity(_0x191894,_0x1e0aa9){return function(_0xf2801d){if(_0xf2801d){return _0xf2801d['destroy']()[_0x2203('0x19')](function(){var _0x2324c0=_0xf2801d['get']({'plain':!![]});var _0x2a2ee7=_0x2203('0x2e');return db[_0x2203('0x2f')][_0x2203('0x30')]({'where':{'type':_0x2a2ee7,'resourceId':_0x2324c0['id']}})[_0x2203('0x19')](function(){return _0xf2801d;});})[_0x2203('0x19')](function(){_0x191894[_0x2203('0x25')](0xcc)[_0x2203('0x26')]();});}};}function handleEntityNotFound(_0x708faa,_0x522a69){return function(_0x15c0ad){if(!_0x15c0ad){_0x708faa[_0x2203('0x24')](0x194);}return _0x15c0ad;};}function handleError(_0x56f9b2,_0x54b90b){_0x54b90b=_0x54b90b||0x1f4;return function(_0x2c58b1){logger['error'](_0x2c58b1[_0x2203('0x31')]);if(_0x2c58b1[_0x2203('0x32')]){delete _0x2c58b1[_0x2203('0x32')];}_0x56f9b2['status'](_0x54b90b)['send'](_0x2c58b1);};}function getMustacheRender(_0x34cdeb,_0x47c93a){return Mustache[_0x2203('0x33')](_0x34cdeb,_['merge'](_0x47c93a[_0x2203('0x34')],{'contact':_0x47c93a['contact'],'message':_0x47c93a[_0x2203('0x22')],'agent':_0x47c93a[_0x2203('0x35')],'interaction':_0x47c93a[_0x2203('0x36')],'account':_0x47c93a[_0x2203('0x37')]}))||'';}exports[_0x2203('0x38')]=function(_0x5436d2,_0x5f1561){var _0x4c0e9e={},_0x7ea79b={},_0x25a2dc={'count':0x0,'rows':[]};var _0x323798=_[_0x2203('0x39')](db[_0x2203('0x3a')][_0x2203('0x3b')],function(_0x1c7e3d){return{'name':_0x1c7e3d['fieldName'],'type':_0x1c7e3d[_0x2203('0x3c')][_0x2203('0x3d')]};});_0x7ea79b[_0x2203('0x3e')]=_[_0x2203('0x39')](_0x323798,'name');_0x7ea79b['query']=_[_0x2203('0x3f')](_0x5436d2['query']);_0x7ea79b[_0x2203('0x40')]=_[_0x2203('0x41')](_0x7ea79b[_0x2203('0x3e')],_0x7ea79b['query']);_0x4c0e9e['attributes']=_[_0x2203('0x41')](_0x7ea79b[_0x2203('0x3e')],qs[_0x2203('0x42')](_0x5436d2[_0x2203('0x43')][_0x2203('0x42')]));_0x4c0e9e[_0x2203('0x44')]=_0x4c0e9e['attributes'][_0x2203('0x45')]?_0x4c0e9e[_0x2203('0x44')]:_0x7ea79b[_0x2203('0x3e')];if(!_0x5436d2[_0x2203('0x43')][_0x2203('0x46')](_0x2203('0x47'))){_0x4c0e9e[_0x2203('0x29')]=qs[_0x2203('0x29')](_0x5436d2[_0x2203('0x43')][_0x2203('0x29')]);_0x4c0e9e['offset']=qs[_0x2203('0x28')](_0x5436d2[_0x2203('0x43')][_0x2203('0x28')]);}_0x4c0e9e[_0x2203('0x48')]=qs['sort'](_0x5436d2['query'][_0x2203('0x49')]);_0x4c0e9e['where']=qs[_0x2203('0x40')](_[_0x2203('0x4a')](_0x5436d2[_0x2203('0x43')],_0x7ea79b[_0x2203('0x40')]),_0x323798);if(_0x5436d2['query'][_0x2203('0x4b')]){_0x4c0e9e[_0x2203('0x4c')]=_['merge'](_0x4c0e9e[_0x2203('0x4c')],{'$or':_[_0x2203('0x39')](_0x323798,function(_0x35b2e9){if(_0x35b2e9[_0x2203('0x3c')]!=='VIRTUAL'){var _0x4c1a29={};_0x4c1a29[_0x35b2e9[_0x2203('0x32')]]={'$like':'%'+_0x5436d2['query']['filter']+'%'};return _0x4c1a29;}})});}_0x4c0e9e=_[_0x2203('0x4d')]({},_0x4c0e9e,_0x5436d2[_0x2203('0x4e')]);var _0x1a2665={'where':_0x4c0e9e['where']};return db['Trunk'][_0x2203('0x2b')](_0x1a2665)[_0x2203('0x19')](function(_0x12d7fa){_0x25a2dc[_0x2203('0x2b')]=_0x12d7fa;if(_0x5436d2[_0x2203('0x43')][_0x2203('0x4f')]){_0x4c0e9e['include']=[{'all':!![]}];}return db[_0x2203('0x3a')]['findAll'](_0x4c0e9e);})[_0x2203('0x19')](function(_0x39ff6f){_0x25a2dc[_0x2203('0x50')]=_0x39ff6f;return _0x25a2dc;})[_0x2203('0x19')](respondWithFilteredResult(_0x5f1561,_0x4c0e9e))['catch'](handleError(_0x5f1561,null));};exports['show']=function(_0x30d503,_0x1f772d){var _0x126aad={'raw':![],'where':{'id':_0x30d503['params']['id']}},_0x1a1c00={};_0x1a1c00['model']=_['keys'](db[_0x2203('0x3a')][_0x2203('0x3b')]);_0x1a1c00['query']=_[_0x2203('0x3f')](_0x30d503[_0x2203('0x43')]);_0x1a1c00['filters']=_[_0x2203('0x41')](_0x1a1c00[_0x2203('0x3e')],_0x1a1c00[_0x2203('0x43')]);_0x126aad[_0x2203('0x44')]=_['intersection'](_0x1a1c00[_0x2203('0x3e')],qs['fields'](_0x30d503[_0x2203('0x43')][_0x2203('0x42')]));_0x126aad['attributes']=_0x126aad[_0x2203('0x44')][_0x2203('0x45')]?_0x126aad[_0x2203('0x44')]:_0x1a1c00[_0x2203('0x3e')];if(_0x30d503[_0x2203('0x43')][_0x2203('0x4f')]){_0x126aad['include']=[{'all':!![]}];}_0x126aad=_['merge']({},_0x126aad,_0x30d503[_0x2203('0x4e')]);return db['Trunk']['find'](_0x126aad)[_0x2203('0x19')](handleEntityNotFound(_0x1f772d,null))[_0x2203('0x19')](respondWithResult(_0x1f772d,null))[_0x2203('0x23')](handleError(_0x1f772d,null));};exports['clone']=function(_0x213c24,_0x4b2788){var _0x5ddf9e={'where':{'id':_0x213c24['params']['id']}},_0xeb6b44={};_0xeb6b44['model']=_['keys'](db[_0x2203('0x3a')][_0x2203('0x3b')]);_0x5ddf9e[_0x2203('0x44')]=_[_0x2203('0x41')](_0xeb6b44[_0x2203('0x3e')],qs[_0x2203('0x42')](_0x213c24[_0x2203('0x43')][_0x2203('0x42')]));_0x5ddf9e[_0x2203('0x44')]=_0x5ddf9e[_0x2203('0x44')][_0x2203('0x45')]?_0x5ddf9e[_0x2203('0x44')]:_0xeb6b44['model'];if(_0x213c24['query'][_0x2203('0x4f')]){_0x5ddf9e[_0x2203('0x51')]=[{'all':!![]}];}_0x5ddf9e=_[_0x2203('0x4d')]({},_0x5ddf9e,_0x213c24[_0x2203('0x4e')]);return db[_0x2203('0x3a')][_0x2203('0x52')](_0x5ddf9e)['then'](handleEntityNotFound(_0x4b2788,null))['then'](function(_0xb49120){if(_0xb49120){var _0x34358e=_0xb49120[_0x2203('0x53')]({'plain':!![]});_0x34358e=qs[_0x2203('0x54')](_0x34358e,['id',_0x2203('0x55'),_0x2203('0x56')]);_0x213c24[_0x2203('0x34')]=_[_0x2203('0x54')](_0x213c24[_0x2203('0x34')],['id',_0x2203('0x55'),_0x2203('0x56')]);return db['Trunk'][_0x2203('0x57')](_[_0x2203('0x4d')](_0x34358e,_0x213c24[_0x2203('0x34')]),{'include':_0x213c24[_0x2203('0x43')][_0x2203('0x4f')]?[{'all':!![]}]:undefined})[_0x2203('0x19')](function(_0x52c159){var _0x544756=_0x213c24[_0x2203('0x58')][_0x2203('0x53')]({'plain':!![]});if(!_0x544756)throw new Error(_0x2203('0x59'));if(_0x544756[_0x2203('0x5a')]===_0x2203('0x58')){var _0x24179a=_0x52c159[_0x2203('0x53')]({'plain':!![]});var _0x34e820=_0x2203('0x2e');return db[_0x2203('0x5b')][_0x2203('0x52')]({'where':{'name':_0x34e820,'userProfileId':_0x544756[_0x2203('0x5c')]},'raw':!![]})['then'](function(_0x468619){if(_0x468619&&_0x468619[_0x2203('0x5d')]===0x0){return db[_0x2203('0x2f')]['create']({'name':_0x24179a[_0x2203('0x32')],'resourceId':_0x24179a['id'],'type':_0x468619[_0x2203('0x32')],'sectionId':_0x468619['id']},{})[_0x2203('0x19')](function(){return _0x52c159;});}else{return _0x52c159;}})[_0x2203('0x23')](function(_0x403b89){logger['error'](_0x2203('0x5e'),_0x403b89);throw _0x403b89;});}return _0x52c159;});}})[_0x2203('0x19')](respondWithResult(_0x4b2788,0xc9))[_0x2203('0x23')](handleError(_0x4b2788,null));};exports['create']=function(_0x5507b6,_0x5d9ae2,_0x485e5b){var _0x595814;return db[_0x2203('0x3a')][_0x2203('0x57')](_0x5507b6[_0x2203('0x34')],{'raw':!![]})[_0x2203('0x19')](function(_0x4287f4){_0x595814=_0x4287f4;return db[_0x2203('0x3a')][_0x2203('0x5f')]({'raw':!![]});})[_0x2203('0x19')](function(_0x56dcbe){var _0x500860=fs[_0x2203('0x60')](path[_0x2203('0x61')](config[_0x2203('0x62')],_0x2203('0x63')),_0x2203('0x64'));var _0x32a348=fs[_0x2203('0x60')](path[_0x2203('0x61')](config[_0x2203('0x62')],_0x2203('0x65')),_0x2203('0x64'));var _0xf16e1d=ejs[_0x2203('0x33')](_0x500860,{'trunks':_0x56dcbe||[]});fs[_0x2203('0x66')](_0x2203('0x67'),_0xf16e1d);if(_0x595814[_0x2203('0x68')]){var _0x3fe739=ejs[_0x2203('0x33')](_0x32a348,{'trunks':_0x56dcbe||[]});fs[_0x2203('0x66')]('/etc/asterisk/sip_xcally_registers.conf',_0x3fe739);}})[_0x2203('0x19')](function(){return respondWithRpcPromise('Reload',_0x2203('0x57'),{'module':'chan_sip.so'});})[_0x2203('0x19')](function(){var _0xf71e7e=_0x5507b6[_0x2203('0x58')][_0x2203('0x53')]({'plain':!![]});if(!_0xf71e7e)throw new Error(_0x2203('0x59'));if(_0xf71e7e[_0x2203('0x5a')]===_0x2203('0x58')){var _0x2eab08=_0x595814['get']({'plain':!![]});return db['UserProfileSection'][_0x2203('0x52')]({'where':{'name':_0x2203('0x2e'),'userProfileId':_0xf71e7e[_0x2203('0x5c')]},'raw':!![]})['then'](function(_0x48c6c9){if(_0x48c6c9&&_0x48c6c9['autoAssociation']===0x0){return db[_0x2203('0x2f')][_0x2203('0x57')]({'name':_0x2eab08[_0x2203('0x32')],'resourceId':_0x2eab08['id'],'type':_0x48c6c9[_0x2203('0x32')],'sectionId':_0x48c6c9['id']},{})['then'](function(){return _0x595814;});}else{return _0x595814;}})[_0x2203('0x23')](function(_0x47a2c7){logger[_0x2203('0x20')](_0x2203('0x5e'),_0x47a2c7);throw _0x47a2c7;});}return _0x595814;})[_0x2203('0x19')](respondWithResult(_0x5d9ae2,0xc9))[_0x2203('0x23')](handleError(_0x5d9ae2,null));};exports[_0x2203('0x69')]=function(_0x56c79a,_0x4592fa,_0x247f26){var _0x18663f;return db['Trunk'][_0x2203('0x52')]({'where':{'id':_0x56c79a[_0x2203('0x6a')]['id']}})[_0x2203('0x19')](handleEntityNotFound(_0x4592fa,null))[_0x2203('0x19')](saveUpdates(_0x56c79a[_0x2203('0x34')],null))[_0x2203('0x19')](function(_0x1a2b7c){if(_0x1a2b7c){_0x18663f=_0x1a2b7c;return db[_0x2203('0x3a')][_0x2203('0x5f')]({'raw':!![]});}})[_0x2203('0x19')](function(_0x112385){if(_0x112385){var _0x5db33f=fs[_0x2203('0x60')](path[_0x2203('0x61')](config[_0x2203('0x62')],_0x2203('0x63')),_0x2203('0x64'));var _0x52c35e=fs[_0x2203('0x60')](path[_0x2203('0x61')](config[_0x2203('0x62')],_0x2203('0x65')),_0x2203('0x64'));var _0x1cc668=ejs['render'](_0x5db33f,{'trunks':_0x112385||[]});fs['writeFileSync'](_0x2203('0x67'),_0x1cc668);var _0x3a1c63=ejs[_0x2203('0x33')](_0x52c35e,{'trunks':_0x112385||[]});fs[_0x2203('0x66')](_0x2203('0x6b'),_0x3a1c63);return respondWithRpcPromise('Reload',_0x2203('0x69'),{'module':_0x2203('0x6c')});}return null;})['then'](function(_0x511689){if(_0x511689){return _0x18663f;}})['then'](respondWithResult(_0x4592fa,null))['catch'](handleError(_0x4592fa,null));};exports['destroy']=function(_0x2952fc,_0x6319a3,_0x437095){var _0x49fd02;return db['Trunk']['find']({'where':{'id':_0x2952fc[_0x2203('0x6a')]['id']}})[_0x2203('0x19')](handleEntityNotFound(_0x6319a3,null))[_0x2203('0x19')](removeEntity(_0x6319a3,null))[_0x2203('0x19')](function(){return db[_0x2203('0x3a')][_0x2203('0x5f')]({'raw':!![]});})[_0x2203('0x19')](function(_0x52f25e){var _0x3bf2c9=fs[_0x2203('0x60')](path[_0x2203('0x61')](config[_0x2203('0x62')],_0x2203('0x63')),_0x2203('0x64'));var _0x13e11f=fs['readFileSync'](path[_0x2203('0x61')](config['root'],'server/files/templates/registry.ejs'),_0x2203('0x64'));var _0x5cd030=ejs[_0x2203('0x33')](_0x3bf2c9,{'trunks':_0x52f25e});var _0x39e7b9=ejs['render'](_0x13e11f,{'trunks':_0x52f25e});fs[_0x2203('0x66')](_0x2203('0x67'),_0x5cd030);fs[_0x2203('0x66')](_0x2203('0x6b'),_0x39e7b9);return respondWithRpcPromise(_0x2203('0x6d'),_0x2203('0x30'),{'module':'chan_sip.so'});})[_0x2203('0x23')](handleError(_0x6319a3,null));};
\ No newline at end of file
+var _0x757a=['/etc/asterisk/sip_xcally_trunks.conf','Reload','chan_sip.so','server/files/templates/trunk.ejs','/etc/asterisk/sip_xcally_registers.conf','server/files/templates/registry.ejs','rimraf','zip-dir','bluebird','mustache','util','path','sox','to-csv','fs-extra','lodash','crypto','jsforce','desk.js','querystring','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','client','request','then','info','Trunk,\x20%s,\x20%s','request\x20sent','debug','stringify','error','message','result','catch','status','json','offset','limit','count','set','Content-Range','apply','reject','save','update','destroy','get','Trunks','UserProfileResource','sendStatus','stack','name','render','merge','body','contact','agent','interaction','index','map','Trunk','fieldName','type','query','filters','intersection','model','fields','attributes','length','hasOwnProperty','nolimit','sort','where','filter','VIRTUAL','includeAll','include','findAll','rows','show','params','keys','rawAttributes','find','clone','options','omit','createdAt','updatedAt','create','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','user','UserProfileSection','userProfileId','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','readFileSync','join','root','utf8','writeFileSync'];(function(_0x3826ad,_0x49a30d){var _0x17b900=function(_0x38474f){while(--_0x38474f){_0x3826ad['push'](_0x3826ad['shift']());}};_0x17b900(++_0x49a30d);}(_0x757a,0xde));var _0xa757=function(_0x1409ff,_0x49e282){_0x1409ff=_0x1409ff-0x0;var _0x2a293d=_0x757a[_0x1409ff];return _0x2a293d;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0xa757('0x0'));var zipdir=require(_0xa757('0x1'));var jsonpatch=require('fast-json-patch');var rp=require('request-promise');var moment=require('moment');var BPromise=require(_0xa757('0x2'));var Mustache=require(_0xa757('0x3'));var util=require(_0xa757('0x4'));var path=require(_0xa757('0x5'));var sox=require(_0xa757('0x6'));var csv=require(_0xa757('0x7'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0xa757('0x8'));var _=require(_0xa757('0x9'));var squel=require('squel');var crypto=require(_0xa757('0xa'));var jsforce=require(_0xa757('0xb'));var deskjs=require(_0xa757('0xc'));var toCsv=require(_0xa757('0x7'));var querystring=require(_0xa757('0xd'));var Papa=require('papaparse');var Redis=require(_0xa757('0xe'));var authService=require(_0xa757('0xf'));var qs=require(_0xa757('0x10'));var as=require(_0xa757('0x11'));var hardwareService=require(_0xa757('0x12'));var logger=require(_0xa757('0x13'))(_0xa757('0x14'));var utils=require('../../config/utils');var config=require('../../config/environment');var licenseUtil=require('../../config/license/util');var db=require('../../mysqldb')['db'];var jayson=require('jayson/promise');var client=jayson[_0xa757('0x15')]['http']({'port':0x232a});function respondWithRpcPromise(_0x564187,_0x2ed0d2,_0x513b1f,_0x481508){return new BPromise(function(_0x32112b,_0x1b670e){var _0x355f0a=_0x481508||client;return _0x355f0a[_0xa757('0x16')](_0x564187,_0x513b1f)[_0xa757('0x17')](function(_0x31cfd2){logger[_0xa757('0x18')](_0xa757('0x19'),_0x2ed0d2,_0xa757('0x1a'));logger[_0xa757('0x1b')]('Trunk,\x20%s,\x20%s,\x20%s',_0x2ed0d2,_0xa757('0x1a'),JSON[_0xa757('0x1c')](_0x31cfd2));if(_0x31cfd2[_0xa757('0x1d')]){if(_0x31cfd2['error']['code']===0x1f4){logger[_0xa757('0x1d')](_0xa757('0x19'),_0x2ed0d2,_0x31cfd2[_0xa757('0x1d')][_0xa757('0x1e')]);return _0x1b670e(_0x31cfd2[_0xa757('0x1d')][_0xa757('0x1e')]);}logger['error'](_0xa757('0x19'),_0x2ed0d2,_0x31cfd2['error'][_0xa757('0x1e')]);return _0x32112b(_0x31cfd2[_0xa757('0x1d')][_0xa757('0x1e')]);}else{logger[_0xa757('0x18')]('Trunk,\x20%s,\x20%s',_0x2ed0d2,'request\x20sent');_0x32112b(_0x31cfd2[_0xa757('0x1f')][_0xa757('0x1e')]);}})[_0xa757('0x20')](function(_0x8d121f){logger[_0xa757('0x1d')](_0xa757('0x19'),_0x2ed0d2,_0x8d121f);_0x1b670e(_0x8d121f);});});}function respondWithStatusCode(_0x2ca10d,_0x21f1af){_0x21f1af=_0x21f1af||0xcc;return function(_0x2bf276){if(_0x2bf276){return _0x2ca10d['sendStatus'](_0x21f1af);}return _0x2ca10d[_0xa757('0x21')](_0x21f1af)['end']();};}function respondWithResult(_0x422e9e,_0x47903b){_0x47903b=_0x47903b||0xc8;return function(_0x40551d){if(_0x40551d){return _0x422e9e[_0xa757('0x21')](_0x47903b)[_0xa757('0x22')](_0x40551d);}};}function respondWithFilteredResult(_0x4d58a4,_0x2b19d5){return function(_0xcd98bd){if(_0xcd98bd){var _0x471e84=typeof _0x2b19d5[_0xa757('0x23')]==='undefined'&&typeof _0x2b19d5[_0xa757('0x24')]==='undefined';var _0x5a5664=_0xcd98bd['count'];var _0x4f8de2=_0x471e84?0x0:_0x2b19d5[_0xa757('0x23')];var _0x596ae2=_0x471e84?_0xcd98bd[_0xa757('0x25')]:_0x2b19d5[_0xa757('0x23')]+_0x2b19d5['limit'];var _0x2a0c9a;if(_0x596ae2>=_0x5a5664){_0x596ae2=_0x5a5664;_0x2a0c9a=0xc8;}else{_0x2a0c9a=0xce;}_0x4d58a4['status'](_0x2a0c9a);return _0x4d58a4[_0xa757('0x26')](_0xa757('0x27'),_0x4f8de2+'-'+_0x596ae2+'/'+_0x5a5664)['json'](_0xcd98bd);}return null;};}function patchUpdates(_0x235e54){return function(_0x5ade7b){try{jsonpatch[_0xa757('0x28')](_0x5ade7b,_0x235e54,!![]);}catch(_0x27b3e2){return BPromise[_0xa757('0x29')](_0x27b3e2);}return _0x5ade7b[_0xa757('0x2a')]();};}function saveUpdates(_0xcc87c0,_0x2c1885){return function(_0x1a44a9){if(_0x1a44a9){return _0x1a44a9[_0xa757('0x2b')](_0xcc87c0)[_0xa757('0x17')](function(_0x384424){return _0x384424;});}return null;};}function removeEntity(_0x1f5d5a,_0x20735f){return function(_0x25dfbb){if(_0x25dfbb){return _0x25dfbb[_0xa757('0x2c')]()[_0xa757('0x17')](function(){var _0xc1cc20=_0x25dfbb[_0xa757('0x2d')]({'plain':!![]});var _0x1ad384=_0xa757('0x2e');return db[_0xa757('0x2f')][_0xa757('0x2c')]({'where':{'type':_0x1ad384,'resourceId':_0xc1cc20['id']}})[_0xa757('0x17')](function(){return _0x25dfbb;});})[_0xa757('0x17')](function(){_0x1f5d5a[_0xa757('0x21')](0xcc)['end']();});}};}function handleEntityNotFound(_0x2adf93,_0x21d6b3){return function(_0x1e9d63){if(!_0x1e9d63){_0x2adf93[_0xa757('0x30')](0x194);}return _0x1e9d63;};}function handleError(_0x1c4c40,_0x51e2aa){_0x51e2aa=_0x51e2aa||0x1f4;return function(_0x1d4414){logger[_0xa757('0x1d')](_0x1d4414[_0xa757('0x31')]);if(_0x1d4414[_0xa757('0x32')]){delete _0x1d4414[_0xa757('0x32')];}_0x1c4c40[_0xa757('0x21')](_0x51e2aa)['send'](_0x1d4414);};}function getMustacheRender(_0x1346c2,_0x444639){return Mustache[_0xa757('0x33')](_0x1346c2,_[_0xa757('0x34')](_0x444639[_0xa757('0x35')],{'contact':_0x444639[_0xa757('0x36')],'message':_0x444639[_0xa757('0x1e')],'agent':_0x444639[_0xa757('0x37')],'interaction':_0x444639[_0xa757('0x38')],'account':_0x444639['account']}))||'';}exports[_0xa757('0x39')]=function(_0x34fba8,_0x9f73c6){var _0x35c15a={},_0x2531be={},_0x2fd99e={'count':0x0,'rows':[]};var _0x501e26=_[_0xa757('0x3a')](db[_0xa757('0x3b')]['rawAttributes'],function(_0x5eae0b){return{'name':_0x5eae0b[_0xa757('0x3c')],'type':_0x5eae0b[_0xa757('0x3d')]['key']};});_0x2531be['model']=_[_0xa757('0x3a')](_0x501e26,_0xa757('0x32'));_0x2531be[_0xa757('0x3e')]=_['keys'](_0x34fba8[_0xa757('0x3e')]);_0x2531be[_0xa757('0x3f')]=_[_0xa757('0x40')](_0x2531be[_0xa757('0x41')],_0x2531be[_0xa757('0x3e')]);_0x35c15a['attributes']=_[_0xa757('0x40')](_0x2531be['model'],qs['fields'](_0x34fba8[_0xa757('0x3e')][_0xa757('0x42')]));_0x35c15a[_0xa757('0x43')]=_0x35c15a[_0xa757('0x43')][_0xa757('0x44')]?_0x35c15a['attributes']:_0x2531be['model'];if(!_0x34fba8[_0xa757('0x3e')][_0xa757('0x45')](_0xa757('0x46'))){_0x35c15a[_0xa757('0x24')]=qs[_0xa757('0x24')](_0x34fba8[_0xa757('0x3e')]['limit']);_0x35c15a[_0xa757('0x23')]=qs[_0xa757('0x23')](_0x34fba8['query'][_0xa757('0x23')]);}_0x35c15a['order']=qs[_0xa757('0x47')](_0x34fba8[_0xa757('0x3e')]['sort']);_0x35c15a[_0xa757('0x48')]=qs[_0xa757('0x3f')](_['pick'](_0x34fba8[_0xa757('0x3e')],_0x2531be[_0xa757('0x3f')]),_0x501e26);if(_0x34fba8[_0xa757('0x3e')][_0xa757('0x49')]){_0x35c15a['where']=_[_0xa757('0x34')](_0x35c15a[_0xa757('0x48')],{'$or':_[_0xa757('0x3a')](_0x501e26,function(_0xec4610){if(_0xec4610['type']!==_0xa757('0x4a')){var _0x5b6017={};_0x5b6017[_0xec4610['name']]={'$like':'%'+_0x34fba8[_0xa757('0x3e')][_0xa757('0x49')]+'%'};return _0x5b6017;}})});}_0x35c15a=_[_0xa757('0x34')]({},_0x35c15a,_0x34fba8['options']);var _0x421c65={'where':_0x35c15a['where']};return db[_0xa757('0x3b')][_0xa757('0x25')](_0x421c65)[_0xa757('0x17')](function(_0xbef575){_0x2fd99e[_0xa757('0x25')]=_0xbef575;if(_0x34fba8[_0xa757('0x3e')][_0xa757('0x4b')]){_0x35c15a[_0xa757('0x4c')]=[{'all':!![]}];}return db['Trunk'][_0xa757('0x4d')](_0x35c15a);})[_0xa757('0x17')](function(_0x33347a){_0x2fd99e[_0xa757('0x4e')]=_0x33347a;return _0x2fd99e;})[_0xa757('0x17')](respondWithFilteredResult(_0x9f73c6,_0x35c15a))[_0xa757('0x20')](handleError(_0x9f73c6,null));};exports[_0xa757('0x4f')]=function(_0x2c5b3c,_0x405397){var _0x1d05d7={'raw':![],'where':{'id':_0x2c5b3c[_0xa757('0x50')]['id']}},_0x16644b={};_0x16644b[_0xa757('0x41')]=_[_0xa757('0x51')](db[_0xa757('0x3b')][_0xa757('0x52')]);_0x16644b['query']=_[_0xa757('0x51')](_0x2c5b3c['query']);_0x16644b[_0xa757('0x3f')]=_[_0xa757('0x40')](_0x16644b[_0xa757('0x41')],_0x16644b[_0xa757('0x3e')]);_0x1d05d7['attributes']=_[_0xa757('0x40')](_0x16644b[_0xa757('0x41')],qs[_0xa757('0x42')](_0x2c5b3c[_0xa757('0x3e')]['fields']));_0x1d05d7[_0xa757('0x43')]=_0x1d05d7[_0xa757('0x43')][_0xa757('0x44')]?_0x1d05d7[_0xa757('0x43')]:_0x16644b[_0xa757('0x41')];if(_0x2c5b3c[_0xa757('0x3e')]['includeAll']){_0x1d05d7['include']=[{'all':!![]}];}_0x1d05d7=_['merge']({},_0x1d05d7,_0x2c5b3c['options']);return db[_0xa757('0x3b')][_0xa757('0x53')](_0x1d05d7)[_0xa757('0x17')](handleEntityNotFound(_0x405397,null))[_0xa757('0x17')](respondWithResult(_0x405397,null))[_0xa757('0x20')](handleError(_0x405397,null));};exports[_0xa757('0x54')]=function(_0x5efb32,_0xe31752){var _0x163d99={'where':{'id':_0x5efb32[_0xa757('0x50')]['id']}},_0x34e03f={};_0x34e03f['model']=_[_0xa757('0x51')](db[_0xa757('0x3b')]['rawAttributes']);_0x163d99[_0xa757('0x43')]=_['intersection'](_0x34e03f[_0xa757('0x41')],qs['fields'](_0x5efb32[_0xa757('0x3e')]['fields']));_0x163d99['attributes']=_0x163d99[_0xa757('0x43')][_0xa757('0x44')]?_0x163d99[_0xa757('0x43')]:_0x34e03f[_0xa757('0x41')];if(_0x5efb32[_0xa757('0x3e')][_0xa757('0x4b')]){_0x163d99['include']=[{'all':!![]}];}_0x163d99=_['merge']({},_0x163d99,_0x5efb32[_0xa757('0x55')]);return db[_0xa757('0x3b')][_0xa757('0x53')](_0x163d99)['then'](handleEntityNotFound(_0xe31752,null))['then'](function(_0x18dff7){if(_0x18dff7){var _0x31c4cd=_0x18dff7[_0xa757('0x2d')]({'plain':!![]});_0x31c4cd=qs[_0xa757('0x56')](_0x31c4cd,['id',_0xa757('0x57'),_0xa757('0x58')]);_0x5efb32['body']=_[_0xa757('0x56')](_0x5efb32[_0xa757('0x35')],['id',_0xa757('0x57'),_0xa757('0x58')]);return db[_0xa757('0x3b')][_0xa757('0x59')](_[_0xa757('0x34')](_0x31c4cd,_0x5efb32[_0xa757('0x35')]),{'include':_0x5efb32[_0xa757('0x3e')][_0xa757('0x4b')]?[{'all':!![]}]:undefined})['then'](function(_0x9e96e6){var _0x5c803a=_0x5efb32['user'][_0xa757('0x2d')]({'plain':!![]});if(!_0x5c803a)throw new Error(_0xa757('0x5a'));if(_0x5c803a[_0xa757('0x5b')]===_0xa757('0x5c')){var _0x3c3ff1=_0x9e96e6[_0xa757('0x2d')]({'plain':!![]});var _0x1b34ad=_0xa757('0x2e');return db[_0xa757('0x5d')][_0xa757('0x53')]({'where':{'name':_0x1b34ad,'userProfileId':_0x5c803a[_0xa757('0x5e')]},'raw':!![]})['then'](function(_0x3f8c5c){if(_0x3f8c5c&&_0x3f8c5c[_0xa757('0x5f')]===0x0){return db['UserProfileResource'][_0xa757('0x59')]({'name':_0x3c3ff1[_0xa757('0x32')],'resourceId':_0x3c3ff1['id'],'type':_0x3f8c5c[_0xa757('0x32')],'sectionId':_0x3f8c5c['id']},{})[_0xa757('0x17')](function(){return _0x9e96e6;});}else{return _0x9e96e6;}})[_0xa757('0x20')](function(_0x113a33){logger['error'](_0xa757('0x60'),_0x113a33);throw _0x113a33;});}return _0x9e96e6;});}})['then'](respondWithResult(_0xe31752,0xc9))[_0xa757('0x20')](handleError(_0xe31752,null));};exports[_0xa757('0x59')]=function(_0x2d9d97,_0x3c87c0,_0x39ca41){var _0x5c0870;return db['Trunk'][_0xa757('0x59')](_0x2d9d97[_0xa757('0x35')],{'raw':!![]})[_0xa757('0x17')](function(_0x5f450f){_0x5c0870=_0x5f450f;return db[_0xa757('0x3b')]['findAll']({'raw':!![]});})[_0xa757('0x17')](function(_0x294165){var _0x2b0ad4=fs[_0xa757('0x61')](path[_0xa757('0x62')](config[_0xa757('0x63')],'server/files/templates/trunk.ejs'),_0xa757('0x64'));var _0x193233=fs[_0xa757('0x61')](path[_0xa757('0x62')](config[_0xa757('0x63')],'server/files/templates/registry.ejs'),_0xa757('0x64'));var _0x423f3a=ejs[_0xa757('0x33')](_0x2b0ad4,{'trunks':_0x294165||[]});fs[_0xa757('0x65')](_0xa757('0x66'),_0x423f3a);if(_0x5c0870['registry']){var _0x3f1327=ejs[_0xa757('0x33')](_0x193233,{'trunks':_0x294165||[]});fs[_0xa757('0x65')]('/etc/asterisk/sip_xcally_registers.conf',_0x3f1327);}})[_0xa757('0x17')](function(){return respondWithRpcPromise(_0xa757('0x67'),_0xa757('0x59'),{'module':_0xa757('0x68')});})[_0xa757('0x17')](function(){var _0x4695ef=_0x2d9d97[_0xa757('0x5c')][_0xa757('0x2d')]({'plain':!![]});if(!_0x4695ef)throw new Error(_0xa757('0x5a'));if(_0x4695ef[_0xa757('0x5b')]===_0xa757('0x5c')){var _0x404afb=_0x5c0870[_0xa757('0x2d')]({'plain':!![]});return db[_0xa757('0x5d')]['find']({'where':{'name':_0xa757('0x2e'),'userProfileId':_0x4695ef[_0xa757('0x5e')]},'raw':!![]})['then'](function(_0x11f2b3){if(_0x11f2b3&&_0x11f2b3[_0xa757('0x5f')]===0x0){return db['UserProfileResource'][_0xa757('0x59')]({'name':_0x404afb[_0xa757('0x32')],'resourceId':_0x404afb['id'],'type':_0x11f2b3[_0xa757('0x32')],'sectionId':_0x11f2b3['id']},{})[_0xa757('0x17')](function(){return _0x5c0870;});}else{return _0x5c0870;}})[_0xa757('0x20')](function(_0x312542){logger[_0xa757('0x1d')](_0xa757('0x60'),_0x312542);throw _0x312542;});}return _0x5c0870;})[_0xa757('0x17')](respondWithResult(_0x3c87c0,0xc9))[_0xa757('0x20')](handleError(_0x3c87c0,null));};exports[_0xa757('0x2b')]=function(_0x189195,_0x2c2b40,_0x46bc34){var _0x27604c;return db[_0xa757('0x3b')]['find']({'where':{'id':_0x189195[_0xa757('0x50')]['id']}})['then'](handleEntityNotFound(_0x2c2b40,null))[_0xa757('0x17')](saveUpdates(_0x189195[_0xa757('0x35')],null))[_0xa757('0x17')](function(_0x3d92ca){if(_0x3d92ca){_0x27604c=_0x3d92ca;return db[_0xa757('0x3b')]['findAll']({'raw':!![]});}})[_0xa757('0x17')](function(_0x67a58b){if(_0x67a58b){var _0x3a8dce=fs['readFileSync'](path[_0xa757('0x62')](config[_0xa757('0x63')],_0xa757('0x69')),'utf8');var _0x501134=fs[_0xa757('0x61')](path[_0xa757('0x62')](config[_0xa757('0x63')],'server/files/templates/registry.ejs'),_0xa757('0x64'));var _0x4cc1ad=ejs['render'](_0x3a8dce,{'trunks':_0x67a58b||[]});fs[_0xa757('0x65')](_0xa757('0x66'),_0x4cc1ad);var _0x476297=ejs['render'](_0x501134,{'trunks':_0x67a58b||[]});fs[_0xa757('0x65')](_0xa757('0x6a'),_0x476297);return respondWithRpcPromise(_0xa757('0x67'),_0xa757('0x2b'),{'module':_0xa757('0x68')});}return null;})[_0xa757('0x17')](function(_0x26dcec){if(_0x26dcec){return _0x27604c;}})[_0xa757('0x17')](respondWithResult(_0x2c2b40,null))[_0xa757('0x20')](handleError(_0x2c2b40,null));};exports[_0xa757('0x2c')]=function(_0x180fee,_0xafcf19,_0x5a7042){var _0x3aca47;return db[_0xa757('0x3b')][_0xa757('0x53')]({'where':{'id':_0x180fee[_0xa757('0x50')]['id']}})[_0xa757('0x17')](handleEntityNotFound(_0xafcf19,null))[_0xa757('0x17')](removeEntity(_0xafcf19,null))[_0xa757('0x17')](function(){return db[_0xa757('0x3b')][_0xa757('0x4d')]({'raw':!![]});})[_0xa757('0x17')](function(_0x3997f8){var _0x2f5a0f=fs[_0xa757('0x61')](path[_0xa757('0x62')](config[_0xa757('0x63')],_0xa757('0x69')),_0xa757('0x64'));var _0x3c4e41=fs[_0xa757('0x61')](path[_0xa757('0x62')](config[_0xa757('0x63')],_0xa757('0x6b')),'utf8');var _0x768a79=ejs[_0xa757('0x33')](_0x2f5a0f,{'trunks':_0x3997f8});var _0x5b91de=ejs[_0xa757('0x33')](_0x3c4e41,{'trunks':_0x3997f8});fs['writeFileSync'](_0xa757('0x66'),_0x768a79);fs[_0xa757('0x65')]('/etc/asterisk/sip_xcally_registers.conf',_0x5b91de);return respondWithRpcPromise(_0xa757('0x67'),_0xa757('0x2c'),{'module':_0xa757('0x68')});})[_0xa757('0x20')](handleError(_0xafcf19,null));};
\ No newline at end of file