Built motion from commit (unavailable).|2.5.9
[motion2.git] / server / api / voiceChanSpy / voiceChanSpy.controller.js
1 // *************************************************************************
2 // *                                                                       *
3 // * xCALLY Motion -  The Omnichannel Contact Center                       *
4 // * Copyright (c) Xenialab s.r.l. All Rights Reserved                     *
5 // *                                                                       *
6 // *************************************************************************
7 // *                                                                       *
8 // * Email: info@xcally.com                                                *
9 // * Website: https://www.xcally.com                                       *
10 // *                                                                       *
11 // *************************************************************************
12 // *                                                                       *
13 // * The SOFTWARE PRODUCT is protected by copyright laws and international *
14 // * copyright treaties, as well as other intellectual property laws and   *
15 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                         *
16 // *                                                                       *
17 // *************************************************************************
18 var _0xe4c3=['Unable\x20to\x20retrieve\x20the\x20current\x20user','role','UserProfileSection','userProfileId','autoAssociation','error','body','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','mustache','util','path','sox','ejs','lodash','crypto','jsforce','desk.js','to-csv','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','sendStatus','status','end','count','offset','limit','Content-Range','json','reject','update','then','get','ChanSpies','UserProfileResource','name','rawAttributes','fieldName','type','key','model','map','query','keys','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','pick','filter','merge','VIRTUAL','VoiceChanSpy','includeAll','include','findAll','catch','show','params','options','find','create','user'];(function(_0x3782d0,_0x51703d){var _0x100b03=function(_0x21edd2){while(--_0x21edd2){_0x3782d0['push'](_0x3782d0['shift']());}};_0x100b03(++_0x51703d);}(_0xe4c3,0x1a1));var _0x3e4c=function(_0x3e4402,_0x559039){_0x3e4402=_0x3e4402-0x0;var _0x166c4b=_0xe4c3[_0x3e4402];return _0x166c4b;};'use strict';var pdf=require('html-pdf');var emlformat=require(_0x3e4c('0x0'));var rimraf=require(_0x3e4c('0x1'));var zipdir=require(_0x3e4c('0x2'));var jsonpatch=require(_0x3e4c('0x3'));var rp=require(_0x3e4c('0x4'));var moment=require(_0x3e4c('0x5'));var BPromise=require('bluebird');var Mustache=require(_0x3e4c('0x6'));var util=require(_0x3e4c('0x7'));var path=require(_0x3e4c('0x8'));var sox=require(_0x3e4c('0x9'));var csv=require('to-csv');var ejs=require(_0x3e4c('0xa'));var fs=require('fs');var _=require(_0x3e4c('0xb'));var squel=require('squel');var crypto=require(_0x3e4c('0xc'));var jsforce=require(_0x3e4c('0xd'));var deskjs=require(_0x3e4c('0xe'));var toCsv=require(_0x3e4c('0xf'));var querystring=require(_0x3e4c('0x10'));var Papa=require(_0x3e4c('0x11'));var Redis=require(_0x3e4c('0x12'));var authService=require(_0x3e4c('0x13'));var qs=require(_0x3e4c('0x14'));var as=require(_0x3e4c('0x15'));var hardwareService=require(_0x3e4c('0x16'));var logger=require(_0x3e4c('0x17'))(_0x3e4c('0x18'));var utils=require(_0x3e4c('0x19'));var config=require(_0x3e4c('0x1a'));var licenseUtil=require('../../config/license/util');var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x20ee6f,_0x26536e){_0x26536e=_0x26536e||0xcc;return function(_0x8f67ad){if(_0x8f67ad){return _0x20ee6f[_0x3e4c('0x1b')](_0x26536e);}return _0x20ee6f[_0x3e4c('0x1c')](_0x26536e)[_0x3e4c('0x1d')]();};}function respondWithResult(_0x136e94,_0xe48de8){_0xe48de8=_0xe48de8||0xc8;return function(_0x544f13){if(_0x544f13){return _0x136e94[_0x3e4c('0x1c')](_0xe48de8)['json'](_0x544f13);}};}function respondWithFilteredResult(_0x63428b,_0x21c865){return function(_0xbc559){if(_0xbc559){var _0x59b430=_0xbc559[_0x3e4c('0x1e')],_0x1af1ac=_0x21c865[_0x3e4c('0x1f')],_0x3c003a=_0x21c865[_0x3e4c('0x1f')]+_0x21c865[_0x3e4c('0x20')],_0x5be6bb;if(_0x3c003a>=_0x59b430){_0x3c003a=_0x59b430;_0x5be6bb=0xc8;}else{_0x5be6bb=0xce;}_0x63428b[_0x3e4c('0x1c')](_0x5be6bb);return _0x63428b['set'](_0x3e4c('0x21'),_0x1af1ac+'-'+_0x3c003a+'/'+_0x59b430)[_0x3e4c('0x22')](_0xbc559);}return null;};}function patchUpdates(_0x24befb){return function(_0x1b3a2b){try{jsonpatch['apply'](_0x1b3a2b,_0x24befb,!![]);}catch(_0x3a18dd){return BPromise[_0x3e4c('0x23')](_0x3a18dd);}return _0x1b3a2b['save']();};}function saveUpdates(_0x10a648,_0x2210d5){return function(_0x5c057b){if(_0x5c057b){return _0x5c057b[_0x3e4c('0x24')](_0x10a648)[_0x3e4c('0x25')](function(_0x1a9ac8){return _0x1a9ac8;});}return null;};}function removeEntity(_0x153daf,_0xb5498d){return function(_0x2e92b1){if(_0x2e92b1){return _0x2e92b1['destroy']()[_0x3e4c('0x25')](function(){var _0x2882d4=_0x2e92b1[_0x3e4c('0x26')]({'plain':!![]});var _0x5736f7=_0x3e4c('0x27');return db[_0x3e4c('0x28')]['destroy']({'where':{'type':_0x5736f7,'resourceId':_0x2882d4['id']}})['then'](function(){return _0x2e92b1;});})[_0x3e4c('0x25')](function(){_0x153daf[_0x3e4c('0x1c')](0xcc)[_0x3e4c('0x1d')]();});}};}function handleEntityNotFound(_0x32cf4c,_0x3fa5a8){return function(_0x4d3f44){if(!_0x4d3f44){_0x32cf4c[_0x3e4c('0x1b')](0x194);}return _0x4d3f44;};}function handleError(_0x9128bd,_0x5f291d){_0x5f291d=_0x5f291d||0x1f4;return function(_0x1dccbb){logger['error'](_0x1dccbb['stack']);if(_0x1dccbb[_0x3e4c('0x29')]){delete _0x1dccbb[_0x3e4c('0x29')];}_0x9128bd[_0x3e4c('0x1c')](_0x5f291d)['send'](_0x1dccbb);};}exports['index']=function(_0x588032,_0x43c666){var _0x322df1={},_0xa34ce1={},_0x4c7c3b={'count':0x0,'rows':[]};var _0x439192=_['map'](db['VoiceChanSpy'][_0x3e4c('0x2a')],function(_0x19fb73){return{'name':_0x19fb73[_0x3e4c('0x2b')],'type':_0x19fb73[_0x3e4c('0x2c')][_0x3e4c('0x2d')]};});_0xa34ce1[_0x3e4c('0x2e')]=_[_0x3e4c('0x2f')](_0x439192,_0x3e4c('0x29'));_0xa34ce1[_0x3e4c('0x30')]=_[_0x3e4c('0x31')](_0x588032['query']);_0xa34ce1[_0x3e4c('0x32')]=_[_0x3e4c('0x33')](_0xa34ce1[_0x3e4c('0x2e')],_0xa34ce1[_0x3e4c('0x30')]);_0x322df1[_0x3e4c('0x34')]=_[_0x3e4c('0x33')](_0xa34ce1['model'],qs[_0x3e4c('0x35')](_0x588032['query'][_0x3e4c('0x35')]));_0x322df1[_0x3e4c('0x34')]=_0x322df1[_0x3e4c('0x34')][_0x3e4c('0x36')]?_0x322df1[_0x3e4c('0x34')]:_0xa34ce1[_0x3e4c('0x2e')];if(!_0x588032[_0x3e4c('0x30')][_0x3e4c('0x37')](_0x3e4c('0x38'))){_0x322df1[_0x3e4c('0x20')]=qs['limit'](_0x588032['query'][_0x3e4c('0x20')]);_0x322df1[_0x3e4c('0x1f')]=qs[_0x3e4c('0x1f')](_0x588032[_0x3e4c('0x30')][_0x3e4c('0x1f')]);}_0x322df1[_0x3e4c('0x39')]=qs[_0x3e4c('0x3a')](_0x588032['query'][_0x3e4c('0x3a')]);_0x322df1[_0x3e4c('0x3b')]=qs[_0x3e4c('0x32')](_[_0x3e4c('0x3c')](_0x588032[_0x3e4c('0x30')],_0xa34ce1[_0x3e4c('0x32')]),_0x439192);if(_0x588032[_0x3e4c('0x30')][_0x3e4c('0x3d')]){_0x322df1[_0x3e4c('0x3b')]=_[_0x3e4c('0x3e')](_0x322df1[_0x3e4c('0x3b')],{'$or':_['map'](_0x439192,function(_0x44f088){if(_0x44f088['type']!==_0x3e4c('0x3f')){var _0xc4c22b={};_0xc4c22b[_0x44f088['name']]={'$like':'%'+_0x588032[_0x3e4c('0x30')]['filter']+'%'};return _0xc4c22b;}})});}_0x322df1=_[_0x3e4c('0x3e')]({},_0x322df1,_0x588032['options']);var _0x140441={'where':_0x322df1[_0x3e4c('0x3b')]};return db[_0x3e4c('0x40')][_0x3e4c('0x1e')](_0x140441)[_0x3e4c('0x25')](function(_0x23cbb6){_0x4c7c3b[_0x3e4c('0x1e')]=_0x23cbb6;if(_0x588032[_0x3e4c('0x30')][_0x3e4c('0x41')]){_0x322df1[_0x3e4c('0x42')]=[{'all':!![]}];}return db[_0x3e4c('0x40')][_0x3e4c('0x43')](_0x322df1);})[_0x3e4c('0x25')](function(_0x503fbf){_0x4c7c3b['rows']=_0x503fbf;return _0x4c7c3b;})[_0x3e4c('0x25')](respondWithFilteredResult(_0x43c666,_0x322df1))[_0x3e4c('0x44')](handleError(_0x43c666,null));};exports[_0x3e4c('0x45')]=function(_0x1baa47,_0x24b753){var _0x67f795={'raw':![],'where':{'id':_0x1baa47[_0x3e4c('0x46')]['id']}},_0x2e5e35={};_0x2e5e35[_0x3e4c('0x2e')]=_[_0x3e4c('0x31')](db['VoiceChanSpy']['rawAttributes']);_0x2e5e35['query']=_[_0x3e4c('0x31')](_0x1baa47[_0x3e4c('0x30')]);_0x2e5e35[_0x3e4c('0x32')]=_[_0x3e4c('0x33')](_0x2e5e35[_0x3e4c('0x2e')],_0x2e5e35['query']);_0x67f795[_0x3e4c('0x34')]=_[_0x3e4c('0x33')](_0x2e5e35[_0x3e4c('0x2e')],qs[_0x3e4c('0x35')](_0x1baa47['query'][_0x3e4c('0x35')]));_0x67f795[_0x3e4c('0x34')]=_0x67f795['attributes']['length']?_0x67f795[_0x3e4c('0x34')]:_0x2e5e35[_0x3e4c('0x2e')];if(_0x1baa47['query'][_0x3e4c('0x41')]){_0x67f795[_0x3e4c('0x42')]=[{'all':!![]}];}_0x67f795=_[_0x3e4c('0x3e')]({},_0x67f795,_0x1baa47[_0x3e4c('0x47')]);return db[_0x3e4c('0x40')][_0x3e4c('0x48')](_0x67f795)[_0x3e4c('0x25')](handleEntityNotFound(_0x24b753,null))[_0x3e4c('0x25')](respondWithResult(_0x24b753,null))[_0x3e4c('0x44')](handleError(_0x24b753,null));};exports[_0x3e4c('0x49')]=function(_0x33ce98,_0x967443){return db['VoiceChanSpy'][_0x3e4c('0x49')](_0x33ce98['body'],{})[_0x3e4c('0x25')](function(_0x3596bd){var _0x199ba3=_0x33ce98[_0x3e4c('0x4a')][_0x3e4c('0x26')]({'plain':!![]});if(!_0x199ba3)throw new Error(_0x3e4c('0x4b'));if(_0x199ba3[_0x3e4c('0x4c')]===_0x3e4c('0x4a')){var _0x1c6d05=_0x3596bd[_0x3e4c('0x26')]({'plain':!![]});var _0x4c092a=_0x3e4c('0x27');return db[_0x3e4c('0x4d')][_0x3e4c('0x48')]({'where':{'name':_0x4c092a,'userProfileId':_0x199ba3[_0x3e4c('0x4e')]},'raw':!![]})[_0x3e4c('0x25')](function(_0x1b4051){if(_0x1b4051&&_0x1b4051[_0x3e4c('0x4f')]===0x0){return db[_0x3e4c('0x28')][_0x3e4c('0x49')]({'name':_0x1c6d05[_0x3e4c('0x29')],'resourceId':_0x1c6d05['id'],'type':_0x1b4051[_0x3e4c('0x29')],'sectionId':_0x1b4051['id']},{})[_0x3e4c('0x25')](function(){return _0x3596bd;});}else{return _0x3596bd;}})[_0x3e4c('0x44')](function(_0x14a81b){logger[_0x3e4c('0x50')]('Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s',_0x14a81b);throw _0x14a81b;});}return _0x3596bd;})[_0x3e4c('0x25')](respondWithResult(_0x967443,0xc9))[_0x3e4c('0x44')](handleError(_0x967443,null));};exports[_0x3e4c('0x24')]=function(_0x8ea32b,_0x3cc14a){if(_0x8ea32b[_0x3e4c('0x51')]['id']){delete _0x8ea32b[_0x3e4c('0x51')]['id'];}return db[_0x3e4c('0x40')][_0x3e4c('0x48')]({'where':{'id':_0x8ea32b['params']['id']}})[_0x3e4c('0x25')](handleEntityNotFound(_0x3cc14a,null))[_0x3e4c('0x25')](saveUpdates(_0x8ea32b[_0x3e4c('0x51')],null))[_0x3e4c('0x25')](respondWithResult(_0x3cc14a,null))[_0x3e4c('0x44')](handleError(_0x3cc14a,null));};exports['destroy']=function(_0x51f25c,_0x386ad0){return db['VoiceChanSpy'][_0x3e4c('0x48')]({'where':{'id':_0x51f25c['params']['id']}})[_0x3e4c('0x25')](handleEntityNotFound(_0x386ad0,null))['then'](removeEntity(_0x386ad0,null))[_0x3e4c('0x44')](handleError(_0x386ad0,null));};