8b4c7dfcd5462b08fdfc4569f884df2acbb05666
[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 _0x55e5=['find','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','update','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','sox','ejs','fs-extra','squel','crypto','jsforce','desk.js','to-csv','papaparse','ioredis','../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/license/util','../../mysqldb','sendStatus','end','offset','undefined','count','limit','status','set','Content-Range','json','reject','save','then','destroy','get','ChanSpies','UserProfileResource','error','stack','name','send','merge','body','contact','message','agent','interaction','account','index','VoiceChanSpy','rawAttributes','fieldName','type','key','model','query','keys','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','pick','filter','map','VIRTUAL','options','includeAll','findAll','rows','catch','show','params','filters','include','create','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','user','UserProfileSection'];(function(_0x4aec0a,_0x165dc4){var _0x51230a=function(_0x2a0409){while(--_0x2a0409){_0x4aec0a['push'](_0x4aec0a['shift']());}};_0x51230a(++_0x165dc4);}(_0x55e5,0x17b));var _0x555e=function(_0x1513bf,_0x4c4d7b){_0x1513bf=_0x1513bf-0x0;var _0x3cb4b8=_0x55e5[_0x1513bf];return _0x3cb4b8;};'use strict';var emlformat=require(_0x555e('0x0'));var rimraf=require(_0x555e('0x1'));var zipdir=require(_0x555e('0x2'));var jsonpatch=require(_0x555e('0x3'));var rp=require(_0x555e('0x4'));var moment=require(_0x555e('0x5'));var BPromise=require(_0x555e('0x6'));var Mustache=require(_0x555e('0x7'));var util=require(_0x555e('0x8'));var path=require(_0x555e('0x9'));var sox=require(_0x555e('0xa'));var csv=require('to-csv');var ejs=require(_0x555e('0xb'));var fs=require('fs');var fs_extra=require(_0x555e('0xc'));var _=require('lodash');var squel=require(_0x555e('0xd'));var crypto=require(_0x555e('0xe'));var jsforce=require(_0x555e('0xf'));var deskjs=require(_0x555e('0x10'));var toCsv=require(_0x555e('0x11'));var querystring=require('querystring');var Papa=require(_0x555e('0x12'));var Redis=require(_0x555e('0x13'));var authService=require('../../components/auth/service');var qs=require(_0x555e('0x14'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x555e('0x15'));var logger=require(_0x555e('0x16'))(_0x555e('0x17'));var utils=require(_0x555e('0x18'));var config=require('../../config/environment');var licenseUtil=require(_0x555e('0x19'));var db=require(_0x555e('0x1a'))['db'];function respondWithStatusCode(_0x5c6090,_0x1e36fd){_0x1e36fd=_0x1e36fd||0xcc;return function(_0x49d94f){if(_0x49d94f){return _0x5c6090[_0x555e('0x1b')](_0x1e36fd);}return _0x5c6090['status'](_0x1e36fd)[_0x555e('0x1c')]();};}function respondWithResult(_0x4c4660,_0xb74796){_0xb74796=_0xb74796||0xc8;return function(_0x5cd310){if(_0x5cd310){return _0x4c4660['status'](_0xb74796)['json'](_0x5cd310);}};}function respondWithFilteredResult(_0x3fec36,_0x470cb8){return function(_0x5d3906){if(_0x5d3906){var _0x53aa65=typeof _0x470cb8[_0x555e('0x1d')]===_0x555e('0x1e')&&typeof _0x470cb8['limit']===_0x555e('0x1e');var _0x1e6006=_0x5d3906[_0x555e('0x1f')];var _0xf6e0e=_0x53aa65?0x0:_0x470cb8['offset'];var _0x261a01=_0x53aa65?_0x5d3906[_0x555e('0x1f')]:_0x470cb8[_0x555e('0x1d')]+_0x470cb8[_0x555e('0x20')];var _0x13db63;if(_0x261a01>=_0x1e6006){_0x261a01=_0x1e6006;_0x13db63=0xc8;}else{_0x13db63=0xce;}_0x3fec36[_0x555e('0x21')](_0x13db63);return _0x3fec36[_0x555e('0x22')](_0x555e('0x23'),_0xf6e0e+'-'+_0x261a01+'/'+_0x1e6006)[_0x555e('0x24')](_0x5d3906);}return null;};}function patchUpdates(_0x3a91f2){return function(_0x39cb1e){try{jsonpatch['apply'](_0x39cb1e,_0x3a91f2,!![]);}catch(_0xaad730){return BPromise[_0x555e('0x25')](_0xaad730);}return _0x39cb1e[_0x555e('0x26')]();};}function saveUpdates(_0x38a26d,_0x55d14e){return function(_0x1438ce){if(_0x1438ce){return _0x1438ce['update'](_0x38a26d)[_0x555e('0x27')](function(_0xa83756){return _0xa83756;});}return null;};}function removeEntity(_0x3a1763,_0x26bffc){return function(_0x1cae28){if(_0x1cae28){return _0x1cae28[_0x555e('0x28')]()[_0x555e('0x27')](function(){var _0xf4b136=_0x1cae28[_0x555e('0x29')]({'plain':!![]});var _0x5756f0=_0x555e('0x2a');return db[_0x555e('0x2b')][_0x555e('0x28')]({'where':{'type':_0x5756f0,'resourceId':_0xf4b136['id']}})['then'](function(){return _0x1cae28;});})[_0x555e('0x27')](function(){_0x3a1763[_0x555e('0x21')](0xcc)['end']();});}};}function handleEntityNotFound(_0x22fd98,_0x10bfbc){return function(_0x47f1c5){if(!_0x47f1c5){_0x22fd98[_0x555e('0x1b')](0x194);}return _0x47f1c5;};}function handleError(_0x860068,_0x5cade6){_0x5cade6=_0x5cade6||0x1f4;return function(_0x5244ea){logger[_0x555e('0x2c')](_0x5244ea[_0x555e('0x2d')]);if(_0x5244ea[_0x555e('0x2e')]){delete _0x5244ea[_0x555e('0x2e')];}_0x860068['status'](_0x5cade6)[_0x555e('0x2f')](_0x5244ea);};}function getMustacheRender(_0x23cf0e,_0x41e6d9){return Mustache['render'](_0x23cf0e,_[_0x555e('0x30')](_0x41e6d9[_0x555e('0x31')],{'contact':_0x41e6d9[_0x555e('0x32')],'message':_0x41e6d9[_0x555e('0x33')],'agent':_0x41e6d9[_0x555e('0x34')],'interaction':_0x41e6d9[_0x555e('0x35')],'account':_0x41e6d9[_0x555e('0x36')]}))||'';}exports[_0x555e('0x37')]=function(_0x201da9,_0x2f08de){var _0x538911={},_0x2cce88={},_0x3869b1={'count':0x0,'rows':[]};var _0x3cc363=_['map'](db[_0x555e('0x38')][_0x555e('0x39')],function(_0x2f9fd9){return{'name':_0x2f9fd9[_0x555e('0x3a')],'type':_0x2f9fd9[_0x555e('0x3b')][_0x555e('0x3c')]};});_0x2cce88[_0x555e('0x3d')]=_['map'](_0x3cc363,_0x555e('0x2e'));_0x2cce88[_0x555e('0x3e')]=_[_0x555e('0x3f')](_0x201da9['query']);_0x2cce88['filters']=_[_0x555e('0x40')](_0x2cce88[_0x555e('0x3d')],_0x2cce88['query']);_0x538911[_0x555e('0x41')]=_[_0x555e('0x40')](_0x2cce88[_0x555e('0x3d')],qs[_0x555e('0x42')](_0x201da9[_0x555e('0x3e')]['fields']));_0x538911['attributes']=_0x538911[_0x555e('0x41')][_0x555e('0x43')]?_0x538911[_0x555e('0x41')]:_0x2cce88[_0x555e('0x3d')];if(!_0x201da9[_0x555e('0x3e')][_0x555e('0x44')](_0x555e('0x45'))){_0x538911[_0x555e('0x20')]=qs['limit'](_0x201da9[_0x555e('0x3e')][_0x555e('0x20')]);_0x538911[_0x555e('0x1d')]=qs['offset'](_0x201da9[_0x555e('0x3e')][_0x555e('0x1d')]);}_0x538911[_0x555e('0x46')]=qs[_0x555e('0x47')](_0x201da9[_0x555e('0x3e')][_0x555e('0x47')]);_0x538911[_0x555e('0x48')]=qs['filters'](_[_0x555e('0x49')](_0x201da9[_0x555e('0x3e')],_0x2cce88['filters']),_0x3cc363);if(_0x201da9[_0x555e('0x3e')][_0x555e('0x4a')]){_0x538911[_0x555e('0x48')]=_[_0x555e('0x30')](_0x538911[_0x555e('0x48')],{'$or':_[_0x555e('0x4b')](_0x3cc363,function(_0x3d7aca){if(_0x3d7aca[_0x555e('0x3b')]!==_0x555e('0x4c')){var _0x15693d={};_0x15693d[_0x3d7aca[_0x555e('0x2e')]]={'$like':'%'+_0x201da9[_0x555e('0x3e')][_0x555e('0x4a')]+'%'};return _0x15693d;}})});}_0x538911=_[_0x555e('0x30')]({},_0x538911,_0x201da9[_0x555e('0x4d')]);var _0x34c537={'where':_0x538911[_0x555e('0x48')]};return db[_0x555e('0x38')][_0x555e('0x1f')](_0x34c537)[_0x555e('0x27')](function(_0x1c1a9b){_0x3869b1[_0x555e('0x1f')]=_0x1c1a9b;if(_0x201da9[_0x555e('0x3e')][_0x555e('0x4e')]){_0x538911['include']=[{'all':!![]}];}return db[_0x555e('0x38')][_0x555e('0x4f')](_0x538911);})[_0x555e('0x27')](function(_0x3ac53a){_0x3869b1[_0x555e('0x50')]=_0x3ac53a;return _0x3869b1;})[_0x555e('0x27')](respondWithFilteredResult(_0x2f08de,_0x538911))[_0x555e('0x51')](handleError(_0x2f08de,null));};exports[_0x555e('0x52')]=function(_0x3f6f02,_0x3270da){var _0x9772a={'raw':![],'where':{'id':_0x3f6f02[_0x555e('0x53')]['id']}},_0x81d290={};_0x81d290[_0x555e('0x3d')]=_[_0x555e('0x3f')](db[_0x555e('0x38')][_0x555e('0x39')]);_0x81d290[_0x555e('0x3e')]=_['keys'](_0x3f6f02['query']);_0x81d290[_0x555e('0x54')]=_[_0x555e('0x40')](_0x81d290['model'],_0x81d290[_0x555e('0x3e')]);_0x9772a[_0x555e('0x41')]=_[_0x555e('0x40')](_0x81d290[_0x555e('0x3d')],qs[_0x555e('0x42')](_0x3f6f02[_0x555e('0x3e')]['fields']));_0x9772a['attributes']=_0x9772a[_0x555e('0x41')][_0x555e('0x43')]?_0x9772a['attributes']:_0x81d290[_0x555e('0x3d')];if(_0x3f6f02[_0x555e('0x3e')][_0x555e('0x4e')]){_0x9772a[_0x555e('0x55')]=[{'all':!![]}];}_0x9772a=_[_0x555e('0x30')]({},_0x9772a,_0x3f6f02[_0x555e('0x4d')]);return db[_0x555e('0x38')]['find'](_0x9772a)['then'](handleEntityNotFound(_0x3270da,null))['then'](respondWithResult(_0x3270da,null))[_0x555e('0x51')](handleError(_0x3270da,null));};exports[_0x555e('0x56')]=function(_0x300b5f,_0x293593){return db[_0x555e('0x38')][_0x555e('0x56')](_0x300b5f[_0x555e('0x31')],{})['then'](function(_0x4317ed){var _0x3040ae=_0x300b5f['user'][_0x555e('0x29')]({'plain':!![]});if(!_0x3040ae)throw new Error(_0x555e('0x57'));if(_0x3040ae[_0x555e('0x58')]===_0x555e('0x59')){var _0x5be5b3=_0x4317ed[_0x555e('0x29')]({'plain':!![]});var _0x363001=_0x555e('0x2a');return db[_0x555e('0x5a')][_0x555e('0x5b')]({'where':{'name':_0x363001,'userProfileId':_0x3040ae['userProfileId']},'raw':!![]})['then'](function(_0x20c928){if(_0x20c928&&_0x20c928['autoAssociation']===0x0){return db[_0x555e('0x2b')][_0x555e('0x56')]({'name':_0x5be5b3[_0x555e('0x2e')],'resourceId':_0x5be5b3['id'],'type':_0x20c928[_0x555e('0x2e')],'sectionId':_0x20c928['id']},{})[_0x555e('0x27')](function(){return _0x4317ed;});}else{return _0x4317ed;}})[_0x555e('0x51')](function(_0x466dde){logger['error'](_0x555e('0x5c'),_0x466dde);throw _0x466dde;});}return _0x4317ed;})[_0x555e('0x27')](respondWithResult(_0x293593,0xc9))[_0x555e('0x51')](handleError(_0x293593,null));};exports[_0x555e('0x5d')]=function(_0x4f1dc3,_0x340d31){if(_0x4f1dc3[_0x555e('0x31')]['id']){delete _0x4f1dc3[_0x555e('0x31')]['id'];}return db['VoiceChanSpy'][_0x555e('0x5b')]({'where':{'id':_0x4f1dc3[_0x555e('0x53')]['id']}})['then'](handleEntityNotFound(_0x340d31,null))[_0x555e('0x27')](saveUpdates(_0x4f1dc3[_0x555e('0x31')],null))[_0x555e('0x27')](respondWithResult(_0x340d31,null))[_0x555e('0x51')](handleError(_0x340d31,null));};exports[_0x555e('0x28')]=function(_0x4198e4,_0x4db68c){return db[_0x555e('0x38')][_0x555e('0x5b')]({'where':{'id':_0x4198e4[_0x555e('0x53')]['id']}})[_0x555e('0x27')](handleEntityNotFound(_0x4db68c,null))[_0x555e('0x27')](removeEntity(_0x4db68c,null))[_0x555e('0x51')](handleError(_0x4db68c,null));};