Built motion from commit efa66e19.|2.6.22
[motion2.git] / server / api / voiceContext / voiceContext.controller.js
index dd275d1..9a84851 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xb20b=['destroy','then','get','Contexts','UserProfileResource','stack','name','VoiceContext','fieldName','key','map','keys','filters','intersection','model','query','attributes','fields','length','hasOwnProperty','sort','where','pick','merge','type','VIRTUAL','filter','include','rows','params','includeAll','options','find','create','body','findAll','join','server/files/templates/context.ejs','utf8','render','/etc/asterisk/extensions_xcally_contexts.conf','Reload','chan_sip.so','user','role','UserProfileSection','userProfileId','readFileSync','root','writeFileSync','eml-format','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','ejs','fs-extra','lodash','to-csv','querystring','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/utils','../../config/license/util','../../mysqldb','jayson/promise','client','request','info','debug','stringify','error','message','VoiceContext,\x20%s,\x20%s','request\x20sent','result','catch','status','end','json','offset','undefined','limit','count','Content-Range','apply','reject','save','update'];(function(_0x56b368,_0x2e841d){var _0x989ddf=function(_0xd8e9d2){while(--_0xd8e9d2){_0x56b368['push'](_0x56b368['shift']());}};_0x989ddf(++_0x2e841d);}(_0xb20b,0x93));var _0xbb20=function(_0x298de8,_0x18acad){_0x298de8=_0x298de8-0x0;var _0x18de47=_0xb20b[_0x298de8];return _0x18de47;};'use strict';var emlformat=require(_0xbb20('0x0'));var rimraf=require('rimraf');var zipdir=require(_0xbb20('0x1'));var jsonpatch=require(_0xbb20('0x2'));var rp=require(_0xbb20('0x3'));var moment=require(_0xbb20('0x4'));var BPromise=require(_0xbb20('0x5'));var Mustache=require(_0xbb20('0x6'));var util=require(_0xbb20('0x7'));var path=require(_0xbb20('0x8'));var sox=require('sox');var csv=require('to-csv');var ejs=require(_0xbb20('0x9'));var fs=require('fs');var fs_extra=require(_0xbb20('0xa'));var _=require(_0xbb20('0xb'));var squel=require('squel');var crypto=require('crypto');var jsforce=require('jsforce');var deskjs=require('desk.js');var toCsv=require(_0xbb20('0xc'));var querystring=require(_0xbb20('0xd'));var Papa=require('papaparse');var Redis=require(_0xbb20('0xe'));var authService=require(_0xbb20('0xf'));var qs=require(_0xbb20('0x10'));var as=require(_0xbb20('0x11'));var hardwareService=require(_0xbb20('0x12'));var logger=require(_0xbb20('0x13'))('api');var utils=require(_0xbb20('0x14'));var config=require('../../config/environment');var licenseUtil=require(_0xbb20('0x15'));var db=require(_0xbb20('0x16'))['db'];var jayson=require(_0xbb20('0x17'));var client=jayson[_0xbb20('0x18')]['http']({'port':0x232a});function respondWithRpcPromise(_0x1deda4,_0x3895ab,_0x40838d,_0x2a99cd){return new BPromise(function(_0x5c1ec2,_0x48303c){var _0xd9f246=_0x2a99cd||client;return _0xd9f246[_0xbb20('0x19')](_0x1deda4,_0x40838d)['then'](function(_0x3a84de){logger[_0xbb20('0x1a')]('VoiceContext,\x20%s,\x20%s',_0x3895ab,'request\x20sent');logger[_0xbb20('0x1b')]('VoiceContext,\x20%s,\x20%s,\x20%s',_0x3895ab,'request\x20sent',JSON[_0xbb20('0x1c')](_0x3a84de));if(_0x3a84de[_0xbb20('0x1d')]){if(_0x3a84de[_0xbb20('0x1d')]['code']===0x1f4){logger[_0xbb20('0x1d')]('VoiceContext,\x20%s,\x20%s',_0x3895ab,_0x3a84de['error'][_0xbb20('0x1e')]);return _0x48303c(_0x3a84de['error'][_0xbb20('0x1e')]);}logger['error'](_0xbb20('0x1f'),_0x3895ab,_0x3a84de['error'][_0xbb20('0x1e')]);return _0x5c1ec2(_0x3a84de['error']['message']);}else{logger[_0xbb20('0x1a')]('VoiceContext,\x20%s,\x20%s',_0x3895ab,_0xbb20('0x20'));_0x5c1ec2(_0x3a84de[_0xbb20('0x21')][_0xbb20('0x1e')]);}})[_0xbb20('0x22')](function(_0x37bfed){logger[_0xbb20('0x1d')]('VoiceContext,\x20%s,\x20%s',_0x3895ab,_0x37bfed);_0x48303c(_0x37bfed);});});}function respondWithStatusCode(_0xd75062,_0x1016fa){_0x1016fa=_0x1016fa||0xcc;return function(_0x22ed3d){if(_0x22ed3d){return _0xd75062['sendStatus'](_0x1016fa);}return _0xd75062[_0xbb20('0x23')](_0x1016fa)[_0xbb20('0x24')]();};}function respondWithResult(_0x4b43a4,_0x28c6fc){_0x28c6fc=_0x28c6fc||0xc8;return function(_0x598bce){if(_0x598bce){return _0x4b43a4[_0xbb20('0x23')](_0x28c6fc)[_0xbb20('0x25')](_0x598bce);}};}function respondWithFilteredResult(_0x1ebc2b,_0x54c9ed){return function(_0x5a08b7){if(_0x5a08b7){var _0x601efa=typeof _0x54c9ed[_0xbb20('0x26')]===_0xbb20('0x27')&&typeof _0x54c9ed[_0xbb20('0x28')]===_0xbb20('0x27');var _0x275f2b=_0x5a08b7[_0xbb20('0x29')];var _0x355950=_0x601efa?0x0:_0x54c9ed[_0xbb20('0x26')];var _0x4057e9=_0x601efa?_0x5a08b7[_0xbb20('0x29')]:_0x54c9ed[_0xbb20('0x26')]+_0x54c9ed[_0xbb20('0x28')];var _0x125f49;if(_0x4057e9>=_0x275f2b){_0x4057e9=_0x275f2b;_0x125f49=0xc8;}else{_0x125f49=0xce;}_0x1ebc2b[_0xbb20('0x23')](_0x125f49);return _0x1ebc2b['set'](_0xbb20('0x2a'),_0x355950+'-'+_0x4057e9+'/'+_0x275f2b)[_0xbb20('0x25')](_0x5a08b7);}return null;};}function patchUpdates(_0x3e37c0){return function(_0x4d43e2){try{jsonpatch[_0xbb20('0x2b')](_0x4d43e2,_0x3e37c0,!![]);}catch(_0x261bb8){return BPromise[_0xbb20('0x2c')](_0x261bb8);}return _0x4d43e2[_0xbb20('0x2d')]();};}function saveUpdates(_0x53b109,_0x525afa){return function(_0x562359){if(_0x562359){return _0x562359[_0xbb20('0x2e')](_0x53b109)['then'](function(_0x1d4a4f){return _0x1d4a4f;});}return null;};}function removeEntity(_0x4afe8c,_0x2df483){return function(_0x135b15){if(_0x135b15){return _0x135b15[_0xbb20('0x2f')]()[_0xbb20('0x30')](function(){var _0x4beeda=_0x135b15[_0xbb20('0x31')]({'plain':!![]});var _0x5cb9dd=_0xbb20('0x32');return db[_0xbb20('0x33')]['destroy']({'where':{'type':_0x5cb9dd,'resourceId':_0x4beeda['id']}})['then'](function(){return _0x135b15;});})[_0xbb20('0x30')](function(){_0x4afe8c['status'](0xcc)[_0xbb20('0x24')]();});}};}function handleEntityNotFound(_0x92939d,_0x4bdf1e){return function(_0x9556c1){if(!_0x9556c1){_0x92939d['sendStatus'](0x194);}return _0x9556c1;};}function handleError(_0x218228,_0xf7f38b){_0xf7f38b=_0xf7f38b||0x1f4;return function(_0x2b778d){logger[_0xbb20('0x1d')](_0x2b778d[_0xbb20('0x34')]);if(_0x2b778d['name']){delete _0x2b778d[_0xbb20('0x35')];}_0x218228[_0xbb20('0x23')](_0xf7f38b)['send'](_0x2b778d);};}exports['index']=function(_0x425d93,_0x464a46){var _0x70e3d={},_0x7ae9aa={},_0x38cd42={'count':0x0,'rows':[]};var _0x441baa=_['map'](db[_0xbb20('0x36')]['rawAttributes'],function(_0x361ba0){return{'name':_0x361ba0[_0xbb20('0x37')],'type':_0x361ba0['type'][_0xbb20('0x38')]};});_0x7ae9aa['model']=_[_0xbb20('0x39')](_0x441baa,_0xbb20('0x35'));_0x7ae9aa['query']=_[_0xbb20('0x3a')](_0x425d93['query']);_0x7ae9aa[_0xbb20('0x3b')]=_[_0xbb20('0x3c')](_0x7ae9aa[_0xbb20('0x3d')],_0x7ae9aa[_0xbb20('0x3e')]);_0x70e3d[_0xbb20('0x3f')]=_[_0xbb20('0x3c')](_0x7ae9aa[_0xbb20('0x3d')],qs['fields'](_0x425d93['query'][_0xbb20('0x40')]));_0x70e3d[_0xbb20('0x3f')]=_0x70e3d['attributes'][_0xbb20('0x41')]?_0x70e3d['attributes']:_0x7ae9aa['model'];if(!_0x425d93[_0xbb20('0x3e')][_0xbb20('0x42')]('nolimit')){_0x70e3d[_0xbb20('0x28')]=qs[_0xbb20('0x28')](_0x425d93['query'][_0xbb20('0x28')]);_0x70e3d[_0xbb20('0x26')]=qs[_0xbb20('0x26')](_0x425d93[_0xbb20('0x3e')][_0xbb20('0x26')]);}_0x70e3d['order']=qs[_0xbb20('0x43')](_0x425d93['query']['sort']);_0x70e3d[_0xbb20('0x44')]=qs[_0xbb20('0x3b')](_[_0xbb20('0x45')](_0x425d93['query'],_0x7ae9aa['filters']),_0x441baa);if(_0x425d93['query']['filter']){_0x70e3d[_0xbb20('0x44')]=_[_0xbb20('0x46')](_0x70e3d[_0xbb20('0x44')],{'$or':_[_0xbb20('0x39')](_0x441baa,function(_0x1191fa){if(_0x1191fa[_0xbb20('0x47')]!==_0xbb20('0x48')){var _0x22025d={};_0x22025d[_0x1191fa[_0xbb20('0x35')]]={'$like':'%'+_0x425d93[_0xbb20('0x3e')][_0xbb20('0x49')]+'%'};return _0x22025d;}})});}_0x70e3d=_[_0xbb20('0x46')]({},_0x70e3d,_0x425d93['options']);var _0x13f66c={'where':_0x70e3d[_0xbb20('0x44')]};return db['VoiceContext'][_0xbb20('0x29')](_0x13f66c)[_0xbb20('0x30')](function(_0x29f6cc){_0x38cd42['count']=_0x29f6cc;if(_0x425d93[_0xbb20('0x3e')]['includeAll']){_0x70e3d[_0xbb20('0x4a')]=[{'all':!![]}];}return db[_0xbb20('0x36')]['findAll'](_0x70e3d);})['then'](function(_0x43ee7c){_0x38cd42[_0xbb20('0x4b')]=_0x43ee7c;return _0x38cd42;})[_0xbb20('0x30')](respondWithFilteredResult(_0x464a46,_0x70e3d))[_0xbb20('0x22')](handleError(_0x464a46,null));};exports['show']=function(_0x420e1d,_0x31c4f3){var _0x545ce3={'raw':![],'where':{'id':_0x420e1d[_0xbb20('0x4c')]['id']}},_0x5739d7={};_0x5739d7[_0xbb20('0x3d')]=_[_0xbb20('0x3a')](db[_0xbb20('0x36')]['rawAttributes']);_0x5739d7[_0xbb20('0x3e')]=_[_0xbb20('0x3a')](_0x420e1d[_0xbb20('0x3e')]);_0x5739d7[_0xbb20('0x3b')]=_[_0xbb20('0x3c')](_0x5739d7[_0xbb20('0x3d')],_0x5739d7[_0xbb20('0x3e')]);_0x545ce3['attributes']=_[_0xbb20('0x3c')](_0x5739d7[_0xbb20('0x3d')],qs[_0xbb20('0x40')](_0x420e1d[_0xbb20('0x3e')][_0xbb20('0x40')]));_0x545ce3[_0xbb20('0x3f')]=_0x545ce3[_0xbb20('0x3f')][_0xbb20('0x41')]?_0x545ce3[_0xbb20('0x3f')]:_0x5739d7['model'];if(_0x420e1d[_0xbb20('0x3e')][_0xbb20('0x4d')]){_0x545ce3['include']=[{'all':!![]}];}_0x545ce3=_[_0xbb20('0x46')]({},_0x545ce3,_0x420e1d[_0xbb20('0x4e')]);return db[_0xbb20('0x36')][_0xbb20('0x4f')](_0x545ce3)['then'](handleEntityNotFound(_0x31c4f3,null))[_0xbb20('0x30')](respondWithResult(_0x31c4f3,null))['catch'](handleError(_0x31c4f3,null));};exports[_0xbb20('0x50')]=function(_0x24b0e9,_0x271d94,_0x13aeb9){var _0x333b24;return db['VoiceContext'][_0xbb20('0x50')](_0x24b0e9[_0xbb20('0x51')],{'raw':!![]})[_0xbb20('0x30')](function(_0x2c0625){_0x333b24=_0x2c0625;return db[_0xbb20('0x36')][_0xbb20('0x52')]({'raw':!![]});})[_0xbb20('0x30')](function(_0x5e1b8d){var _0x91bd6b=fs['readFileSync'](path[_0xbb20('0x53')](config['root'],_0xbb20('0x54')),_0xbb20('0x55'));var _0x39fc2d=ejs[_0xbb20('0x56')](_0x91bd6b,{'contexts':_0x5e1b8d||[]});fs['writeFileSync'](_0xbb20('0x57'),_0x39fc2d);})[_0xbb20('0x30')](function(){return respondWithRpcPromise(_0xbb20('0x58'),_0xbb20('0x50'),{'module':_0xbb20('0x59')});})[_0xbb20('0x30')](function(){var _0x477b16=_0x24b0e9[_0xbb20('0x5a')][_0xbb20('0x31')]({'plain':!![]});if(!_0x477b16)throw new Error('Unable\x20to\x20retrieve\x20the\x20current\x20user');if(_0x477b16[_0xbb20('0x5b')]==='user'){var _0xf3e0d3=_0x333b24[_0xbb20('0x31')]({'plain':!![]});return db[_0xbb20('0x5c')][_0xbb20('0x4f')]({'where':{'name':_0xbb20('0x32'),'userProfileId':_0x477b16[_0xbb20('0x5d')]},'raw':!![]})[_0xbb20('0x30')](function(_0x1a77f3){if(_0x1a77f3&&_0x1a77f3['autoAssociation']===0x0){return db[_0xbb20('0x33')][_0xbb20('0x50')]({'name':_0xf3e0d3[_0xbb20('0x35')],'resourceId':_0xf3e0d3['id'],'type':_0x1a77f3['name'],'sectionId':_0x1a77f3['id']},{})[_0xbb20('0x30')](function(){return _0x333b24;});}else{return _0x333b24;}})[_0xbb20('0x22')](function(_0x39d661){logger['error']('Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s',_0x39d661);throw _0x39d661;});}return _0x333b24;})[_0xbb20('0x30')](respondWithResult(_0x271d94,0xc9))['catch'](handleError(_0x271d94,null));};exports[_0xbb20('0x2e')]=function(_0x5f2f92,_0x9b994e,_0x258458){var _0x3e545b;return db[_0xbb20('0x36')][_0xbb20('0x4f')]({'where':{'id':_0x5f2f92[_0xbb20('0x4c')]['id']}})[_0xbb20('0x30')](handleEntityNotFound(_0x9b994e,null))['then'](saveUpdates(_0x5f2f92['body'],null))[_0xbb20('0x30')](function(_0x49bf68){if(_0x49bf68){_0x3e545b=_0x49bf68;return db['VoiceContext'][_0xbb20('0x52')]({'raw':!![]});}})[_0xbb20('0x30')](function(_0x2a9d82){var _0x18c0bf=fs[_0xbb20('0x5e')](path['join'](config[_0xbb20('0x5f')],_0xbb20('0x54')),'utf8');var _0x52f6b5=ejs[_0xbb20('0x56')](_0x18c0bf,{'contexts':_0x2a9d82||[]});fs[_0xbb20('0x60')](_0xbb20('0x57'),_0x52f6b5);})[_0xbb20('0x30')](function(){return respondWithRpcPromise('Reload',_0xbb20('0x2e'),{'module':_0xbb20('0x59')});})[_0xbb20('0x30')](function(){return _0x3e545b;})[_0xbb20('0x30')](respondWithResult(_0x9b994e,null))[_0xbb20('0x22')](handleError(_0x9b994e,null));};exports['destroy']=function(_0x1ad9c3,_0x1873ce,_0x37fad2){var _0xb1185c;return db[_0xbb20('0x36')][_0xbb20('0x4f')]({'where':{'id':_0x1ad9c3['params']['id']}})[_0xbb20('0x30')](handleEntityNotFound(_0x1873ce,null))['then'](removeEntity(_0x1873ce,null))[_0xbb20('0x30')](function(){return db[_0xbb20('0x36')][_0xbb20('0x52')]({'raw':!![]});})[_0xbb20('0x30')](function(_0x20a0df){var _0x13a035=fs[_0xbb20('0x5e')](path[_0xbb20('0x53')](config['root'],_0xbb20('0x54')),'utf8');var _0x309eea=ejs['render'](_0x13a035,{'contexts':_0x20a0df});fs[_0xbb20('0x60')](_0xbb20('0x57'),_0x309eea);return respondWithRpcPromise(_0xbb20('0x58'),_0xbb20('0x2f'),{'module':_0xbb20('0x59')});})['catch'](handleError(_0x1873ce,null));};
\ No newline at end of file
+var _0xbcf0=['client','http','info','request\x20sent','debug','VoiceContext,\x20%s,\x20%s,\x20%s','error','code','VoiceContext,\x20%s,\x20%s','message','result','catch','sendStatus','status','end','count','offset','limit','Content-Range','apply','reject','update','then','destroy','get','Contexts','UserProfileResource','stack','name','index','VoiceContext','rawAttributes','fieldName','key','model','map','keys','query','filters','attributes','intersection','fields','length','hasOwnProperty','nolimit','order','sort','where','pick','merge','type','filter','options','includeAll','include','findAll','rows','show','params','find','create','readFileSync','join','root','server/files/templates/context.ejs','utf8','render','writeFileSync','Reload','role','UserProfileSection','userProfileId','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','body','/etc/asterisk/extensions_xcally_contexts.conf','chan_sip.so','eml-format','rimraf','request-promise','moment','bluebird','mustache','util','path','sox','ejs','fs-extra','lodash','squel','crypto','jsforce','desk.js','to-csv','querystring','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','jayson/promise'];(function(_0x38ded6,_0x260e8c){var _0x404a50=function(_0x316b34){while(--_0x316b34){_0x38ded6['push'](_0x38ded6['shift']());}};_0x404a50(++_0x260e8c);}(_0xbcf0,0xb7));var _0x0bcf=function(_0x173441,_0x26b0d9){_0x173441=_0x173441-0x0;var _0x2423a8=_0xbcf0[_0x173441];return _0x2423a8;};'use strict';var emlformat=require(_0x0bcf('0x0'));var rimraf=require(_0x0bcf('0x1'));var zipdir=require('zip-dir');var jsonpatch=require('fast-json-patch');var rp=require(_0x0bcf('0x2'));var moment=require(_0x0bcf('0x3'));var BPromise=require(_0x0bcf('0x4'));var Mustache=require(_0x0bcf('0x5'));var util=require(_0x0bcf('0x6'));var path=require(_0x0bcf('0x7'));var sox=require(_0x0bcf('0x8'));var csv=require('to-csv');var ejs=require(_0x0bcf('0x9'));var fs=require('fs');var fs_extra=require(_0x0bcf('0xa'));var _=require(_0x0bcf('0xb'));var squel=require(_0x0bcf('0xc'));var crypto=require(_0x0bcf('0xd'));var jsforce=require(_0x0bcf('0xe'));var deskjs=require(_0x0bcf('0xf'));var toCsv=require(_0x0bcf('0x10'));var querystring=require(_0x0bcf('0x11'));var Papa=require('papaparse');var Redis=require(_0x0bcf('0x12'));var authService=require(_0x0bcf('0x13'));var qs=require(_0x0bcf('0x14'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x0bcf('0x15'));var logger=require(_0x0bcf('0x16'))(_0x0bcf('0x17'));var utils=require(_0x0bcf('0x18'));var config=require(_0x0bcf('0x19'));var licenseUtil=require(_0x0bcf('0x1a'));var db=require(_0x0bcf('0x1b'))['db'];var jayson=require(_0x0bcf('0x1c'));var client=jayson[_0x0bcf('0x1d')][_0x0bcf('0x1e')]({'port':0x232a});function respondWithRpcPromise(_0x376ba4,_0x1d2795,_0x2d0f65,_0x1e3221){return new BPromise(function(_0x2cbaae,_0x1c3210){var _0x4ca8ea=_0x1e3221||client;return _0x4ca8ea['request'](_0x376ba4,_0x2d0f65)['then'](function(_0x39363f){logger[_0x0bcf('0x1f')]('VoiceContext,\x20%s,\x20%s',_0x1d2795,_0x0bcf('0x20'));logger[_0x0bcf('0x21')](_0x0bcf('0x22'),_0x1d2795,_0x0bcf('0x20'),JSON['stringify'](_0x39363f));if(_0x39363f['error']){if(_0x39363f[_0x0bcf('0x23')][_0x0bcf('0x24')]===0x1f4){logger[_0x0bcf('0x23')](_0x0bcf('0x25'),_0x1d2795,_0x39363f[_0x0bcf('0x23')][_0x0bcf('0x26')]);return _0x1c3210(_0x39363f[_0x0bcf('0x23')][_0x0bcf('0x26')]);}logger[_0x0bcf('0x23')]('VoiceContext,\x20%s,\x20%s',_0x1d2795,_0x39363f['error']['message']);return _0x2cbaae(_0x39363f['error'][_0x0bcf('0x26')]);}else{logger[_0x0bcf('0x1f')](_0x0bcf('0x25'),_0x1d2795,'request\x20sent');_0x2cbaae(_0x39363f[_0x0bcf('0x27')][_0x0bcf('0x26')]);}})[_0x0bcf('0x28')](function(_0x2fc280){logger['error'](_0x0bcf('0x25'),_0x1d2795,_0x2fc280);_0x1c3210(_0x2fc280);});});}function respondWithStatusCode(_0x4f1ec9,_0x45b98e){_0x45b98e=_0x45b98e||0xcc;return function(_0x3f97ce){if(_0x3f97ce){return _0x4f1ec9[_0x0bcf('0x29')](_0x45b98e);}return _0x4f1ec9[_0x0bcf('0x2a')](_0x45b98e)[_0x0bcf('0x2b')]();};}function respondWithResult(_0x48bb85,_0x3a527d){_0x3a527d=_0x3a527d||0xc8;return function(_0xf8cdcd){if(_0xf8cdcd){return _0x48bb85['status'](_0x3a527d)['json'](_0xf8cdcd);}};}function respondWithFilteredResult(_0x380f86,_0x5a2b97){return function(_0x2ccc6f){if(_0x2ccc6f){var _0x3fd9c0=typeof _0x5a2b97['offset']==='undefined'&&typeof _0x5a2b97['limit']==='undefined';var _0xc18cc7=_0x2ccc6f[_0x0bcf('0x2c')];var _0x8ff78b=_0x3fd9c0?0x0:_0x5a2b97[_0x0bcf('0x2d')];var _0x8a95c1=_0x3fd9c0?_0x2ccc6f[_0x0bcf('0x2c')]:_0x5a2b97['offset']+_0x5a2b97[_0x0bcf('0x2e')];var _0xea2870;if(_0x8a95c1>=_0xc18cc7){_0x8a95c1=_0xc18cc7;_0xea2870=0xc8;}else{_0xea2870=0xce;}_0x380f86[_0x0bcf('0x2a')](_0xea2870);return _0x380f86['set'](_0x0bcf('0x2f'),_0x8ff78b+'-'+_0x8a95c1+'/'+_0xc18cc7)['json'](_0x2ccc6f);}return null;};}function patchUpdates(_0x3a603f){return function(_0x2464b1){try{jsonpatch[_0x0bcf('0x30')](_0x2464b1,_0x3a603f,!![]);}catch(_0x14a8f0){return BPromise[_0x0bcf('0x31')](_0x14a8f0);}return _0x2464b1['save']();};}function saveUpdates(_0x10bf15,_0x3dac6f){return function(_0x6e3a93){if(_0x6e3a93){return _0x6e3a93[_0x0bcf('0x32')](_0x10bf15)[_0x0bcf('0x33')](function(_0x5ad303){return _0x5ad303;});}return null;};}function removeEntity(_0xb8543e,_0x5f21e2){return function(_0x1a29a2){if(_0x1a29a2){return _0x1a29a2[_0x0bcf('0x34')]()['then'](function(){var _0x190c49=_0x1a29a2[_0x0bcf('0x35')]({'plain':!![]});var _0x417d8d=_0x0bcf('0x36');return db[_0x0bcf('0x37')][_0x0bcf('0x34')]({'where':{'type':_0x417d8d,'resourceId':_0x190c49['id']}})[_0x0bcf('0x33')](function(){return _0x1a29a2;});})[_0x0bcf('0x33')](function(){_0xb8543e[_0x0bcf('0x2a')](0xcc)[_0x0bcf('0x2b')]();});}};}function handleEntityNotFound(_0x1597b3,_0x376072){return function(_0x41290c){if(!_0x41290c){_0x1597b3[_0x0bcf('0x29')](0x194);}return _0x41290c;};}function handleError(_0x46fdf5,_0x459865){_0x459865=_0x459865||0x1f4;return function(_0x38251b){logger[_0x0bcf('0x23')](_0x38251b[_0x0bcf('0x38')]);if(_0x38251b[_0x0bcf('0x39')]){delete _0x38251b['name'];}_0x46fdf5[_0x0bcf('0x2a')](_0x459865)['send'](_0x38251b);};}exports[_0x0bcf('0x3a')]=function(_0x118e02,_0x5e26ee){var _0x72ec5c={},_0x51ed19={},_0x253c59={'count':0x0,'rows':[]};var _0x115d27=_['map'](db[_0x0bcf('0x3b')][_0x0bcf('0x3c')],function(_0x24ee28){return{'name':_0x24ee28[_0x0bcf('0x3d')],'type':_0x24ee28['type'][_0x0bcf('0x3e')]};});_0x51ed19[_0x0bcf('0x3f')]=_[_0x0bcf('0x40')](_0x115d27,'name');_0x51ed19['query']=_[_0x0bcf('0x41')](_0x118e02[_0x0bcf('0x42')]);_0x51ed19[_0x0bcf('0x43')]=_['intersection'](_0x51ed19[_0x0bcf('0x3f')],_0x51ed19['query']);_0x72ec5c[_0x0bcf('0x44')]=_[_0x0bcf('0x45')](_0x51ed19['model'],qs[_0x0bcf('0x46')](_0x118e02[_0x0bcf('0x42')][_0x0bcf('0x46')]));_0x72ec5c[_0x0bcf('0x44')]=_0x72ec5c['attributes'][_0x0bcf('0x47')]?_0x72ec5c[_0x0bcf('0x44')]:_0x51ed19[_0x0bcf('0x3f')];if(!_0x118e02[_0x0bcf('0x42')][_0x0bcf('0x48')](_0x0bcf('0x49'))){_0x72ec5c[_0x0bcf('0x2e')]=qs[_0x0bcf('0x2e')](_0x118e02[_0x0bcf('0x42')][_0x0bcf('0x2e')]);_0x72ec5c[_0x0bcf('0x2d')]=qs['offset'](_0x118e02[_0x0bcf('0x42')][_0x0bcf('0x2d')]);}_0x72ec5c[_0x0bcf('0x4a')]=qs[_0x0bcf('0x4b')](_0x118e02[_0x0bcf('0x42')]['sort']);_0x72ec5c[_0x0bcf('0x4c')]=qs['filters'](_[_0x0bcf('0x4d')](_0x118e02[_0x0bcf('0x42')],_0x51ed19[_0x0bcf('0x43')]),_0x115d27);if(_0x118e02['query']['filter']){_0x72ec5c[_0x0bcf('0x4c')]=_[_0x0bcf('0x4e')](_0x72ec5c[_0x0bcf('0x4c')],{'$or':_['map'](_0x115d27,function(_0x1efa28){if(_0x1efa28[_0x0bcf('0x4f')]!=='VIRTUAL'){var _0x3e3f14={};_0x3e3f14[_0x1efa28['name']]={'$like':'%'+_0x118e02[_0x0bcf('0x42')][_0x0bcf('0x50')]+'%'};return _0x3e3f14;}})});}_0x72ec5c=_['merge']({},_0x72ec5c,_0x118e02[_0x0bcf('0x51')]);var _0x4245c0={'where':_0x72ec5c[_0x0bcf('0x4c')]};return db[_0x0bcf('0x3b')][_0x0bcf('0x2c')](_0x4245c0)['then'](function(_0x58d89d){_0x253c59[_0x0bcf('0x2c')]=_0x58d89d;if(_0x118e02['query'][_0x0bcf('0x52')]){_0x72ec5c[_0x0bcf('0x53')]=[{'all':!![]}];}return db['VoiceContext'][_0x0bcf('0x54')](_0x72ec5c);})['then'](function(_0xd59162){_0x253c59[_0x0bcf('0x55')]=_0xd59162;return _0x253c59;})['then'](respondWithFilteredResult(_0x5e26ee,_0x72ec5c))[_0x0bcf('0x28')](handleError(_0x5e26ee,null));};exports[_0x0bcf('0x56')]=function(_0x75609b,_0x42f768){var _0xb6109b={'raw':![],'where':{'id':_0x75609b[_0x0bcf('0x57')]['id']}},_0x5cf517={};_0x5cf517[_0x0bcf('0x3f')]=_[_0x0bcf('0x41')](db['VoiceContext'][_0x0bcf('0x3c')]);_0x5cf517[_0x0bcf('0x42')]=_['keys'](_0x75609b[_0x0bcf('0x42')]);_0x5cf517['filters']=_[_0x0bcf('0x45')](_0x5cf517['model'],_0x5cf517[_0x0bcf('0x42')]);_0xb6109b['attributes']=_[_0x0bcf('0x45')](_0x5cf517[_0x0bcf('0x3f')],qs[_0x0bcf('0x46')](_0x75609b['query'][_0x0bcf('0x46')]));_0xb6109b[_0x0bcf('0x44')]=_0xb6109b[_0x0bcf('0x44')]['length']?_0xb6109b[_0x0bcf('0x44')]:_0x5cf517['model'];if(_0x75609b['query'][_0x0bcf('0x52')]){_0xb6109b[_0x0bcf('0x53')]=[{'all':!![]}];}_0xb6109b=_[_0x0bcf('0x4e')]({},_0xb6109b,_0x75609b[_0x0bcf('0x51')]);return db['VoiceContext'][_0x0bcf('0x58')](_0xb6109b)[_0x0bcf('0x33')](handleEntityNotFound(_0x42f768,null))[_0x0bcf('0x33')](respondWithResult(_0x42f768,null))[_0x0bcf('0x28')](handleError(_0x42f768,null));};exports[_0x0bcf('0x59')]=function(_0x485754,_0x1bf0dd,_0x329e1f){var _0x21d1e2;return db['VoiceContext'][_0x0bcf('0x59')](_0x485754['body'],{'raw':!![]})[_0x0bcf('0x33')](function(_0x9f7fd8){_0x21d1e2=_0x9f7fd8;return db['VoiceContext'][_0x0bcf('0x54')]({'raw':!![]});})[_0x0bcf('0x33')](function(_0xf31bb){var _0x6e5bbc=fs[_0x0bcf('0x5a')](path[_0x0bcf('0x5b')](config[_0x0bcf('0x5c')],_0x0bcf('0x5d')),_0x0bcf('0x5e'));var _0x55c3cb=ejs[_0x0bcf('0x5f')](_0x6e5bbc,{'contexts':_0xf31bb||[]});fs[_0x0bcf('0x60')]('/etc/asterisk/extensions_xcally_contexts.conf',_0x55c3cb);})[_0x0bcf('0x33')](function(){return respondWithRpcPromise(_0x0bcf('0x61'),'create',{'module':'chan_sip.so'});})[_0x0bcf('0x33')](function(){var _0x3609dd=_0x485754['user'][_0x0bcf('0x35')]({'plain':!![]});if(!_0x3609dd)throw new Error('Unable\x20to\x20retrieve\x20the\x20current\x20user');if(_0x3609dd[_0x0bcf('0x62')]==='user'){var _0x2aeed8=_0x21d1e2[_0x0bcf('0x35')]({'plain':!![]});return db[_0x0bcf('0x63')]['find']({'where':{'name':_0x0bcf('0x36'),'userProfileId':_0x3609dd[_0x0bcf('0x64')]},'raw':!![]})[_0x0bcf('0x33')](function(_0x1a7f6b){if(_0x1a7f6b&&_0x1a7f6b[_0x0bcf('0x65')]===0x0){return db['UserProfileResource'][_0x0bcf('0x59')]({'name':_0x2aeed8[_0x0bcf('0x39')],'resourceId':_0x2aeed8['id'],'type':_0x1a7f6b['name'],'sectionId':_0x1a7f6b['id']},{})[_0x0bcf('0x33')](function(){return _0x21d1e2;});}else{return _0x21d1e2;}})[_0x0bcf('0x28')](function(_0x48321f){logger[_0x0bcf('0x23')](_0x0bcf('0x66'),_0x48321f);throw _0x48321f;});}return _0x21d1e2;})[_0x0bcf('0x33')](respondWithResult(_0x1bf0dd,0xc9))['catch'](handleError(_0x1bf0dd,null));};exports[_0x0bcf('0x32')]=function(_0x107755,_0xbe4bc1,_0x5a0c99){var _0x35c6e1;return db['VoiceContext'][_0x0bcf('0x58')]({'where':{'id':_0x107755[_0x0bcf('0x57')]['id']}})[_0x0bcf('0x33')](handleEntityNotFound(_0xbe4bc1,null))[_0x0bcf('0x33')](saveUpdates(_0x107755[_0x0bcf('0x67')],null))[_0x0bcf('0x33')](function(_0x1a56ca){if(_0x1a56ca){_0x35c6e1=_0x1a56ca;return db[_0x0bcf('0x3b')][_0x0bcf('0x54')]({'raw':!![]});}})['then'](function(_0xef4981){var _0x3c68f9=fs[_0x0bcf('0x5a')](path[_0x0bcf('0x5b')](config[_0x0bcf('0x5c')],_0x0bcf('0x5d')),_0x0bcf('0x5e'));var _0x230eac=ejs[_0x0bcf('0x5f')](_0x3c68f9,{'contexts':_0xef4981||[]});fs[_0x0bcf('0x60')](_0x0bcf('0x68'),_0x230eac);})['then'](function(){return respondWithRpcPromise(_0x0bcf('0x61'),_0x0bcf('0x32'),{'module':_0x0bcf('0x69')});})[_0x0bcf('0x33')](function(){return _0x35c6e1;})[_0x0bcf('0x33')](respondWithResult(_0xbe4bc1,null))[_0x0bcf('0x28')](handleError(_0xbe4bc1,null));};exports['destroy']=function(_0x5da3d6,_0x35d579,_0x51ea28){var _0x7778ce;return db[_0x0bcf('0x3b')]['find']({'where':{'id':_0x5da3d6['params']['id']}})[_0x0bcf('0x33')](handleEntityNotFound(_0x35d579,null))[_0x0bcf('0x33')](removeEntity(_0x35d579,null))[_0x0bcf('0x33')](function(){return db['VoiceContext']['findAll']({'raw':!![]});})[_0x0bcf('0x33')](function(_0x326274){var _0x33f1be=fs[_0x0bcf('0x5a')](path[_0x0bcf('0x5b')](config[_0x0bcf('0x5c')],_0x0bcf('0x5d')),_0x0bcf('0x5e'));var _0x19ce08=ejs[_0x0bcf('0x5f')](_0x33f1be,{'contexts':_0x326274});fs['writeFileSync'](_0x0bcf('0x68'),_0x19ce08);return respondWithRpcPromise('Reload','destroy',{'module':_0x0bcf('0x69')});})[_0x0bcf('0x28')](handleError(_0x35d579,null));};
\ No newline at end of file