Built motion from commit 1fa89557.|2.6.10
[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 _0x53d5=['undefined','offset','count','set','Content-Range','apply','reject','save','then','destroy','UserProfileResource','error','name','index','map','VoiceChanSpy','rawAttributes','fieldName','type','key','model','query','keys','filters','intersection','attributes','fields','nolimit','sort','where','filter','merge','options','includeAll','include','findAll','rows','catch','params','length','find','create','body','user','get','Unable\x20to\x20retrieve\x20the\x20current\x20user','userProfileId','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','update','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','util','path','sox','to-csv','ejs','lodash','squel','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','api','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','end','json','limit'];(function(_0xd3ebc3,_0x5ea8a4){var _0x8c2b69=function(_0x4160b6){while(--_0x4160b6){_0xd3ebc3['push'](_0xd3ebc3['shift']());}};_0x8c2b69(++_0x5ea8a4);}(_0x53d5,0x1cc));var _0x553d=function(_0x19e67d,_0x2fdc51){_0x19e67d=_0x19e67d-0x0;var _0x56ecb7=_0x53d5[_0x19e67d];return _0x56ecb7;};'use strict';var emlformat=require(_0x553d('0x0'));var rimraf=require(_0x553d('0x1'));var zipdir=require(_0x553d('0x2'));var jsonpatch=require(_0x553d('0x3'));var rp=require(_0x553d('0x4'));var moment=require(_0x553d('0x5'));var BPromise=require(_0x553d('0x6'));var Mustache=require('mustache');var util=require(_0x553d('0x7'));var path=require(_0x553d('0x8'));var sox=require(_0x553d('0x9'));var csv=require(_0x553d('0xa'));var ejs=require(_0x553d('0xb'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0x553d('0xc'));var squel=require(_0x553d('0xd'));var crypto=require(_0x553d('0xe'));var jsforce=require(_0x553d('0xf'));var deskjs=require(_0x553d('0x10'));var toCsv=require(_0x553d('0xa'));var querystring=require(_0x553d('0x11'));var Papa=require(_0x553d('0x12'));var Redis=require(_0x553d('0x13'));var authService=require(_0x553d('0x14'));var qs=require(_0x553d('0x15'));var as=require(_0x553d('0x16'));var hardwareService=require('../../config/license/hardware');var logger=require('../../config/logger')(_0x553d('0x17'));var utils=require('../../config/utils');var config=require(_0x553d('0x18'));var licenseUtil=require(_0x553d('0x19'));var db=require(_0x553d('0x1a'))['db'];function respondWithStatusCode(_0x1a54ea,_0x41f6c1){_0x41f6c1=_0x41f6c1||0xcc;return function(_0x4285c0){if(_0x4285c0){return _0x1a54ea[_0x553d('0x1b')](_0x41f6c1);}return _0x1a54ea[_0x553d('0x1c')](_0x41f6c1)[_0x553d('0x1d')]();};}function respondWithResult(_0x32b169,_0x3cb13c){_0x3cb13c=_0x3cb13c||0xc8;return function(_0xd11e74){if(_0xd11e74){return _0x32b169['status'](_0x3cb13c)[_0x553d('0x1e')](_0xd11e74);}};}function respondWithFilteredResult(_0x5caa96,_0x1d4f35){return function(_0x2de0c1){if(_0x2de0c1){var _0x12b505=typeof _0x1d4f35['offset']==='undefined'&&typeof _0x1d4f35[_0x553d('0x1f')]===_0x553d('0x20');var _0x2857c5=_0x2de0c1['count'];var _0x2ab468=_0x12b505?0x0:_0x1d4f35[_0x553d('0x21')];var _0x343ce5=_0x12b505?_0x2de0c1[_0x553d('0x22')]:_0x1d4f35[_0x553d('0x21')]+_0x1d4f35[_0x553d('0x1f')];var _0x719651;if(_0x343ce5>=_0x2857c5){_0x343ce5=_0x2857c5;_0x719651=0xc8;}else{_0x719651=0xce;}_0x5caa96[_0x553d('0x1c')](_0x719651);return _0x5caa96[_0x553d('0x23')](_0x553d('0x24'),_0x2ab468+'-'+_0x343ce5+'/'+_0x2857c5)[_0x553d('0x1e')](_0x2de0c1);}return null;};}function patchUpdates(_0x4950e7){return function(_0x11bc86){try{jsonpatch[_0x553d('0x25')](_0x11bc86,_0x4950e7,!![]);}catch(_0x4c5f0f){return BPromise[_0x553d('0x26')](_0x4c5f0f);}return _0x11bc86[_0x553d('0x27')]();};}function saveUpdates(_0x4d00e3,_0x5bbd2d){return function(_0x4a6e0e){if(_0x4a6e0e){return _0x4a6e0e['update'](_0x4d00e3)[_0x553d('0x28')](function(_0x53b217){return _0x53b217;});}return null;};}function removeEntity(_0x82dd3a,_0xacc984){return function(_0x2e4f1b){if(_0x2e4f1b){return _0x2e4f1b[_0x553d('0x29')]()[_0x553d('0x28')](function(){var _0x5bc7f0=_0x2e4f1b['get']({'plain':!![]});var _0x2caed9='ChanSpies';return db[_0x553d('0x2a')][_0x553d('0x29')]({'where':{'type':_0x2caed9,'resourceId':_0x5bc7f0['id']}})['then'](function(){return _0x2e4f1b;});})[_0x553d('0x28')](function(){_0x82dd3a[_0x553d('0x1c')](0xcc)[_0x553d('0x1d')]();});}};}function handleEntityNotFound(_0x5cda9e,_0x1f3f5c){return function(_0x349b3f){if(!_0x349b3f){_0x5cda9e[_0x553d('0x1b')](0x194);}return _0x349b3f;};}function handleError(_0x54f0ed,_0x24ff8b){_0x24ff8b=_0x24ff8b||0x1f4;return function(_0x39943d){logger[_0x553d('0x2b')](_0x39943d['stack']);if(_0x39943d[_0x553d('0x2c')]){delete _0x39943d[_0x553d('0x2c')];}_0x54f0ed[_0x553d('0x1c')](_0x24ff8b)['send'](_0x39943d);};}exports[_0x553d('0x2d')]=function(_0x4b70b3,_0x174fea){var _0x35a77d={},_0xe1a5b5={},_0x615816={'count':0x0,'rows':[]};var _0x8e6605=_[_0x553d('0x2e')](db[_0x553d('0x2f')][_0x553d('0x30')],function(_0x5acfce){return{'name':_0x5acfce[_0x553d('0x31')],'type':_0x5acfce[_0x553d('0x32')][_0x553d('0x33')]};});_0xe1a5b5[_0x553d('0x34')]=_[_0x553d('0x2e')](_0x8e6605,_0x553d('0x2c'));_0xe1a5b5[_0x553d('0x35')]=_[_0x553d('0x36')](_0x4b70b3['query']);_0xe1a5b5[_0x553d('0x37')]=_[_0x553d('0x38')](_0xe1a5b5[_0x553d('0x34')],_0xe1a5b5['query']);_0x35a77d[_0x553d('0x39')]=_[_0x553d('0x38')](_0xe1a5b5[_0x553d('0x34')],qs[_0x553d('0x3a')](_0x4b70b3[_0x553d('0x35')][_0x553d('0x3a')]));_0x35a77d[_0x553d('0x39')]=_0x35a77d[_0x553d('0x39')]['length']?_0x35a77d['attributes']:_0xe1a5b5[_0x553d('0x34')];if(!_0x4b70b3[_0x553d('0x35')]['hasOwnProperty'](_0x553d('0x3b'))){_0x35a77d['limit']=qs['limit'](_0x4b70b3[_0x553d('0x35')]['limit']);_0x35a77d[_0x553d('0x21')]=qs['offset'](_0x4b70b3[_0x553d('0x35')][_0x553d('0x21')]);}_0x35a77d['order']=qs['sort'](_0x4b70b3[_0x553d('0x35')][_0x553d('0x3c')]);_0x35a77d[_0x553d('0x3d')]=qs[_0x553d('0x37')](_['pick'](_0x4b70b3[_0x553d('0x35')],_0xe1a5b5[_0x553d('0x37')]),_0x8e6605);if(_0x4b70b3['query'][_0x553d('0x3e')]){_0x35a77d['where']=_[_0x553d('0x3f')](_0x35a77d[_0x553d('0x3d')],{'$or':_[_0x553d('0x2e')](_0x8e6605,function(_0xcd967f){if(_0xcd967f['type']!=='VIRTUAL'){var _0x299a45={};_0x299a45[_0xcd967f[_0x553d('0x2c')]]={'$like':'%'+_0x4b70b3[_0x553d('0x35')][_0x553d('0x3e')]+'%'};return _0x299a45;}})});}_0x35a77d=_[_0x553d('0x3f')]({},_0x35a77d,_0x4b70b3[_0x553d('0x40')]);var _0x403f4a={'where':_0x35a77d[_0x553d('0x3d')]};return db[_0x553d('0x2f')][_0x553d('0x22')](_0x403f4a)['then'](function(_0x431fdb){_0x615816[_0x553d('0x22')]=_0x431fdb;if(_0x4b70b3['query'][_0x553d('0x41')]){_0x35a77d[_0x553d('0x42')]=[{'all':!![]}];}return db['VoiceChanSpy'][_0x553d('0x43')](_0x35a77d);})[_0x553d('0x28')](function(_0x40bc7a){_0x615816[_0x553d('0x44')]=_0x40bc7a;return _0x615816;})[_0x553d('0x28')](respondWithFilteredResult(_0x174fea,_0x35a77d))[_0x553d('0x45')](handleError(_0x174fea,null));};exports['show']=function(_0xb0f66e,_0x15426f){var _0x13d2e9={'raw':![],'where':{'id':_0xb0f66e[_0x553d('0x46')]['id']}},_0x5d300e={};_0x5d300e[_0x553d('0x34')]=_['keys'](db[_0x553d('0x2f')][_0x553d('0x30')]);_0x5d300e[_0x553d('0x35')]=_[_0x553d('0x36')](_0xb0f66e[_0x553d('0x35')]);_0x5d300e[_0x553d('0x37')]=_[_0x553d('0x38')](_0x5d300e[_0x553d('0x34')],_0x5d300e[_0x553d('0x35')]);_0x13d2e9['attributes']=_[_0x553d('0x38')](_0x5d300e['model'],qs[_0x553d('0x3a')](_0xb0f66e['query'][_0x553d('0x3a')]));_0x13d2e9[_0x553d('0x39')]=_0x13d2e9['attributes'][_0x553d('0x47')]?_0x13d2e9[_0x553d('0x39')]:_0x5d300e[_0x553d('0x34')];if(_0xb0f66e[_0x553d('0x35')][_0x553d('0x41')]){_0x13d2e9['include']=[{'all':!![]}];}_0x13d2e9=_[_0x553d('0x3f')]({},_0x13d2e9,_0xb0f66e['options']);return db[_0x553d('0x2f')][_0x553d('0x48')](_0x13d2e9)[_0x553d('0x28')](handleEntityNotFound(_0x15426f,null))[_0x553d('0x28')](respondWithResult(_0x15426f,null))[_0x553d('0x45')](handleError(_0x15426f,null));};exports[_0x553d('0x49')]=function(_0xb6b182,_0x29259a){return db[_0x553d('0x2f')][_0x553d('0x49')](_0xb6b182[_0x553d('0x4a')],{})[_0x553d('0x28')](function(_0x1c176f){var _0x300f0f=_0xb6b182[_0x553d('0x4b')][_0x553d('0x4c')]({'plain':!![]});if(!_0x300f0f)throw new Error(_0x553d('0x4d'));if(_0x300f0f['role']===_0x553d('0x4b')){var _0x1ed718=_0x1c176f[_0x553d('0x4c')]({'plain':!![]});var _0x2e63cd='ChanSpies';return db['UserProfileSection'][_0x553d('0x48')]({'where':{'name':_0x2e63cd,'userProfileId':_0x300f0f[_0x553d('0x4e')]},'raw':!![]})[_0x553d('0x28')](function(_0x30cb25){if(_0x30cb25&&_0x30cb25[_0x553d('0x4f')]===0x0){return db[_0x553d('0x2a')][_0x553d('0x49')]({'name':_0x1ed718[_0x553d('0x2c')],'resourceId':_0x1ed718['id'],'type':_0x30cb25[_0x553d('0x2c')],'sectionId':_0x30cb25['id']},{})['then'](function(){return _0x1c176f;});}else{return _0x1c176f;}})[_0x553d('0x45')](function(_0xec2dff){logger[_0x553d('0x2b')](_0x553d('0x50'),_0xec2dff);throw _0xec2dff;});}return _0x1c176f;})['then'](respondWithResult(_0x29259a,0xc9))['catch'](handleError(_0x29259a,null));};exports[_0x553d('0x51')]=function(_0x433c1e,_0x3d04e8){if(_0x433c1e[_0x553d('0x4a')]['id']){delete _0x433c1e[_0x553d('0x4a')]['id'];}return db[_0x553d('0x2f')][_0x553d('0x48')]({'where':{'id':_0x433c1e[_0x553d('0x46')]['id']}})['then'](handleEntityNotFound(_0x3d04e8,null))[_0x553d('0x28')](saveUpdates(_0x433c1e['body'],null))[_0x553d('0x28')](respondWithResult(_0x3d04e8,null))['catch'](handleError(_0x3d04e8,null));};exports[_0x553d('0x29')]=function(_0x50489f,_0x543103){return db[_0x553d('0x2f')][_0x553d('0x48')]({'where':{'id':_0x50489f['params']['id']}})[_0x553d('0x28')](handleEntityNotFound(_0x543103,null))[_0x553d('0x28')](removeEntity(_0x543103,null))[_0x553d('0x45')](handleError(_0x543103,null));};