Built motion from commit (unavailable).|2.5.3
[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 _0xd752=['lodash','crypto','desk.js','querystring','papaparse','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','sendStatus','status','end','count','offset','limit','Content-Range','apply','reject','update','then','destroy','ChanSpies','UserProfileResource','error','stack','name','send','index','map','rawAttributes','fieldName','type','key','model','filters','intersection','query','attributes','fields','length','hasOwnProperty','order','sort','where','pick','filter','merge','options','VoiceChanSpy','includeAll','include','findAll','catch','show','keys','find','create','body','user','get','Unable\x20to\x20retrieve\x20the\x20current\x20user','userProfileId','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','params','html-pdf','eml-format','zip-dir','request-promise','moment','util','path','sox','to-csv','ejs'];(function(_0x2b7675,_0x5969c9){var _0x4c4f97=function(_0x233188){while(--_0x233188){_0x2b7675['push'](_0x2b7675['shift']());}};_0x4c4f97(++_0x5969c9);}(_0xd752,0x92));var _0x2d75=function(_0x5bce33,_0x4a4b06){_0x5bce33=_0x5bce33-0x0;var _0x15bc20=_0xd752[_0x5bce33];return _0x15bc20;};'use strict';var pdf=require(_0x2d75('0x0'));var emlformat=require(_0x2d75('0x1'));var rimraf=require('rimraf');var zipdir=require(_0x2d75('0x2'));var jsonpatch=require('fast-json-patch');var rp=require(_0x2d75('0x3'));var moment=require(_0x2d75('0x4'));var BPromise=require('bluebird');var Mustache=require('mustache');var util=require(_0x2d75('0x5'));var path=require(_0x2d75('0x6'));var sox=require(_0x2d75('0x7'));var csv=require(_0x2d75('0x8'));var ejs=require(_0x2d75('0x9'));var fs=require('fs');var _=require(_0x2d75('0xa'));var squel=require('squel');var crypto=require(_0x2d75('0xb'));var jsforce=require('jsforce');var deskjs=require(_0x2d75('0xc'));var toCsv=require('to-csv');var querystring=require(_0x2d75('0xd'));var Papa=require(_0x2d75('0xe'));var Redis=require('ioredis');var authService=require('../../components/auth/service');var qs=require(_0x2d75('0xf'));var as=require(_0x2d75('0x10'));var hardwareService=require('../../config/license/hardware');var logger=require(_0x2d75('0x11'))(_0x2d75('0x12'));var utils=require(_0x2d75('0x13'));var config=require(_0x2d75('0x14'));var db=require(_0x2d75('0x15'))['db'];function respondWithStatusCode(_0xb104b5,_0x5dc398){_0x5dc398=_0x5dc398||0xcc;return function(_0x455034){if(_0x455034){return _0xb104b5[_0x2d75('0x16')](_0x5dc398);}return _0xb104b5[_0x2d75('0x17')](_0x5dc398)[_0x2d75('0x18')]();};}function respondWithResult(_0x57690a,_0x59fa5e){_0x59fa5e=_0x59fa5e||0xc8;return function(_0x3cbf44){if(_0x3cbf44){return _0x57690a['status'](_0x59fa5e)['json'](_0x3cbf44);}};}function respondWithFilteredResult(_0x5d0594,_0x241daf){return function(_0x468a93){if(_0x468a93){var _0x400e8c=_0x468a93[_0x2d75('0x19')],_0x108010=_0x241daf[_0x2d75('0x1a')],_0x50407c=_0x241daf[_0x2d75('0x1a')]+_0x241daf[_0x2d75('0x1b')],_0x1190f6;if(_0x50407c>=_0x400e8c){_0x50407c=_0x400e8c;_0x1190f6=0xc8;}else{_0x1190f6=0xce;}_0x5d0594[_0x2d75('0x17')](_0x1190f6);return _0x5d0594['set'](_0x2d75('0x1c'),_0x108010+'-'+_0x50407c+'/'+_0x400e8c)['json'](_0x468a93);}return null;};}function patchUpdates(_0x24df2f){return function(_0x567bf1){try{jsonpatch[_0x2d75('0x1d')](_0x567bf1,_0x24df2f,!![]);}catch(_0xda837f){return BPromise[_0x2d75('0x1e')](_0xda837f);}return _0x567bf1['save']();};}function saveUpdates(_0x21a487,_0x403a72){return function(_0x2deb75){if(_0x2deb75){return _0x2deb75[_0x2d75('0x1f')](_0x21a487)[_0x2d75('0x20')](function(_0x278f17){return _0x278f17;});}return null;};}function removeEntity(_0x3b06d7,_0x36b9c5){return function(_0x1a5ee2){if(_0x1a5ee2){return _0x1a5ee2[_0x2d75('0x21')]()[_0x2d75('0x20')](function(){var _0x52d5d3=_0x1a5ee2['get']({'plain':!![]});var _0x4160a3=_0x2d75('0x22');return db[_0x2d75('0x23')][_0x2d75('0x21')]({'where':{'type':_0x4160a3,'resourceId':_0x52d5d3['id']}})[_0x2d75('0x20')](function(){return _0x1a5ee2;});})[_0x2d75('0x20')](function(){_0x3b06d7[_0x2d75('0x17')](0xcc)[_0x2d75('0x18')]();});}};}function handleEntityNotFound(_0x1559c7,_0x13e198){return function(_0x15e3d9){if(!_0x15e3d9){_0x1559c7[_0x2d75('0x16')](0x194);}return _0x15e3d9;};}function handleError(_0x156e2d,_0x23303a){_0x23303a=_0x23303a||0x1f4;return function(_0x3d2017){logger[_0x2d75('0x24')](_0x3d2017[_0x2d75('0x25')]);if(_0x3d2017['name']){delete _0x3d2017[_0x2d75('0x26')];}_0x156e2d[_0x2d75('0x17')](_0x23303a)[_0x2d75('0x27')](_0x3d2017);};}exports[_0x2d75('0x28')]=function(_0x453447,_0x99152d){var _0x15da9e={},_0x89fc59={},_0x54e488={'count':0x0,'rows':[]};var _0x979050=_[_0x2d75('0x29')](db['VoiceChanSpy'][_0x2d75('0x2a')],function(_0x3a2cf7){return{'name':_0x3a2cf7[_0x2d75('0x2b')],'type':_0x3a2cf7[_0x2d75('0x2c')][_0x2d75('0x2d')]};});_0x89fc59[_0x2d75('0x2e')]=_[_0x2d75('0x29')](_0x979050,_0x2d75('0x26'));_0x89fc59['query']=_['keys'](_0x453447['query']);_0x89fc59[_0x2d75('0x2f')]=_[_0x2d75('0x30')](_0x89fc59['model'],_0x89fc59[_0x2d75('0x31')]);_0x15da9e[_0x2d75('0x32')]=_[_0x2d75('0x30')](_0x89fc59[_0x2d75('0x2e')],qs[_0x2d75('0x33')](_0x453447['query'][_0x2d75('0x33')]));_0x15da9e[_0x2d75('0x32')]=_0x15da9e[_0x2d75('0x32')][_0x2d75('0x34')]?_0x15da9e['attributes']:_0x89fc59[_0x2d75('0x2e')];if(!_0x453447[_0x2d75('0x31')][_0x2d75('0x35')]('nolimit')){_0x15da9e[_0x2d75('0x1b')]=qs[_0x2d75('0x1b')](_0x453447['query'][_0x2d75('0x1b')]);_0x15da9e['offset']=qs['offset'](_0x453447[_0x2d75('0x31')][_0x2d75('0x1a')]);}_0x15da9e[_0x2d75('0x36')]=qs[_0x2d75('0x37')](_0x453447[_0x2d75('0x31')][_0x2d75('0x37')]);_0x15da9e[_0x2d75('0x38')]=qs[_0x2d75('0x2f')](_[_0x2d75('0x39')](_0x453447['query'],_0x89fc59[_0x2d75('0x2f')]),_0x979050);if(_0x453447[_0x2d75('0x31')][_0x2d75('0x3a')]){_0x15da9e[_0x2d75('0x38')]=_[_0x2d75('0x3b')](_0x15da9e[_0x2d75('0x38')],{'$or':_[_0x2d75('0x29')](_0x979050,function(_0x95604f){if(_0x95604f[_0x2d75('0x2c')]!=='VIRTUAL'){var _0xdeac88={};_0xdeac88[_0x95604f[_0x2d75('0x26')]]={'$like':'%'+_0x453447[_0x2d75('0x31')][_0x2d75('0x3a')]+'%'};return _0xdeac88;}})});}_0x15da9e=_[_0x2d75('0x3b')]({},_0x15da9e,_0x453447[_0x2d75('0x3c')]);var _0x16bf0f={'where':_0x15da9e[_0x2d75('0x38')]};return db[_0x2d75('0x3d')][_0x2d75('0x19')](_0x16bf0f)[_0x2d75('0x20')](function(_0x1891e2){_0x54e488[_0x2d75('0x19')]=_0x1891e2;if(_0x453447['query'][_0x2d75('0x3e')]){_0x15da9e[_0x2d75('0x3f')]=[{'all':!![]}];}return db[_0x2d75('0x3d')][_0x2d75('0x40')](_0x15da9e);})[_0x2d75('0x20')](function(_0x32a494){_0x54e488['rows']=_0x32a494;return _0x54e488;})[_0x2d75('0x20')](respondWithFilteredResult(_0x99152d,_0x15da9e))[_0x2d75('0x41')](handleError(_0x99152d,null));};exports[_0x2d75('0x42')]=function(_0x6da36c,_0x16f85e){var _0x626cb2={'raw':![],'where':{'id':_0x6da36c['params']['id']}},_0x50c204={};_0x50c204[_0x2d75('0x2e')]=_[_0x2d75('0x43')](db[_0x2d75('0x3d')][_0x2d75('0x2a')]);_0x50c204[_0x2d75('0x31')]=_[_0x2d75('0x43')](_0x6da36c[_0x2d75('0x31')]);_0x50c204['filters']=_['intersection'](_0x50c204[_0x2d75('0x2e')],_0x50c204['query']);_0x626cb2[_0x2d75('0x32')]=_[_0x2d75('0x30')](_0x50c204[_0x2d75('0x2e')],qs[_0x2d75('0x33')](_0x6da36c[_0x2d75('0x31')][_0x2d75('0x33')]));_0x626cb2[_0x2d75('0x32')]=_0x626cb2['attributes'][_0x2d75('0x34')]?_0x626cb2[_0x2d75('0x32')]:_0x50c204[_0x2d75('0x2e')];if(_0x6da36c['query'][_0x2d75('0x3e')]){_0x626cb2[_0x2d75('0x3f')]=[{'all':!![]}];}_0x626cb2=_[_0x2d75('0x3b')]({},_0x626cb2,_0x6da36c[_0x2d75('0x3c')]);return db['VoiceChanSpy'][_0x2d75('0x44')](_0x626cb2)[_0x2d75('0x20')](handleEntityNotFound(_0x16f85e,null))['then'](respondWithResult(_0x16f85e,null))[_0x2d75('0x41')](handleError(_0x16f85e,null));};exports[_0x2d75('0x45')]=function(_0x2ea0e9,_0x38bb2b){return db[_0x2d75('0x3d')][_0x2d75('0x45')](_0x2ea0e9[_0x2d75('0x46')],{})[_0x2d75('0x20')](function(_0x144240){var _0x5b7446=_0x2ea0e9[_0x2d75('0x47')][_0x2d75('0x48')]({'plain':!![]});if(!_0x5b7446)throw new Error(_0x2d75('0x49'));if(_0x5b7446['role']===_0x2d75('0x47')){var _0x41f0cb=_0x144240[_0x2d75('0x48')]({'plain':!![]});var _0x5a7ae7=_0x2d75('0x22');return db['UserProfileSection'][_0x2d75('0x44')]({'where':{'name':_0x5a7ae7,'userProfileId':_0x5b7446[_0x2d75('0x4a')]},'raw':!![]})[_0x2d75('0x20')](function(_0x36c935){if(_0x36c935&&_0x36c935[_0x2d75('0x4b')]===0x0){return db[_0x2d75('0x23')][_0x2d75('0x45')]({'name':_0x41f0cb[_0x2d75('0x26')],'resourceId':_0x41f0cb['id'],'type':_0x36c935['name'],'sectionId':_0x36c935['id']},{})[_0x2d75('0x20')](function(){return _0x144240;});}else{return _0x144240;}})[_0x2d75('0x41')](function(_0x5721f6){logger[_0x2d75('0x24')](_0x2d75('0x4c'),_0x5721f6);throw _0x5721f6;});}return _0x144240;})['then'](respondWithResult(_0x38bb2b,0xc9))[_0x2d75('0x41')](handleError(_0x38bb2b,null));};exports[_0x2d75('0x1f')]=function(_0x5dbd19,_0x198771){if(_0x5dbd19[_0x2d75('0x46')]['id']){delete _0x5dbd19[_0x2d75('0x46')]['id'];}return db[_0x2d75('0x3d')]['find']({'where':{'id':_0x5dbd19[_0x2d75('0x4d')]['id']}})[_0x2d75('0x20')](handleEntityNotFound(_0x198771,null))[_0x2d75('0x20')](saveUpdates(_0x5dbd19[_0x2d75('0x46')],null))[_0x2d75('0x20')](respondWithResult(_0x198771,null))[_0x2d75('0x41')](handleError(_0x198771,null));};exports['destroy']=function(_0x1681d5,_0x5c879d){return db[_0x2d75('0x3d')]['find']({'where':{'id':_0x1681d5[_0x2d75('0x4d')]['id']}})[_0x2d75('0x20')](handleEntityNotFound(_0x5c879d,null))[_0x2d75('0x20')](removeEntity(_0x5c879d,null))['catch'](handleError(_0x5c879d,null));};