Built motion from commit (unavailable).|2.5.29
[motion2.git] / server / api / squareRecording / squareRecording.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 _0xb93b=['attributes','intersection','fields','hasOwnProperty','nolimit','order','sort','where','pick','filter','VIRTUAL','merge','options','includeAll','include','findAll','rows','catch','show','params','find','create','body','../../components/encryptor','uniqueid','filename','existsSync','decryptFile','ValidationError','SquareRecording\x20not\x20found','extname','download','unlink','message','Not\x20found','Entity\x20not\x20found','savePath','isNil','info','\x22\x20trovato\x20eseguo\x20la\x20cancellazione','.cypher','File:\x20\x22','eml-format','rimraf','fast-json-patch','request-promise','moment','bluebird','mustache','path','sox','to-csv','ejs','fs-extra','lodash','squel','crypto','jsforce','desk.js','papaparse','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/license/util','../../mysqldb','sendStatus','status','json','offset','undefined','count','limit','set','Content-Range','apply','reject','save','update','then','destroy','error','stack','name','send','index','map','SquareRecording','rawAttributes','fieldName','type','model','query','keys','filters'];(function(_0x5a7352,_0x5c6f21){var _0x3e5f21=function(_0x337452){while(--_0x337452){_0x5a7352['push'](_0x5a7352['shift']());}};_0x3e5f21(++_0x5c6f21);}(_0xb93b,0x8c));var _0xbb93=function(_0x589f71,_0x212326){_0x589f71=_0x589f71-0x0;var _0x5763bd=_0xb93b[_0x589f71];return _0x5763bd;};'use strict';var emlformat=require(_0xbb93('0x0'));var rimraf=require(_0xbb93('0x1'));var zipdir=require('zip-dir');var jsonpatch=require(_0xbb93('0x2'));var rp=require(_0xbb93('0x3'));var moment=require(_0xbb93('0x4'));var BPromise=require(_0xbb93('0x5'));var Mustache=require(_0xbb93('0x6'));var util=require('util');var path=require(_0xbb93('0x7'));var sox=require(_0xbb93('0x8'));var csv=require(_0xbb93('0x9'));var ejs=require(_0xbb93('0xa'));var fs=require('fs');var fs_extra=require(_0xbb93('0xb'));var _=require(_0xbb93('0xc'));var squel=require(_0xbb93('0xd'));var crypto=require(_0xbb93('0xe'));var jsforce=require(_0xbb93('0xf'));var deskjs=require(_0xbb93('0x10'));var toCsv=require(_0xbb93('0x9'));var querystring=require('querystring');var Papa=require(_0xbb93('0x11'));var Redis=require(_0xbb93('0x12'));var authService=require('../../components/auth/service');var qs=require(_0xbb93('0x13'));var as=require(_0xbb93('0x14'));var hardwareService=require(_0xbb93('0x15'));var logger=require(_0xbb93('0x16'))(_0xbb93('0x17'));var utils=require(_0xbb93('0x18'));var config=require('../../config/environment');var licenseUtil=require(_0xbb93('0x19'));var db=require(_0xbb93('0x1a'))['db'];function respondWithStatusCode(_0x48cc2b,_0x321235){_0x321235=_0x321235||0xcc;return function(_0x1cdfea){if(_0x1cdfea){return _0x48cc2b[_0xbb93('0x1b')](_0x321235);}return _0x48cc2b[_0xbb93('0x1c')](_0x321235)['end']();};}function respondWithResult(_0x327ae8,_0x1485ea){_0x1485ea=_0x1485ea||0xc8;return function(_0x31cc09){if(_0x31cc09){return _0x327ae8[_0xbb93('0x1c')](_0x1485ea)[_0xbb93('0x1d')](_0x31cc09);}};}function respondWithFilteredResult(_0x23c20d,_0x2bba9d){return function(_0x46e881){if(_0x46e881){var _0x472898=typeof _0x2bba9d[_0xbb93('0x1e')]==='undefined'&&typeof _0x2bba9d['limit']===_0xbb93('0x1f');var _0x5c55a0=_0x46e881[_0xbb93('0x20')];var _0x267c16=_0x472898?0x0:_0x2bba9d[_0xbb93('0x1e')];var _0x1d9289=_0x472898?_0x46e881[_0xbb93('0x20')]:_0x2bba9d[_0xbb93('0x1e')]+_0x2bba9d[_0xbb93('0x21')];var _0x3bb03f;if(_0x1d9289>=_0x5c55a0){_0x1d9289=_0x5c55a0;_0x3bb03f=0xc8;}else{_0x3bb03f=0xce;}_0x23c20d[_0xbb93('0x1c')](_0x3bb03f);return _0x23c20d[_0xbb93('0x22')](_0xbb93('0x23'),_0x267c16+'-'+_0x1d9289+'/'+_0x5c55a0)[_0xbb93('0x1d')](_0x46e881);}return null;};}function patchUpdates(_0x1a18f4){return function(_0x1d0330){try{jsonpatch[_0xbb93('0x24')](_0x1d0330,_0x1a18f4,!![]);}catch(_0x27f41f){return BPromise[_0xbb93('0x25')](_0x27f41f);}return _0x1d0330[_0xbb93('0x26')]();};}function saveUpdates(_0x21d279,_0xd9211a){return function(_0x21ef8b){if(_0x21ef8b){return _0x21ef8b[_0xbb93('0x27')](_0x21d279)[_0xbb93('0x28')](function(_0x11a77d){return _0x11a77d;});}return null;};}function removeEntity(_0x44a774,_0x13c967){return function(_0x58ef0f){if(_0x58ef0f){return _0x58ef0f[_0xbb93('0x29')]()['then'](function(){_0x44a774[_0xbb93('0x1c')](0xcc)['end']();});}};}function handleEntityNotFound(_0x2c1d27,_0x35480a){return function(_0x1b299a){if(!_0x1b299a){_0x2c1d27[_0xbb93('0x1b')](0x194);}return _0x1b299a;};}function handleError(_0x2295c3,_0xc40fe7){_0xc40fe7=_0xc40fe7||0x1f4;return function(_0x49341d){logger[_0xbb93('0x2a')](_0x49341d[_0xbb93('0x2b')]);if(_0x49341d['name']){delete _0x49341d[_0xbb93('0x2c')];}_0x2295c3[_0xbb93('0x1c')](_0xc40fe7)[_0xbb93('0x2d')](_0x49341d);};}exports[_0xbb93('0x2e')]=function(_0x155ee1,_0x5930a1){var _0x120075={},_0x19cb67={},_0x2eea1a={'count':0x0,'rows':[]};var _0x1161f6=_[_0xbb93('0x2f')](db[_0xbb93('0x30')][_0xbb93('0x31')],function(_0x28886f){return{'name':_0x28886f[_0xbb93('0x32')],'type':_0x28886f[_0xbb93('0x33')]['key']};});_0x19cb67[_0xbb93('0x34')]=_['map'](_0x1161f6,'name');_0x19cb67[_0xbb93('0x35')]=_[_0xbb93('0x36')](_0x155ee1[_0xbb93('0x35')]);_0x19cb67[_0xbb93('0x37')]=_['intersection'](_0x19cb67[_0xbb93('0x34')],_0x19cb67['query']);_0x120075[_0xbb93('0x38')]=_[_0xbb93('0x39')](_0x19cb67['model'],qs['fields'](_0x155ee1[_0xbb93('0x35')][_0xbb93('0x3a')]));_0x120075[_0xbb93('0x38')]=_0x120075[_0xbb93('0x38')]['length']?_0x120075['attributes']:_0x19cb67[_0xbb93('0x34')];if(!_0x155ee1[_0xbb93('0x35')][_0xbb93('0x3b')](_0xbb93('0x3c'))){_0x120075['limit']=qs['limit'](_0x155ee1[_0xbb93('0x35')][_0xbb93('0x21')]);_0x120075['offset']=qs[_0xbb93('0x1e')](_0x155ee1[_0xbb93('0x35')]['offset']);}_0x120075[_0xbb93('0x3d')]=qs[_0xbb93('0x3e')](_0x155ee1['query'][_0xbb93('0x3e')]);_0x120075[_0xbb93('0x3f')]=qs[_0xbb93('0x37')](_[_0xbb93('0x40')](_0x155ee1[_0xbb93('0x35')],_0x19cb67[_0xbb93('0x37')]),_0x1161f6);if(_0x155ee1[_0xbb93('0x35')][_0xbb93('0x41')]){_0x120075[_0xbb93('0x3f')]=_['merge'](_0x120075['where'],{'$or':_[_0xbb93('0x2f')](_0x1161f6,function(_0x58f0a3){if(_0x58f0a3[_0xbb93('0x33')]!==_0xbb93('0x42')){var _0x37d145={};_0x37d145[_0x58f0a3[_0xbb93('0x2c')]]={'$like':'%'+_0x155ee1[_0xbb93('0x35')][_0xbb93('0x41')]+'%'};return _0x37d145;}})});}_0x120075=_[_0xbb93('0x43')]({},_0x120075,_0x155ee1[_0xbb93('0x44')]);var _0x332bb6={'where':_0x120075[_0xbb93('0x3f')]};return db[_0xbb93('0x30')][_0xbb93('0x20')](_0x332bb6)[_0xbb93('0x28')](function(_0x3e202e){_0x2eea1a['count']=_0x3e202e;if(_0x155ee1['query'][_0xbb93('0x45')]){_0x120075[_0xbb93('0x46')]=[{'all':!![]}];}return db[_0xbb93('0x30')][_0xbb93('0x47')](_0x120075);})[_0xbb93('0x28')](function(_0x306966){_0x2eea1a[_0xbb93('0x48')]=_0x306966;return _0x2eea1a;})[_0xbb93('0x28')](respondWithFilteredResult(_0x5930a1,_0x120075))[_0xbb93('0x49')](handleError(_0x5930a1,null));};exports[_0xbb93('0x4a')]=function(_0xddab7c,_0x240a54){var _0x176375={'raw':!![],'where':{'id':_0xddab7c[_0xbb93('0x4b')]['id']}},_0x42ecab={};_0x42ecab['model']=_['keys'](db[_0xbb93('0x30')]['rawAttributes']);_0x42ecab[_0xbb93('0x35')]=_[_0xbb93('0x36')](_0xddab7c[_0xbb93('0x35')]);_0x42ecab[_0xbb93('0x37')]=_[_0xbb93('0x39')](_0x42ecab['model'],_0x42ecab[_0xbb93('0x35')]);_0x176375[_0xbb93('0x38')]=_[_0xbb93('0x39')](_0x42ecab[_0xbb93('0x34')],qs[_0xbb93('0x3a')](_0xddab7c['query'][_0xbb93('0x3a')]));_0x176375[_0xbb93('0x38')]=_0x176375[_0xbb93('0x38')]['length']?_0x176375[_0xbb93('0x38')]:_0x42ecab[_0xbb93('0x34')];if(_0xddab7c[_0xbb93('0x35')][_0xbb93('0x45')]){_0x176375[_0xbb93('0x46')]=[{'all':!![]}];}_0x176375=_['merge']({},_0x176375,_0xddab7c['options']);return db[_0xbb93('0x30')][_0xbb93('0x4c')](_0x176375)[_0xbb93('0x28')](handleEntityNotFound(_0x240a54,null))[_0xbb93('0x28')](respondWithResult(_0x240a54,null))[_0xbb93('0x49')](handleError(_0x240a54,null));};exports[_0xbb93('0x4d')]=function(_0x9ed661,_0x505daa){return db['SquareRecording'][_0xbb93('0x4d')](_0x9ed661[_0xbb93('0x4e')],{})['then'](respondWithResult(_0x505daa,0xc9))[_0xbb93('0x49')](handleError(_0x505daa,null));};exports[_0xbb93('0x27')]=function(_0x277b9a,_0x5a3669){if(_0x277b9a[_0xbb93('0x4e')]['id']){delete _0x277b9a[_0xbb93('0x4e')]['id'];}return db[_0xbb93('0x30')]['find']({'where':{'id':_0x277b9a[_0xbb93('0x4b')]['id']}})[_0xbb93('0x28')](handleEntityNotFound(_0x5a3669,null))[_0xbb93('0x28')](saveUpdates(_0x277b9a[_0xbb93('0x4e')],null))[_0xbb93('0x28')](respondWithResult(_0x5a3669,null))['catch'](handleError(_0x5a3669,null));};exports['download']=function(_0x3d2fdb,_0x54f5c5,_0x571e08){var _0x36921b=require(_0xbb93('0x4f'));var _0x37453a=![];var _0x44e2e9={};if(_0x3d2fdb['query']['type']&&_0x3d2fdb[_0xbb93('0x35')][_0xbb93('0x33')]===_0xbb93('0x50')){_0x44e2e9['uniqueid']=_0x3d2fdb[_0xbb93('0x4b')]['id'];}else{_0x44e2e9['id']=_0x3d2fdb[_0xbb93('0x4b')]['id'];}return db['SquareRecording'][_0xbb93('0x4c')]({'where':_0x44e2e9,'attributes':['id','savePath',_0xbb93('0x51')],'raw':!![]})[_0xbb93('0x28')](handleEntityNotFound(_0x54f5c5,null))[_0xbb93('0x28')](function(_0x4f081e){if(_0x4f081e){var _0x2dc20a=_0x4f081e['savePath'];var _0x381862=util['format']('%s.cypher',_0x2dc20a);if(fs[_0xbb93('0x52')](_0x381862)){_0x37453a=!![];return _0x36921b[_0xbb93('0x53')](_0x381862,_0x2dc20a,config['secrets']['recording'])[_0xbb93('0x28')](function(){return _0x4f081e;});}return _0x4f081e;}})[_0xbb93('0x28')](function(_0x3e6f7e){if(_0x3e6f7e){var _0x57a300=_0x3e6f7e['savePath'];if(!fs[_0xbb93('0x52')](_0x57a300)){throw new db['Sequelize'][(_0xbb93('0x54'))](_0xbb93('0x55'));}if(_0x3e6f7e[_0xbb93('0x51')]){return _0x54f5c5['download'](_0x57a300,_0x3e6f7e[_0xbb93('0x51')]+path[_0xbb93('0x56')](_0x57a300),function(){if(_0x37453a){fs['unlink'](_0x57a300);}});}else{return _0x54f5c5[_0xbb93('0x57')](_0x57a300,function(_0x3560ab){if(_0x37453a){fs[_0xbb93('0x58')](_0x57a300);}});}}})[_0xbb93('0x49')](function(_0xdf63b3){if(_0xdf63b3[_0xbb93('0x59')]===_0xbb93('0x55')){_0x54f5c5[_0xbb93('0x1c')](0x194)['send'](_0xbb93('0x5a'));}else{return handleError(_0x54f5c5,null);}});};exports[_0xbb93('0x29')]=function(_0xb349e3,_0x8c41b9){return db[_0xbb93('0x30')][_0xbb93('0x4c')]({'where':{'id':_0xb349e3[_0xbb93('0x4b')]['id']}})['then'](function(_0x266c22){if(!_0x266c22)throw new ReferenceError(_0xbb93('0x5b'));return _0x266c22;})['then'](function(_0x1861cd){var _0x2ba99c=_0x1861cd[_0xbb93('0x5c')];logger['info']('cancellazione\x20fisica\x20documento\x20%s',_0x2ba99c);if(!_[_0xbb93('0x5d')](_0x1861cd[_0xbb93('0x5c')])&&fs[_0xbb93('0x52')](_0x2ba99c)){logger[_0xbb93('0x5e')]('File:\x20\x22'+_0x2ba99c+_0xbb93('0x5f'));fs['unlinkSync'](_0x2ba99c);}_0x2ba99c=_0x2ba99c+_0xbb93('0x60');if(!_[_0xbb93('0x5d')](_0x1861cd[_0xbb93('0x5c')])&&fs[_0xbb93('0x52')](_0x2ba99c)){logger['info'](_0xbb93('0x61')+_0x2ba99c+'\x22\x20trovato\x20eseguo\x20la\x20cancellazione');fs['unlinkSync'](_0x2ba99c);}return _0x1861cd;})[_0xbb93('0x28')](function(_0x27e85d){if(!_0x27e85d)throw new InternalError();return _0x27e85d['destroy']();})[_0xbb93('0x28')](function(){_0x8c41b9[_0xbb93('0x1c')](0xcc)['end']();})[_0xbb93('0x49')](handleError(_0x8c41b9,null));};