Built motion from commit eddce310.|2.6.12
[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 _0x8d26=['jsforce','desk.js','querystring','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','json','offset','undefined','count','limit','set','Content-Range','apply','reject','save','then','destroy','end','stack','name','send','index','map','SquareRecording','rawAttributes','type','model','query','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','pick','filter','VIRTUAL','merge','includeAll','findAll','catch','keys','include','options','create','body','find','params','download','../../components/encryptor','savePath','filename','%s.cypher','existsSync','decryptFile','secrets','recording','Sequelize','ValidationError','SquareRecording\x20not\x20found','unlink','Not\x20found','Entity\x20not\x20found','info','cancellazione\x20fisica\x20documento\x20%s','File:\x20\x22','\x22\x20trovato\x20eseguo\x20la\x20cancellazione','unlinkSync','.cypher','isNil','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','mustache','path','to-csv','fs-extra','lodash','squel'];(function(_0x5a776b,_0x46f785){var _0xbbef59=function(_0x38313e){while(--_0x38313e){_0x5a776b['push'](_0x5a776b['shift']());}};_0xbbef59(++_0x46f785);}(_0x8d26,0x174));var _0x68d2=function(_0x39cdb8,_0x15ee98){_0x39cdb8=_0x39cdb8-0x0;var _0x44bbc9=_0x8d26[_0x39cdb8];return _0x44bbc9;};'use strict';var emlformat=require(_0x68d2('0x0'));var rimraf=require(_0x68d2('0x1'));var zipdir=require(_0x68d2('0x2'));var jsonpatch=require(_0x68d2('0x3'));var rp=require(_0x68d2('0x4'));var moment=require(_0x68d2('0x5'));var BPromise=require('bluebird');var Mustache=require(_0x68d2('0x6'));var util=require('util');var path=require(_0x68d2('0x7'));var sox=require('sox');var csv=require(_0x68d2('0x8'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0x68d2('0x9'));var _=require(_0x68d2('0xa'));var squel=require(_0x68d2('0xb'));var crypto=require('crypto');var jsforce=require(_0x68d2('0xc'));var deskjs=require(_0x68d2('0xd'));var toCsv=require(_0x68d2('0x8'));var querystring=require(_0x68d2('0xe'));var Papa=require('papaparse');var Redis=require('ioredis');var authService=require(_0x68d2('0xf'));var qs=require(_0x68d2('0x10'));var as=require(_0x68d2('0x11'));var hardwareService=require(_0x68d2('0x12'));var logger=require(_0x68d2('0x13'))(_0x68d2('0x14'));var utils=require(_0x68d2('0x15'));var config=require(_0x68d2('0x16'));var licenseUtil=require(_0x68d2('0x17'));var db=require(_0x68d2('0x18'))['db'];function respondWithStatusCode(_0x2aaa8c,_0x5f17fc){_0x5f17fc=_0x5f17fc||0xcc;return function(_0x1a4c2a){if(_0x1a4c2a){return _0x2aaa8c[_0x68d2('0x19')](_0x5f17fc);}return _0x2aaa8c[_0x68d2('0x1a')](_0x5f17fc)['end']();};}function respondWithResult(_0x5f0692,_0x43baa1){_0x43baa1=_0x43baa1||0xc8;return function(_0x480d73){if(_0x480d73){return _0x5f0692[_0x68d2('0x1a')](_0x43baa1)[_0x68d2('0x1b')](_0x480d73);}};}function respondWithFilteredResult(_0x586d8b,_0x27d79d){return function(_0x5bf5d9){if(_0x5bf5d9){var _0x1693ef=typeof _0x27d79d[_0x68d2('0x1c')]===_0x68d2('0x1d')&&typeof _0x27d79d['limit']==='undefined';var _0x113def=_0x5bf5d9[_0x68d2('0x1e')];var _0x4e0142=_0x1693ef?0x0:_0x27d79d[_0x68d2('0x1c')];var _0x8c65d5=_0x1693ef?_0x5bf5d9[_0x68d2('0x1e')]:_0x27d79d[_0x68d2('0x1c')]+_0x27d79d[_0x68d2('0x1f')];var _0x4e3eb4;if(_0x8c65d5>=_0x113def){_0x8c65d5=_0x113def;_0x4e3eb4=0xc8;}else{_0x4e3eb4=0xce;}_0x586d8b['status'](_0x4e3eb4);return _0x586d8b[_0x68d2('0x20')](_0x68d2('0x21'),_0x4e0142+'-'+_0x8c65d5+'/'+_0x113def)[_0x68d2('0x1b')](_0x5bf5d9);}return null;};}function patchUpdates(_0x224e5e){return function(_0x3594e3){try{jsonpatch[_0x68d2('0x22')](_0x3594e3,_0x224e5e,!![]);}catch(_0x4c40e9){return BPromise[_0x68d2('0x23')](_0x4c40e9);}return _0x3594e3[_0x68d2('0x24')]();};}function saveUpdates(_0x5ace2a,_0x59bd87){return function(_0x222438){if(_0x222438){return _0x222438['update'](_0x5ace2a)[_0x68d2('0x25')](function(_0x3086f0){return _0x3086f0;});}return null;};}function removeEntity(_0x5a7d0d,_0x1ed483){return function(_0x31e68a){if(_0x31e68a){return _0x31e68a[_0x68d2('0x26')]()[_0x68d2('0x25')](function(){_0x5a7d0d[_0x68d2('0x1a')](0xcc)[_0x68d2('0x27')]();});}};}function handleEntityNotFound(_0x5d6dfd,_0x20d170){return function(_0x1ca002){if(!_0x1ca002){_0x5d6dfd[_0x68d2('0x19')](0x194);}return _0x1ca002;};}function handleError(_0x5e35e9,_0x5a730f){_0x5a730f=_0x5a730f||0x1f4;return function(_0xac564d){logger['error'](_0xac564d[_0x68d2('0x28')]);if(_0xac564d[_0x68d2('0x29')]){delete _0xac564d[_0x68d2('0x29')];}_0x5e35e9[_0x68d2('0x1a')](_0x5a730f)[_0x68d2('0x2a')](_0xac564d);};}exports[_0x68d2('0x2b')]=function(_0x27ee7a,_0xc678a8){var _0x31a3e7={},_0x2d3507={},_0x548f6c={'count':0x0,'rows':[]};var _0x391d70=_[_0x68d2('0x2c')](db[_0x68d2('0x2d')][_0x68d2('0x2e')],function(_0x370562){return{'name':_0x370562['fieldName'],'type':_0x370562[_0x68d2('0x2f')]['key']};});_0x2d3507[_0x68d2('0x30')]=_['map'](_0x391d70,_0x68d2('0x29'));_0x2d3507[_0x68d2('0x31')]=_['keys'](_0x27ee7a[_0x68d2('0x31')]);_0x2d3507[_0x68d2('0x32')]=_[_0x68d2('0x33')](_0x2d3507[_0x68d2('0x30')],_0x2d3507[_0x68d2('0x31')]);_0x31a3e7[_0x68d2('0x34')]=_['intersection'](_0x2d3507[_0x68d2('0x30')],qs[_0x68d2('0x35')](_0x27ee7a[_0x68d2('0x31')][_0x68d2('0x35')]));_0x31a3e7[_0x68d2('0x34')]=_0x31a3e7['attributes'][_0x68d2('0x36')]?_0x31a3e7[_0x68d2('0x34')]:_0x2d3507[_0x68d2('0x30')];if(!_0x27ee7a['query'][_0x68d2('0x37')](_0x68d2('0x38'))){_0x31a3e7['limit']=qs[_0x68d2('0x1f')](_0x27ee7a['query'][_0x68d2('0x1f')]);_0x31a3e7['offset']=qs[_0x68d2('0x1c')](_0x27ee7a[_0x68d2('0x31')]['offset']);}_0x31a3e7[_0x68d2('0x39')]=qs['sort'](_0x27ee7a[_0x68d2('0x31')][_0x68d2('0x3a')]);_0x31a3e7[_0x68d2('0x3b')]=qs['filters'](_[_0x68d2('0x3c')](_0x27ee7a['query'],_0x2d3507[_0x68d2('0x32')]),_0x391d70);if(_0x27ee7a[_0x68d2('0x31')][_0x68d2('0x3d')]){_0x31a3e7[_0x68d2('0x3b')]=_['merge'](_0x31a3e7[_0x68d2('0x3b')],{'$or':_[_0x68d2('0x2c')](_0x391d70,function(_0x2dadcb){if(_0x2dadcb[_0x68d2('0x2f')]!==_0x68d2('0x3e')){var _0x4db809={};_0x4db809[_0x2dadcb[_0x68d2('0x29')]]={'$like':'%'+_0x27ee7a[_0x68d2('0x31')][_0x68d2('0x3d')]+'%'};return _0x4db809;}})});}_0x31a3e7=_[_0x68d2('0x3f')]({},_0x31a3e7,_0x27ee7a['options']);var _0x5c9146={'where':_0x31a3e7[_0x68d2('0x3b')]};return db[_0x68d2('0x2d')][_0x68d2('0x1e')](_0x5c9146)['then'](function(_0x499770){_0x548f6c[_0x68d2('0x1e')]=_0x499770;if(_0x27ee7a[_0x68d2('0x31')][_0x68d2('0x40')]){_0x31a3e7['include']=[{'all':!![]}];}return db[_0x68d2('0x2d')][_0x68d2('0x41')](_0x31a3e7);})[_0x68d2('0x25')](function(_0x3a4837){_0x548f6c['rows']=_0x3a4837;return _0x548f6c;})[_0x68d2('0x25')](respondWithFilteredResult(_0xc678a8,_0x31a3e7))[_0x68d2('0x42')](handleError(_0xc678a8,null));};exports['show']=function(_0x1eb53a,_0x595fd3){var _0x4c08bc={'raw':!![],'where':{'id':_0x1eb53a['params']['id']}},_0x28f186={};_0x28f186[_0x68d2('0x30')]=_[_0x68d2('0x43')](db[_0x68d2('0x2d')]['rawAttributes']);_0x28f186['query']=_['keys'](_0x1eb53a[_0x68d2('0x31')]);_0x28f186[_0x68d2('0x32')]=_[_0x68d2('0x33')](_0x28f186[_0x68d2('0x30')],_0x28f186[_0x68d2('0x31')]);_0x4c08bc[_0x68d2('0x34')]=_[_0x68d2('0x33')](_0x28f186[_0x68d2('0x30')],qs[_0x68d2('0x35')](_0x1eb53a['query'][_0x68d2('0x35')]));_0x4c08bc[_0x68d2('0x34')]=_0x4c08bc[_0x68d2('0x34')][_0x68d2('0x36')]?_0x4c08bc[_0x68d2('0x34')]:_0x28f186[_0x68d2('0x30')];if(_0x1eb53a[_0x68d2('0x31')][_0x68d2('0x40')]){_0x4c08bc[_0x68d2('0x44')]=[{'all':!![]}];}_0x4c08bc=_['merge']({},_0x4c08bc,_0x1eb53a[_0x68d2('0x45')]);return db['SquareRecording']['find'](_0x4c08bc)[_0x68d2('0x25')](handleEntityNotFound(_0x595fd3,null))[_0x68d2('0x25')](respondWithResult(_0x595fd3,null))[_0x68d2('0x42')](handleError(_0x595fd3,null));};exports[_0x68d2('0x46')]=function(_0xdb191,_0xce9273){return db['SquareRecording'][_0x68d2('0x46')](_0xdb191[_0x68d2('0x47')],{})[_0x68d2('0x25')](respondWithResult(_0xce9273,0xc9))[_0x68d2('0x42')](handleError(_0xce9273,null));};exports['update']=function(_0xa24f0,_0x5065bb){if(_0xa24f0['body']['id']){delete _0xa24f0[_0x68d2('0x47')]['id'];}return db[_0x68d2('0x2d')][_0x68d2('0x48')]({'where':{'id':_0xa24f0[_0x68d2('0x49')]['id']}})[_0x68d2('0x25')](handleEntityNotFound(_0x5065bb,null))[_0x68d2('0x25')](saveUpdates(_0xa24f0['body'],null))[_0x68d2('0x25')](respondWithResult(_0x5065bb,null))[_0x68d2('0x42')](handleError(_0x5065bb,null));};exports[_0x68d2('0x4a')]=function(_0x1f9456,_0x60bbc0,_0x444abd){var _0x59f421=require(_0x68d2('0x4b'));var _0x290c1c=![];var _0xb98387={};if(_0x1f9456[_0x68d2('0x31')][_0x68d2('0x2f')]&&_0x1f9456[_0x68d2('0x31')][_0x68d2('0x2f')]==='uniqueid'){_0xb98387['uniqueid']=_0x1f9456[_0x68d2('0x49')]['id'];}else{_0xb98387['id']=_0x1f9456[_0x68d2('0x49')]['id'];}return db[_0x68d2('0x2d')][_0x68d2('0x48')]({'where':_0xb98387,'attributes':['id',_0x68d2('0x4c'),_0x68d2('0x4d')],'raw':!![]})[_0x68d2('0x25')](handleEntityNotFound(_0x60bbc0,null))[_0x68d2('0x25')](function(_0x13d6da){if(_0x13d6da){var _0x1d0249=_0x13d6da[_0x68d2('0x4c')];var _0x2c0436=util['format'](_0x68d2('0x4e'),_0x1d0249);if(fs[_0x68d2('0x4f')](_0x2c0436)){_0x290c1c=!![];return _0x59f421[_0x68d2('0x50')](_0x2c0436,_0x1d0249,config[_0x68d2('0x51')][_0x68d2('0x52')])[_0x68d2('0x25')](function(){return _0x13d6da;});}return _0x13d6da;}})[_0x68d2('0x25')](function(_0x109d94){if(_0x109d94){var _0x1d2605=_0x109d94[_0x68d2('0x4c')];if(!fs[_0x68d2('0x4f')](_0x1d2605)){throw new db[(_0x68d2('0x53'))][(_0x68d2('0x54'))](_0x68d2('0x55'));}if(_0x109d94[_0x68d2('0x4d')]){return _0x60bbc0[_0x68d2('0x4a')](_0x1d2605,_0x109d94[_0x68d2('0x4d')]+path['extname'](_0x1d2605),function(){if(_0x290c1c){fs[_0x68d2('0x56')](_0x1d2605);}});}else{return _0x60bbc0['download'](_0x1d2605,function(_0x16cdfe){if(_0x290c1c){fs[_0x68d2('0x56')](_0x1d2605);}});}}})[_0x68d2('0x42')](function(_0x4dc754){if(_0x4dc754['message']===_0x68d2('0x55')){_0x60bbc0['status'](0x194)['send'](_0x68d2('0x57'));}else{return handleError(_0x60bbc0,null);}});};exports[_0x68d2('0x26')]=function(_0x54435b,_0x5a599a){return db['SquareRecording']['find']({'where':{'id':_0x54435b[_0x68d2('0x49')]['id']}})[_0x68d2('0x25')](function(_0x195276){if(_['isNil'](_0x195276)){throw new ReferenceError(_0x68d2('0x58'));}return _0x195276;})[_0x68d2('0x25')](function(_0x4b0962){var _0x5c6ed9=_0x4b0962[_0x68d2('0x4c')];logger[_0x68d2('0x59')](_0x68d2('0x5a'),_0x5c6ed9);if(!_['isNil'](_0x4b0962[_0x68d2('0x4c')])&&fs[_0x68d2('0x4f')](_0x5c6ed9)){logger[_0x68d2('0x59')](_0x68d2('0x5b')+_0x5c6ed9+_0x68d2('0x5c'));fs[_0x68d2('0x5d')](_0x5c6ed9);}_0x5c6ed9=_0x5c6ed9+_0x68d2('0x5e');if(!_[_0x68d2('0x5f')](_0x4b0962[_0x68d2('0x4c')])&&fs[_0x68d2('0x4f')](_0x5c6ed9)){logger[_0x68d2('0x59')](_0x68d2('0x5b')+_0x5c6ed9+'\x22\x20trovato\x20eseguo\x20la\x20cancellazione');fs[_0x68d2('0x5d')](_0x5c6ed9);}return _0x4b0962;})[_0x68d2('0x25')](function(_0x5c126b){if(!_0x5c126b)throw new InternalError();return _0x5c126b[_0x68d2('0x26')]();})[_0x68d2('0x25')](function(){_0x5a599a[_0x68d2('0x1a')](0xcc)[_0x68d2('0x27')]();})[_0x68d2('0x42')](handleError(_0x5a599a,null));};