Built motion from commit (unavailable).|2.5.8
[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 _0x3152=['status','end','json','count','offset','limit','set','apply','reject','save','update','destroy','then','get','ChanSpies','error','name','send','index','map','VoiceChanSpy','rawAttributes','fieldName','type','model','keys','query','filters','intersection','attributes','fields','length','nolimit','sort','filter','where','VIRTUAL','merge','options','include','findAll','rows','show','params','includeAll','find','catch','create','body','user','role','UserProfileSection','userProfileId','autoAssociation','UserProfileResource','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','html-pdf','eml-format','rimraf','fast-json-patch','request-promise','moment','bluebird','mustache','path','sox','to-csv','ejs','lodash','squel','crypto','jsforce','desk.js','querystring','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/logger','../../config/environment','../../mysqldb','sendStatus'];(function(_0x445267,_0x1ef6a1){var _0x274c02=function(_0x382edb){while(--_0x382edb){_0x445267['push'](_0x445267['shift']());}};_0x274c02(++_0x1ef6a1);}(_0x3152,0xdc));var _0x2315=function(_0x321bb2,_0x202794){_0x321bb2=_0x321bb2-0x0;var _0x9c12ed=_0x3152[_0x321bb2];return _0x9c12ed;};'use strict';var pdf=require(_0x2315('0x0'));var emlformat=require(_0x2315('0x1'));var rimraf=require(_0x2315('0x2'));var zipdir=require('zip-dir');var jsonpatch=require(_0x2315('0x3'));var rp=require(_0x2315('0x4'));var moment=require(_0x2315('0x5'));var BPromise=require(_0x2315('0x6'));var Mustache=require(_0x2315('0x7'));var util=require('util');var path=require(_0x2315('0x8'));var sox=require(_0x2315('0x9'));var csv=require(_0x2315('0xa'));var ejs=require(_0x2315('0xb'));var fs=require('fs');var _=require(_0x2315('0xc'));var squel=require(_0x2315('0xd'));var crypto=require(_0x2315('0xe'));var jsforce=require(_0x2315('0xf'));var deskjs=require(_0x2315('0x10'));var toCsv=require(_0x2315('0xa'));var querystring=require(_0x2315('0x11'));var Papa=require('papaparse');var Redis=require(_0x2315('0x12'));var authService=require(_0x2315('0x13'));var qs=require(_0x2315('0x14'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x2315('0x15'));var logger=require(_0x2315('0x16'))('api');var utils=require('../../config/utils');var config=require(_0x2315('0x17'));var licenseUtil=require('../../config/license/util');var db=require(_0x2315('0x18'))['db'];function respondWithStatusCode(_0x3dd7cd,_0x2b11d1){_0x2b11d1=_0x2b11d1||0xcc;return function(_0x33586c){if(_0x33586c){return _0x3dd7cd[_0x2315('0x19')](_0x2b11d1);}return _0x3dd7cd[_0x2315('0x1a')](_0x2b11d1)[_0x2315('0x1b')]();};}function respondWithResult(_0x3042a0,_0x24f73a){_0x24f73a=_0x24f73a||0xc8;return function(_0x32ccef){if(_0x32ccef){return _0x3042a0[_0x2315('0x1a')](_0x24f73a)[_0x2315('0x1c')](_0x32ccef);}};}function respondWithFilteredResult(_0x152ac5,_0x5b7a2e){return function(_0x7bd666){if(_0x7bd666){var _0x1a8c07=_0x7bd666[_0x2315('0x1d')],_0x24ee28=_0x5b7a2e['offset'],_0x42cca7=_0x5b7a2e[_0x2315('0x1e')]+_0x5b7a2e[_0x2315('0x1f')],_0x90a9d6;if(_0x42cca7>=_0x1a8c07){_0x42cca7=_0x1a8c07;_0x90a9d6=0xc8;}else{_0x90a9d6=0xce;}_0x152ac5[_0x2315('0x1a')](_0x90a9d6);return _0x152ac5[_0x2315('0x20')]('Content-Range',_0x24ee28+'-'+_0x42cca7+'/'+_0x1a8c07)[_0x2315('0x1c')](_0x7bd666);}return null;};}function patchUpdates(_0x326469){return function(_0x421ff5){try{jsonpatch[_0x2315('0x21')](_0x421ff5,_0x326469,!![]);}catch(_0x491fd2){return BPromise[_0x2315('0x22')](_0x491fd2);}return _0x421ff5[_0x2315('0x23')]();};}function saveUpdates(_0x34683e,_0x4e1b18){return function(_0x2caf40){if(_0x2caf40){return _0x2caf40[_0x2315('0x24')](_0x34683e)['then'](function(_0x219d93){return _0x219d93;});}return null;};}function removeEntity(_0x21d5c1,_0x5f4a5a){return function(_0x5157e5){if(_0x5157e5){return _0x5157e5[_0x2315('0x25')]()[_0x2315('0x26')](function(){var _0x289764=_0x5157e5[_0x2315('0x27')]({'plain':!![]});var _0x39d194=_0x2315('0x28');return db['UserProfileResource'][_0x2315('0x25')]({'where':{'type':_0x39d194,'resourceId':_0x289764['id']}})[_0x2315('0x26')](function(){return _0x5157e5;});})[_0x2315('0x26')](function(){_0x21d5c1[_0x2315('0x1a')](0xcc)['end']();});}};}function handleEntityNotFound(_0x2892b6,_0x42c7de){return function(_0x90ed88){if(!_0x90ed88){_0x2892b6[_0x2315('0x19')](0x194);}return _0x90ed88;};}function handleError(_0x18fa65,_0xa865cd){_0xa865cd=_0xa865cd||0x1f4;return function(_0x19bbe5){logger[_0x2315('0x29')](_0x19bbe5['stack']);if(_0x19bbe5[_0x2315('0x2a')]){delete _0x19bbe5[_0x2315('0x2a')];}_0x18fa65[_0x2315('0x1a')](_0xa865cd)[_0x2315('0x2b')](_0x19bbe5);};}exports[_0x2315('0x2c')]=function(_0x3dc4b4,_0x3de45b){var _0x915283={},_0xd2cf9f={},_0x29ae3a={'count':0x0,'rows':[]};var _0x2c8509=_[_0x2315('0x2d')](db[_0x2315('0x2e')][_0x2315('0x2f')],function(_0x296b82){return{'name':_0x296b82[_0x2315('0x30')],'type':_0x296b82[_0x2315('0x31')]['key']};});_0xd2cf9f[_0x2315('0x32')]=_[_0x2315('0x2d')](_0x2c8509,_0x2315('0x2a'));_0xd2cf9f['query']=_[_0x2315('0x33')](_0x3dc4b4[_0x2315('0x34')]);_0xd2cf9f[_0x2315('0x35')]=_[_0x2315('0x36')](_0xd2cf9f['model'],_0xd2cf9f[_0x2315('0x34')]);_0x915283[_0x2315('0x37')]=_['intersection'](_0xd2cf9f[_0x2315('0x32')],qs[_0x2315('0x38')](_0x3dc4b4[_0x2315('0x34')][_0x2315('0x38')]));_0x915283[_0x2315('0x37')]=_0x915283[_0x2315('0x37')][_0x2315('0x39')]?_0x915283[_0x2315('0x37')]:_0xd2cf9f[_0x2315('0x32')];if(!_0x3dc4b4['query']['hasOwnProperty'](_0x2315('0x3a'))){_0x915283[_0x2315('0x1f')]=qs[_0x2315('0x1f')](_0x3dc4b4[_0x2315('0x34')]['limit']);_0x915283[_0x2315('0x1e')]=qs[_0x2315('0x1e')](_0x3dc4b4[_0x2315('0x34')][_0x2315('0x1e')]);}_0x915283['order']=qs[_0x2315('0x3b')](_0x3dc4b4['query']['sort']);_0x915283['where']=qs['filters'](_['pick'](_0x3dc4b4[_0x2315('0x34')],_0xd2cf9f[_0x2315('0x35')]),_0x2c8509);if(_0x3dc4b4['query'][_0x2315('0x3c')]){_0x915283[_0x2315('0x3d')]=_['merge'](_0x915283[_0x2315('0x3d')],{'$or':_[_0x2315('0x2d')](_0x2c8509,function(_0x3f8997){if(_0x3f8997[_0x2315('0x31')]!==_0x2315('0x3e')){var _0x478feb={};_0x478feb[_0x3f8997[_0x2315('0x2a')]]={'$like':'%'+_0x3dc4b4[_0x2315('0x34')][_0x2315('0x3c')]+'%'};return _0x478feb;}})});}_0x915283=_[_0x2315('0x3f')]({},_0x915283,_0x3dc4b4[_0x2315('0x40')]);var _0x126c27={'where':_0x915283[_0x2315('0x3d')]};return db[_0x2315('0x2e')][_0x2315('0x1d')](_0x126c27)[_0x2315('0x26')](function(_0x5253bb){_0x29ae3a[_0x2315('0x1d')]=_0x5253bb;if(_0x3dc4b4[_0x2315('0x34')]['includeAll']){_0x915283[_0x2315('0x41')]=[{'all':!![]}];}return db[_0x2315('0x2e')][_0x2315('0x42')](_0x915283);})[_0x2315('0x26')](function(_0x269341){_0x29ae3a[_0x2315('0x43')]=_0x269341;return _0x29ae3a;})[_0x2315('0x26')](respondWithFilteredResult(_0x3de45b,_0x915283))['catch'](handleError(_0x3de45b,null));};exports[_0x2315('0x44')]=function(_0x8990cb,_0x34d870){var _0x311301={'raw':![],'where':{'id':_0x8990cb[_0x2315('0x45')]['id']}},_0x5bcd51={};_0x5bcd51[_0x2315('0x32')]=_[_0x2315('0x33')](db[_0x2315('0x2e')][_0x2315('0x2f')]);_0x5bcd51['query']=_[_0x2315('0x33')](_0x8990cb['query']);_0x5bcd51[_0x2315('0x35')]=_[_0x2315('0x36')](_0x5bcd51[_0x2315('0x32')],_0x5bcd51[_0x2315('0x34')]);_0x311301[_0x2315('0x37')]=_['intersection'](_0x5bcd51[_0x2315('0x32')],qs[_0x2315('0x38')](_0x8990cb['query'][_0x2315('0x38')]));_0x311301['attributes']=_0x311301[_0x2315('0x37')]['length']?_0x311301[_0x2315('0x37')]:_0x5bcd51['model'];if(_0x8990cb['query'][_0x2315('0x46')]){_0x311301[_0x2315('0x41')]=[{'all':!![]}];}_0x311301=_[_0x2315('0x3f')]({},_0x311301,_0x8990cb['options']);return db[_0x2315('0x2e')][_0x2315('0x47')](_0x311301)[_0x2315('0x26')](handleEntityNotFound(_0x34d870,null))['then'](respondWithResult(_0x34d870,null))[_0x2315('0x48')](handleError(_0x34d870,null));};exports[_0x2315('0x49')]=function(_0x2a609d,_0x4bbe25){return db[_0x2315('0x2e')][_0x2315('0x49')](_0x2a609d[_0x2315('0x4a')],{})['then'](function(_0x5a56c0){var _0x5cb6cb=_0x2a609d[_0x2315('0x4b')][_0x2315('0x27')]({'plain':!![]});if(!_0x5cb6cb)throw new Error('Unable\x20to\x20retrieve\x20the\x20current\x20user');if(_0x5cb6cb[_0x2315('0x4c')]==='user'){var _0x384f2d=_0x5a56c0['get']({'plain':!![]});var _0x2cb0d6=_0x2315('0x28');return db[_0x2315('0x4d')]['find']({'where':{'name':_0x2cb0d6,'userProfileId':_0x5cb6cb[_0x2315('0x4e')]},'raw':!![]})[_0x2315('0x26')](function(_0x500300){if(_0x500300&&_0x500300[_0x2315('0x4f')]===0x0){return db[_0x2315('0x50')][_0x2315('0x49')]({'name':_0x384f2d[_0x2315('0x2a')],'resourceId':_0x384f2d['id'],'type':_0x500300['name'],'sectionId':_0x500300['id']},{})[_0x2315('0x26')](function(){return _0x5a56c0;});}else{return _0x5a56c0;}})['catch'](function(_0x38eb46){logger[_0x2315('0x29')](_0x2315('0x51'),_0x38eb46);throw _0x38eb46;});}return _0x5a56c0;})[_0x2315('0x26')](respondWithResult(_0x4bbe25,0xc9))[_0x2315('0x48')](handleError(_0x4bbe25,null));};exports[_0x2315('0x24')]=function(_0x40bbdf,_0x2cec3f){if(_0x40bbdf[_0x2315('0x4a')]['id']){delete _0x40bbdf[_0x2315('0x4a')]['id'];}return db['VoiceChanSpy']['find']({'where':{'id':_0x40bbdf[_0x2315('0x45')]['id']}})[_0x2315('0x26')](handleEntityNotFound(_0x2cec3f,null))[_0x2315('0x26')](saveUpdates(_0x40bbdf[_0x2315('0x4a')],null))[_0x2315('0x26')](respondWithResult(_0x2cec3f,null))['catch'](handleError(_0x2cec3f,null));};exports[_0x2315('0x25')]=function(_0x2d4ceb,_0x5e2a52){return db[_0x2315('0x2e')]['find']({'where':{'id':_0x2d4ceb[_0x2315('0x45')]['id']}})[_0x2315('0x26')](handleEntityNotFound(_0x5e2a52,null))['then'](removeEntity(_0x5e2a52,null))[_0x2315('0x48')](handleError(_0x5e2a52,null));};