Built motion from commit efa66e19.|2.6.22
[motion2.git] / server / api / voiceContext / voiceContext.controller.js
index e0b0900..9a84851 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xa229=['http','request','info','VoiceContext,\x20%s,\x20%s','request\x20sent','debug','VoiceContext,\x20%s,\x20%s,\x20%s','error','code','message','result','catch','sendStatus','status','end','json','offset','undefined','limit','count','set','Content-Range','apply','reject','save','destroy','Contexts','then','stack','name','send','fieldName','type','map','query','keys','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','filters','pick','filter','merge','VIRTUAL','options','includeAll','include','VoiceContext','show','params','model','find','create','body','findAll','readFileSync','join','root','utf8','writeFileSync','/etc/asterisk/extensions_xcally_contexts.conf','Reload','chan_sip.so','user','get','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','UserProfileSection','userProfileId','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','server/files/templates/context.ejs','render','update','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','util','path','sox','fs-extra','lodash','crypto','jsforce','to-csv','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../mysqldb','client'];(function(_0x5b73de,_0x23359c){var _0x54394d=function(_0x50a532){while(--_0x50a532){_0x5b73de['push'](_0x5b73de['shift']());}};_0x54394d(++_0x23359c);}(_0xa229,0x187));var _0x9a22=function(_0x321bb2,_0x202794){_0x321bb2=_0x321bb2-0x0;var _0x9c12ed=_0xa229[_0x321bb2];return _0x9c12ed;};'use strict';var emlformat=require(_0x9a22('0x0'));var rimraf=require(_0x9a22('0x1'));var zipdir=require(_0x9a22('0x2'));var jsonpatch=require(_0x9a22('0x3'));var rp=require(_0x9a22('0x4'));var moment=require(_0x9a22('0x5'));var BPromise=require(_0x9a22('0x6'));var Mustache=require('mustache');var util=require(_0x9a22('0x7'));var path=require(_0x9a22('0x8'));var sox=require(_0x9a22('0x9'));var csv=require('to-csv');var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0x9a22('0xa'));var _=require(_0x9a22('0xb'));var squel=require('squel');var crypto=require(_0x9a22('0xc'));var jsforce=require(_0x9a22('0xd'));var deskjs=require('desk.js');var toCsv=require(_0x9a22('0xe'));var querystring=require('querystring');var Papa=require('papaparse');var Redis=require(_0x9a22('0xf'));var authService=require(_0x9a22('0x10'));var qs=require(_0x9a22('0x11'));var as=require(_0x9a22('0x12'));var hardwareService=require(_0x9a22('0x13'));var logger=require(_0x9a22('0x14'))(_0x9a22('0x15'));var utils=require(_0x9a22('0x16'));var config=require('../../config/environment');var licenseUtil=require('../../config/license/util');var db=require(_0x9a22('0x17'))['db'];var jayson=require('jayson/promise');var client=jayson[_0x9a22('0x18')][_0x9a22('0x19')]({'port':0x232a});function respondWithRpcPromise(_0x45f11d,_0x4581bf,_0xe3f260,_0x1fbefb){return new BPromise(function(_0x150010,_0x2d3695){var _0x2968ad=_0x1fbefb||client;return _0x2968ad[_0x9a22('0x1a')](_0x45f11d,_0xe3f260)['then'](function(_0x8a7cdb){logger[_0x9a22('0x1b')](_0x9a22('0x1c'),_0x4581bf,_0x9a22('0x1d'));logger[_0x9a22('0x1e')](_0x9a22('0x1f'),_0x4581bf,_0x9a22('0x1d'),JSON['stringify'](_0x8a7cdb));if(_0x8a7cdb[_0x9a22('0x20')]){if(_0x8a7cdb[_0x9a22('0x20')][_0x9a22('0x21')]===0x1f4){logger[_0x9a22('0x20')](_0x9a22('0x1c'),_0x4581bf,_0x8a7cdb[_0x9a22('0x20')][_0x9a22('0x22')]);return _0x2d3695(_0x8a7cdb['error']['message']);}logger['error'](_0x9a22('0x1c'),_0x4581bf,_0x8a7cdb[_0x9a22('0x20')]['message']);return _0x150010(_0x8a7cdb['error'][_0x9a22('0x22')]);}else{logger[_0x9a22('0x1b')]('VoiceContext,\x20%s,\x20%s',_0x4581bf,_0x9a22('0x1d'));_0x150010(_0x8a7cdb[_0x9a22('0x23')][_0x9a22('0x22')]);}})[_0x9a22('0x24')](function(_0x16e5d2){logger[_0x9a22('0x20')](_0x9a22('0x1c'),_0x4581bf,_0x16e5d2);_0x2d3695(_0x16e5d2);});});}function respondWithStatusCode(_0x4dbffa,_0x47a49c){_0x47a49c=_0x47a49c||0xcc;return function(_0x4dc89a){if(_0x4dc89a){return _0x4dbffa[_0x9a22('0x25')](_0x47a49c);}return _0x4dbffa[_0x9a22('0x26')](_0x47a49c)[_0x9a22('0x27')]();};}function respondWithResult(_0x41d252,_0x6fcec3){_0x6fcec3=_0x6fcec3||0xc8;return function(_0x3d56ac){if(_0x3d56ac){return _0x41d252[_0x9a22('0x26')](_0x6fcec3)[_0x9a22('0x28')](_0x3d56ac);}};}function respondWithFilteredResult(_0x24d490,_0x510de3){return function(_0x4ea17b){if(_0x4ea17b){var _0x358b80=typeof _0x510de3[_0x9a22('0x29')]===_0x9a22('0x2a')&&typeof _0x510de3[_0x9a22('0x2b')]===_0x9a22('0x2a');var _0x350f4c=_0x4ea17b['count'];var _0x3cf003=_0x358b80?0x0:_0x510de3['offset'];var _0x2c741f=_0x358b80?_0x4ea17b[_0x9a22('0x2c')]:_0x510de3[_0x9a22('0x29')]+_0x510de3[_0x9a22('0x2b')];var _0x457e64;if(_0x2c741f>=_0x350f4c){_0x2c741f=_0x350f4c;_0x457e64=0xc8;}else{_0x457e64=0xce;}_0x24d490['status'](_0x457e64);return _0x24d490[_0x9a22('0x2d')](_0x9a22('0x2e'),_0x3cf003+'-'+_0x2c741f+'/'+_0x350f4c)[_0x9a22('0x28')](_0x4ea17b);}return null;};}function patchUpdates(_0x2e29b8){return function(_0x5994bf){try{jsonpatch[_0x9a22('0x2f')](_0x5994bf,_0x2e29b8,!![]);}catch(_0xe4a4a3){return BPromise[_0x9a22('0x30')](_0xe4a4a3);}return _0x5994bf[_0x9a22('0x31')]();};}function saveUpdates(_0x49315c,_0x251ca3){return function(_0x263947){if(_0x263947){return _0x263947['update'](_0x49315c)['then'](function(_0x4d5bb5){return _0x4d5bb5;});}return null;};}function removeEntity(_0x3a9f53,_0x5317c1){return function(_0x5b65df){if(_0x5b65df){return _0x5b65df[_0x9a22('0x32')]()['then'](function(){var _0x2e659d=_0x5b65df['get']({'plain':!![]});var _0x528fce=_0x9a22('0x33');return db['UserProfileResource'][_0x9a22('0x32')]({'where':{'type':_0x528fce,'resourceId':_0x2e659d['id']}})[_0x9a22('0x34')](function(){return _0x5b65df;});})[_0x9a22('0x34')](function(){_0x3a9f53[_0x9a22('0x26')](0xcc)[_0x9a22('0x27')]();});}};}function handleEntityNotFound(_0x4d2ac7,_0x468270){return function(_0x278e9c){if(!_0x278e9c){_0x4d2ac7['sendStatus'](0x194);}return _0x278e9c;};}function handleError(_0x12d215,_0x613538){_0x613538=_0x613538||0x1f4;return function(_0x44934a){logger['error'](_0x44934a[_0x9a22('0x35')]);if(_0x44934a[_0x9a22('0x36')]){delete _0x44934a[_0x9a22('0x36')];}_0x12d215[_0x9a22('0x26')](_0x613538)[_0x9a22('0x37')](_0x44934a);};}exports['index']=function(_0x38ed3c,_0x5f3231){var _0x367a7c={},_0x2c721c={},_0x368ae4={'count':0x0,'rows':[]};var _0x37a440=_['map'](db['VoiceContext']['rawAttributes'],function(_0x1f56dd){return{'name':_0x1f56dd[_0x9a22('0x38')],'type':_0x1f56dd[_0x9a22('0x39')]['key']};});_0x2c721c['model']=_[_0x9a22('0x3a')](_0x37a440,_0x9a22('0x36'));_0x2c721c[_0x9a22('0x3b')]=_[_0x9a22('0x3c')](_0x38ed3c[_0x9a22('0x3b')]);_0x2c721c['filters']=_[_0x9a22('0x3d')](_0x2c721c['model'],_0x2c721c[_0x9a22('0x3b')]);_0x367a7c[_0x9a22('0x3e')]=_[_0x9a22('0x3d')](_0x2c721c['model'],qs[_0x9a22('0x3f')](_0x38ed3c['query']['fields']));_0x367a7c[_0x9a22('0x3e')]=_0x367a7c[_0x9a22('0x3e')][_0x9a22('0x40')]?_0x367a7c[_0x9a22('0x3e')]:_0x2c721c['model'];if(!_0x38ed3c['query'][_0x9a22('0x41')](_0x9a22('0x42'))){_0x367a7c['limit']=qs[_0x9a22('0x2b')](_0x38ed3c[_0x9a22('0x3b')][_0x9a22('0x2b')]);_0x367a7c['offset']=qs['offset'](_0x38ed3c[_0x9a22('0x3b')][_0x9a22('0x29')]);}_0x367a7c[_0x9a22('0x43')]=qs[_0x9a22('0x44')](_0x38ed3c['query'][_0x9a22('0x44')]);_0x367a7c[_0x9a22('0x45')]=qs[_0x9a22('0x46')](_[_0x9a22('0x47')](_0x38ed3c[_0x9a22('0x3b')],_0x2c721c[_0x9a22('0x46')]),_0x37a440);if(_0x38ed3c['query'][_0x9a22('0x48')]){_0x367a7c[_0x9a22('0x45')]=_[_0x9a22('0x49')](_0x367a7c[_0x9a22('0x45')],{'$or':_[_0x9a22('0x3a')](_0x37a440,function(_0xfa473c){if(_0xfa473c['type']!==_0x9a22('0x4a')){var _0x47aca7={};_0x47aca7[_0xfa473c['name']]={'$like':'%'+_0x38ed3c[_0x9a22('0x3b')][_0x9a22('0x48')]+'%'};return _0x47aca7;}})});}_0x367a7c=_['merge']({},_0x367a7c,_0x38ed3c[_0x9a22('0x4b')]);var _0x38755e={'where':_0x367a7c[_0x9a22('0x45')]};return db['VoiceContext'][_0x9a22('0x2c')](_0x38755e)[_0x9a22('0x34')](function(_0xb2f42e){_0x368ae4[_0x9a22('0x2c')]=_0xb2f42e;if(_0x38ed3c[_0x9a22('0x3b')][_0x9a22('0x4c')]){_0x367a7c[_0x9a22('0x4d')]=[{'all':!![]}];}return db[_0x9a22('0x4e')]['findAll'](_0x367a7c);})['then'](function(_0x55413d){_0x368ae4['rows']=_0x55413d;return _0x368ae4;})['then'](respondWithFilteredResult(_0x5f3231,_0x367a7c))['catch'](handleError(_0x5f3231,null));};exports[_0x9a22('0x4f')]=function(_0x5eb9c5,_0x2b649c){var _0x37547c={'raw':![],'where':{'id':_0x5eb9c5[_0x9a22('0x50')]['id']}},_0x509919={};_0x509919[_0x9a22('0x51')]=_[_0x9a22('0x3c')](db[_0x9a22('0x4e')]['rawAttributes']);_0x509919[_0x9a22('0x3b')]=_[_0x9a22('0x3c')](_0x5eb9c5['query']);_0x509919['filters']=_[_0x9a22('0x3d')](_0x509919[_0x9a22('0x51')],_0x509919['query']);_0x37547c[_0x9a22('0x3e')]=_[_0x9a22('0x3d')](_0x509919[_0x9a22('0x51')],qs['fields'](_0x5eb9c5[_0x9a22('0x3b')][_0x9a22('0x3f')]));_0x37547c[_0x9a22('0x3e')]=_0x37547c[_0x9a22('0x3e')][_0x9a22('0x40')]?_0x37547c[_0x9a22('0x3e')]:_0x509919[_0x9a22('0x51')];if(_0x5eb9c5[_0x9a22('0x3b')][_0x9a22('0x4c')]){_0x37547c['include']=[{'all':!![]}];}_0x37547c=_[_0x9a22('0x49')]({},_0x37547c,_0x5eb9c5[_0x9a22('0x4b')]);return db[_0x9a22('0x4e')][_0x9a22('0x52')](_0x37547c)['then'](handleEntityNotFound(_0x2b649c,null))['then'](respondWithResult(_0x2b649c,null))['catch'](handleError(_0x2b649c,null));};exports[_0x9a22('0x53')]=function(_0x1f1172,_0x10da8a,_0x433587){var _0x18b2ef;return db[_0x9a22('0x4e')]['create'](_0x1f1172[_0x9a22('0x54')],{'raw':!![]})[_0x9a22('0x34')](function(_0x45a36e){_0x18b2ef=_0x45a36e;return db[_0x9a22('0x4e')][_0x9a22('0x55')]({'raw':!![]});})[_0x9a22('0x34')](function(_0x270873){var _0x555641=fs[_0x9a22('0x56')](path[_0x9a22('0x57')](config[_0x9a22('0x58')],'server/files/templates/context.ejs'),_0x9a22('0x59'));var _0xcdf3b2=ejs['render'](_0x555641,{'contexts':_0x270873||[]});fs[_0x9a22('0x5a')](_0x9a22('0x5b'),_0xcdf3b2);})['then'](function(){return respondWithRpcPromise(_0x9a22('0x5c'),'create',{'module':_0x9a22('0x5d')});})[_0x9a22('0x34')](function(){var _0xe1d891=_0x1f1172[_0x9a22('0x5e')][_0x9a22('0x5f')]({'plain':!![]});if(!_0xe1d891)throw new Error(_0x9a22('0x60'));if(_0xe1d891[_0x9a22('0x61')]==='user'){var _0x28889b=_0x18b2ef['get']({'plain':!![]});return db[_0x9a22('0x62')][_0x9a22('0x52')]({'where':{'name':'Contexts','userProfileId':_0xe1d891[_0x9a22('0x63')]},'raw':!![]})['then'](function(_0x584b8d){if(_0x584b8d&&_0x584b8d['autoAssociation']===0x0){return db['UserProfileResource'][_0x9a22('0x53')]({'name':_0x28889b[_0x9a22('0x36')],'resourceId':_0x28889b['id'],'type':_0x584b8d[_0x9a22('0x36')],'sectionId':_0x584b8d['id']},{})['then'](function(){return _0x18b2ef;});}else{return _0x18b2ef;}})[_0x9a22('0x24')](function(_0x3f571d){logger[_0x9a22('0x20')](_0x9a22('0x64'),_0x3f571d);throw _0x3f571d;});}return _0x18b2ef;})['then'](respondWithResult(_0x10da8a,0xc9))[_0x9a22('0x24')](handleError(_0x10da8a,null));};exports['update']=function(_0x212234,_0x11929a,_0x281ef7){var _0x3b8d45;return db['VoiceContext'][_0x9a22('0x52')]({'where':{'id':_0x212234[_0x9a22('0x50')]['id']}})[_0x9a22('0x34')](handleEntityNotFound(_0x11929a,null))['then'](saveUpdates(_0x212234[_0x9a22('0x54')],null))['then'](function(_0x3b4589){if(_0x3b4589){_0x3b8d45=_0x3b4589;return db['VoiceContext'][_0x9a22('0x55')]({'raw':!![]});}})[_0x9a22('0x34')](function(_0x74e1e9){var _0xfaea40=fs[_0x9a22('0x56')](path[_0x9a22('0x57')](config['root'],_0x9a22('0x65')),_0x9a22('0x59'));var _0x3afde3=ejs[_0x9a22('0x66')](_0xfaea40,{'contexts':_0x74e1e9||[]});fs['writeFileSync'](_0x9a22('0x5b'),_0x3afde3);})[_0x9a22('0x34')](function(){return respondWithRpcPromise(_0x9a22('0x5c'),_0x9a22('0x67'),{'module':_0x9a22('0x5d')});})['then'](function(){return _0x3b8d45;})[_0x9a22('0x34')](respondWithResult(_0x11929a,null))[_0x9a22('0x24')](handleError(_0x11929a,null));};exports['destroy']=function(_0x5f4e8f,_0x2c493d,_0x327c3e){var _0x4d70c9;return db[_0x9a22('0x4e')][_0x9a22('0x52')]({'where':{'id':_0x5f4e8f['params']['id']}})[_0x9a22('0x34')](handleEntityNotFound(_0x2c493d,null))[_0x9a22('0x34')](removeEntity(_0x2c493d,null))[_0x9a22('0x34')](function(){return db[_0x9a22('0x4e')][_0x9a22('0x55')]({'raw':!![]});})[_0x9a22('0x34')](function(_0x1cdf5a){var _0x17c311=fs[_0x9a22('0x56')](path[_0x9a22('0x57')](config[_0x9a22('0x58')],'server/files/templates/context.ejs'),_0x9a22('0x59'));var _0x476584=ejs[_0x9a22('0x66')](_0x17c311,{'contexts':_0x1cdf5a});fs['writeFileSync'](_0x9a22('0x5b'),_0x476584);return respondWithRpcPromise('Reload','destroy',{'module':_0x9a22('0x5d')});})['catch'](handleError(_0x2c493d,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