Built motion from commit (unavailable).|2.4.18
[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 _0xc463=['limit','set','json','apply','reject','update','then','destroy','ChanSpies','UserProfileResource','error','stack','send','VoiceChanSpy','rawAttributes','type','key','model','map','name','query','filters','attributes','intersection','fields','length','nolimit','order','sort','where','pick','filter','merge','includeAll','include','findAll','rows','catch','show','params','keys','create','body','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','get','UserProfileSection','find','userProfileId','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','html-pdf','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','util','ejs','lodash','squel','crypto','jsforce','desk.js','to-csv','querystring','papaparse','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/environment','../../mysqldb','sendStatus','status','end','count','offset'];(function(_0x16ecad,_0x205047){var _0x313ff7=function(_0x58b16a){while(--_0x58b16a){_0x16ecad['push'](_0x16ecad['shift']());}};_0x313ff7(++_0x205047);}(_0xc463,0x129));var _0x3c46=function(_0x143ca0,_0x586bd3){_0x143ca0=_0x143ca0-0x0;var _0x11f1c5=_0xc463[_0x143ca0];return _0x11f1c5;};'use strict';var pdf=require(_0x3c46('0x0'));var emlformat=require(_0x3c46('0x1'));var rimraf=require(_0x3c46('0x2'));var zipdir=require(_0x3c46('0x3'));var jsonpatch=require(_0x3c46('0x4'));var rp=require(_0x3c46('0x5'));var moment=require(_0x3c46('0x6'));var BPromise=require(_0x3c46('0x7'));var Mustache=require('mustache');var util=require(_0x3c46('0x8'));var path=require('path');var sox=require('sox');var csv=require('to-csv');var ejs=require(_0x3c46('0x9'));var fs=require('fs');var _=require(_0x3c46('0xa'));var squel=require(_0x3c46('0xb'));var crypto=require(_0x3c46('0xc'));var jsforce=require(_0x3c46('0xd'));var deskjs=require(_0x3c46('0xe'));var toCsv=require(_0x3c46('0xf'));var querystring=require(_0x3c46('0x10'));var Papa=require(_0x3c46('0x11'));var Redis=require(_0x3c46('0x12'));var authService=require('../../components/auth/service');var qs=require(_0x3c46('0x13'));var as=require(_0x3c46('0x14'));var hardwareService=require(_0x3c46('0x15'));var logger=require(_0x3c46('0x16'))(_0x3c46('0x17'));var utils=require('../../config/utils');var config=require(_0x3c46('0x18'));var db=require(_0x3c46('0x19'))['db'];function respondWithStatusCode(_0x57dec4,_0x3526f5){_0x3526f5=_0x3526f5||0xcc;return function(_0x5959d0){if(_0x5959d0){return _0x57dec4[_0x3c46('0x1a')](_0x3526f5);}return _0x57dec4[_0x3c46('0x1b')](_0x3526f5)[_0x3c46('0x1c')]();};}function respondWithResult(_0x195eba,_0x22c24e){_0x22c24e=_0x22c24e||0xc8;return function(_0x2965c7){if(_0x2965c7){return _0x195eba[_0x3c46('0x1b')](_0x22c24e)['json'](_0x2965c7);}};}function respondWithFilteredResult(_0x3d34f1,_0x2ec560){return function(_0x5be5f3){if(_0x5be5f3){var _0x331993=_0x5be5f3[_0x3c46('0x1d')],_0x823e9c=_0x2ec560[_0x3c46('0x1e')],_0x429077=_0x2ec560[_0x3c46('0x1e')]+_0x2ec560[_0x3c46('0x1f')],_0x560dd2;if(_0x429077>=_0x331993){_0x429077=_0x331993;_0x560dd2=0xc8;}else{_0x560dd2=0xce;}_0x3d34f1[_0x3c46('0x1b')](_0x560dd2);return _0x3d34f1[_0x3c46('0x20')]('Content-Range',_0x823e9c+'-'+_0x429077+'/'+_0x331993)[_0x3c46('0x21')](_0x5be5f3);}return null;};}function patchUpdates(_0x2412cf){return function(_0x1dcd48){try{jsonpatch[_0x3c46('0x22')](_0x1dcd48,_0x2412cf,!![]);}catch(_0x43ccaf){return BPromise[_0x3c46('0x23')](_0x43ccaf);}return _0x1dcd48['save']();};}function saveUpdates(_0x4459b,_0x27cd08){return function(_0x12413f){if(_0x12413f){return _0x12413f[_0x3c46('0x24')](_0x4459b)[_0x3c46('0x25')](function(_0x31f3ca){return _0x31f3ca;});}return null;};}function removeEntity(_0xbced8,_0x224705){return function(_0x5930e1){if(_0x5930e1){return _0x5930e1[_0x3c46('0x26')]()['then'](function(){var _0x299af2=_0x5930e1['get']({'plain':!![]});var _0x13e94e=_0x3c46('0x27');return db[_0x3c46('0x28')][_0x3c46('0x26')]({'where':{'type':_0x13e94e,'resourceId':_0x299af2['id']}})['then'](function(){return _0x5930e1;});})[_0x3c46('0x25')](function(){_0xbced8['status'](0xcc)[_0x3c46('0x1c')]();});}};}function handleEntityNotFound(_0x704b9a,_0x48cc45){return function(_0x35003d){if(!_0x35003d){_0x704b9a[_0x3c46('0x1a')](0x194);}return _0x35003d;};}function handleError(_0x59f115,_0x423ef7){_0x423ef7=_0x423ef7||0x1f4;return function(_0x4d7333){logger[_0x3c46('0x29')](_0x4d7333[_0x3c46('0x2a')]);if(_0x4d7333['name']){delete _0x4d7333['name'];}_0x59f115[_0x3c46('0x1b')](_0x423ef7)[_0x3c46('0x2b')](_0x4d7333);};}exports['index']=function(_0x350c09,_0x1207e0){var _0x380f2b={},_0x3a64fb={},_0x45b98e={'count':0x0,'rows':[]};var _0x53defb=_['map'](db[_0x3c46('0x2c')][_0x3c46('0x2d')],function(_0x1c262d){return{'name':_0x1c262d['fieldName'],'type':_0x1c262d[_0x3c46('0x2e')][_0x3c46('0x2f')]};});_0x3a64fb[_0x3c46('0x30')]=_[_0x3c46('0x31')](_0x53defb,_0x3c46('0x32'));_0x3a64fb['query']=_['keys'](_0x350c09[_0x3c46('0x33')]);_0x3a64fb[_0x3c46('0x34')]=_['intersection'](_0x3a64fb[_0x3c46('0x30')],_0x3a64fb['query']);_0x380f2b[_0x3c46('0x35')]=_[_0x3c46('0x36')](_0x3a64fb['model'],qs['fields'](_0x350c09[_0x3c46('0x33')][_0x3c46('0x37')]));_0x380f2b[_0x3c46('0x35')]=_0x380f2b['attributes'][_0x3c46('0x38')]?_0x380f2b[_0x3c46('0x35')]:_0x3a64fb['model'];if(!_0x350c09['query']['hasOwnProperty'](_0x3c46('0x39'))){_0x380f2b['limit']=qs['limit'](_0x350c09[_0x3c46('0x33')][_0x3c46('0x1f')]);_0x380f2b['offset']=qs[_0x3c46('0x1e')](_0x350c09[_0x3c46('0x33')][_0x3c46('0x1e')]);}_0x380f2b[_0x3c46('0x3a')]=qs[_0x3c46('0x3b')](_0x350c09[_0x3c46('0x33')][_0x3c46('0x3b')]);_0x380f2b[_0x3c46('0x3c')]=qs['filters'](_[_0x3c46('0x3d')](_0x350c09[_0x3c46('0x33')],_0x3a64fb[_0x3c46('0x34')]));if(_0x350c09[_0x3c46('0x33')][_0x3c46('0x3e')]){_0x380f2b[_0x3c46('0x3c')]=_[_0x3c46('0x3f')](_0x380f2b[_0x3c46('0x3c')],{'$or':_[_0x3c46('0x31')](_0x53defb,function(_0x331eed){if(_0x331eed[_0x3c46('0x2e')]!=='VIRTUAL'){var _0x42f9f6={};_0x42f9f6[_0x331eed['name']]={'$like':'%'+_0x350c09[_0x3c46('0x33')][_0x3c46('0x3e')]+'%'};return _0x42f9f6;}})});}_0x380f2b=_['merge']({},_0x380f2b,_0x350c09['options']);var _0x222521={'where':_0x380f2b['where']};return db['VoiceChanSpy'][_0x3c46('0x1d')](_0x222521)['then'](function(_0x41cffa){_0x45b98e[_0x3c46('0x1d')]=_0x41cffa;if(_0x350c09['query'][_0x3c46('0x40')]){_0x380f2b[_0x3c46('0x41')]=[{'all':!![]}];}return db[_0x3c46('0x2c')][_0x3c46('0x42')](_0x380f2b);})['then'](function(_0x488435){_0x45b98e[_0x3c46('0x43')]=_0x488435;return _0x45b98e;})[_0x3c46('0x25')](respondWithFilteredResult(_0x1207e0,_0x380f2b))[_0x3c46('0x44')](handleError(_0x1207e0,null));};exports[_0x3c46('0x45')]=function(_0x1631fd,_0x3f9ab3){var _0x39b198={'raw':![],'where':{'id':_0x1631fd[_0x3c46('0x46')]['id']}},_0x448e47={};_0x448e47[_0x3c46('0x30')]=_[_0x3c46('0x47')](db[_0x3c46('0x2c')][_0x3c46('0x2d')]);_0x448e47[_0x3c46('0x33')]=_['keys'](_0x1631fd[_0x3c46('0x33')]);_0x448e47[_0x3c46('0x34')]=_[_0x3c46('0x36')](_0x448e47[_0x3c46('0x30')],_0x448e47[_0x3c46('0x33')]);_0x39b198['attributes']=_['intersection'](_0x448e47['model'],qs[_0x3c46('0x37')](_0x1631fd[_0x3c46('0x33')][_0x3c46('0x37')]));_0x39b198[_0x3c46('0x35')]=_0x39b198[_0x3c46('0x35')]['length']?_0x39b198['attributes']:_0x448e47['model'];if(_0x1631fd['query'][_0x3c46('0x40')]){_0x39b198[_0x3c46('0x41')]=[{'all':!![]}];}_0x39b198=_[_0x3c46('0x3f')]({},_0x39b198,_0x1631fd['options']);return db[_0x3c46('0x2c')]['find'](_0x39b198)[_0x3c46('0x25')](handleEntityNotFound(_0x3f9ab3,null))[_0x3c46('0x25')](respondWithResult(_0x3f9ab3,null))[_0x3c46('0x44')](handleError(_0x3f9ab3,null));};exports['create']=function(_0x995824,_0x1556ec){return db[_0x3c46('0x2c')][_0x3c46('0x48')](_0x995824[_0x3c46('0x49')],{})[_0x3c46('0x25')](function(_0xffa311){var _0x5cdd2b=_0x995824['user']['get']({'plain':!![]});if(!_0x5cdd2b)throw new Error(_0x3c46('0x4a'));if(_0x5cdd2b[_0x3c46('0x4b')]==='user'){var _0x4e8879=_0xffa311[_0x3c46('0x4c')]({'plain':!![]});var _0x40a303=_0x3c46('0x27');return db[_0x3c46('0x4d')][_0x3c46('0x4e')]({'where':{'name':_0x40a303,'userProfileId':_0x5cdd2b[_0x3c46('0x4f')]},'raw':!![]})[_0x3c46('0x25')](function(_0x1122c9){if(_0x1122c9&&_0x1122c9[_0x3c46('0x50')]===0x0){return db[_0x3c46('0x28')][_0x3c46('0x48')]({'name':_0x4e8879[_0x3c46('0x32')],'resourceId':_0x4e8879['id'],'type':_0x1122c9['name'],'sectionId':_0x1122c9['id']},{})['then'](function(){return _0xffa311;});}else{return _0xffa311;}})[_0x3c46('0x44')](function(_0x29e586){logger[_0x3c46('0x29')](_0x3c46('0x51'),_0x29e586);throw _0x29e586;});}return _0xffa311;})['then'](respondWithResult(_0x1556ec,0xc9))[_0x3c46('0x44')](handleError(_0x1556ec,null));};exports[_0x3c46('0x24')]=function(_0xa4d482,_0x2e0cc1){if(_0xa4d482['body']['id']){delete _0xa4d482['body']['id'];}return db[_0x3c46('0x2c')][_0x3c46('0x4e')]({'where':{'id':_0xa4d482[_0x3c46('0x46')]['id']}})['then'](handleEntityNotFound(_0x2e0cc1,null))[_0x3c46('0x25')](saveUpdates(_0xa4d482[_0x3c46('0x49')],null))[_0x3c46('0x25')](respondWithResult(_0x2e0cc1,null))[_0x3c46('0x44')](handleError(_0x2e0cc1,null));};exports[_0x3c46('0x26')]=function(_0x1380c9,_0x266ee2){return db['VoiceChanSpy'][_0x3c46('0x4e')]({'where':{'id':_0x1380c9[_0x3c46('0x46')]['id']}})['then'](handleEntityNotFound(_0x266ee2,null))[_0x3c46('0x25')](removeEntity(_0x266ee2,null))[_0x3c46('0x44')](handleError(_0x266ee2,null));};