Built motion from commit 3e059bc2.|2.5.32
[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 _0x452c=['info','File:\x20\x22','\x22\x20trovato\x20eseguo\x20la\x20cancellazione','unlinkSync','.cypher','eml-format','rimraf','moment','mustache','util','path','to-csv','fs-extra','lodash','squel','crypto','jsforce','desk.js','querystring','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','status','json','offset','undefined','count','limit','set','Content-Range','apply','reject','save','update','then','end','sendStatus','error','name','send','index','rawAttributes','fieldName','type','key','model','map','keys','query','filters','intersection','fields','attributes','hasOwnProperty','nolimit','order','sort','pick','filter','where','merge','SquareRecording','includeAll','include','findAll','rows','show','params','catch','create','body','find','uniqueid','format','%s.cypher','existsSync','decryptFile','secrets','recording','savePath','Sequelize','SquareRecording\x20not\x20found','filename','download','extname','unlink','message','Not\x20found','isNil','Entity\x20not\x20found'];(function(_0x26fbce,_0x47dc96){var _0x431a29=function(_0x494f70){while(--_0x494f70){_0x26fbce['push'](_0x26fbce['shift']());}};_0x431a29(++_0x47dc96);}(_0x452c,0x189));var _0xc452=function(_0x87b8d3,_0x2bd960){_0x87b8d3=_0x87b8d3-0x0;var _0x24c115=_0x452c[_0x87b8d3];return _0x24c115;};'use strict';var emlformat=require(_0xc452('0x0'));var rimraf=require(_0xc452('0x1'));var zipdir=require('zip-dir');var jsonpatch=require('fast-json-patch');var rp=require('request-promise');var moment=require(_0xc452('0x2'));var BPromise=require('bluebird');var Mustache=require(_0xc452('0x3'));var util=require(_0xc452('0x4'));var path=require(_0xc452('0x5'));var sox=require('sox');var csv=require(_0xc452('0x6'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0xc452('0x7'));var _=require(_0xc452('0x8'));var squel=require(_0xc452('0x9'));var crypto=require(_0xc452('0xa'));var jsforce=require(_0xc452('0xb'));var deskjs=require(_0xc452('0xc'));var toCsv=require(_0xc452('0x6'));var querystring=require(_0xc452('0xd'));var Papa=require('papaparse');var Redis=require(_0xc452('0xe'));var authService=require('../../components/auth/service');var qs=require(_0xc452('0xf'));var as=require(_0xc452('0x10'));var hardwareService=require(_0xc452('0x11'));var logger=require(_0xc452('0x12'))(_0xc452('0x13'));var utils=require(_0xc452('0x14'));var config=require(_0xc452('0x15'));var licenseUtil=require(_0xc452('0x16'));var db=require(_0xc452('0x17'))['db'];function respondWithStatusCode(_0x2a85e2,_0x59eeb2){_0x59eeb2=_0x59eeb2||0xcc;return function(_0x1e8ebb){if(_0x1e8ebb){return _0x2a85e2['sendStatus'](_0x59eeb2);}return _0x2a85e2[_0xc452('0x18')](_0x59eeb2)['end']();};}function respondWithResult(_0x77dad7,_0x29445d){_0x29445d=_0x29445d||0xc8;return function(_0x22e54b){if(_0x22e54b){return _0x77dad7[_0xc452('0x18')](_0x29445d)[_0xc452('0x19')](_0x22e54b);}};}function respondWithFilteredResult(_0x2b4542,_0x1c133a){return function(_0x502abf){if(_0x502abf){var _0x44d56c=typeof _0x1c133a[_0xc452('0x1a')]===_0xc452('0x1b')&&typeof _0x1c133a['limit']===_0xc452('0x1b');var _0x1cf3f4=_0x502abf[_0xc452('0x1c')];var _0x55ecc7=_0x44d56c?0x0:_0x1c133a[_0xc452('0x1a')];var _0x2528e3=_0x44d56c?_0x502abf[_0xc452('0x1c')]:_0x1c133a[_0xc452('0x1a')]+_0x1c133a[_0xc452('0x1d')];var _0x1c9a59;if(_0x2528e3>=_0x1cf3f4){_0x2528e3=_0x1cf3f4;_0x1c9a59=0xc8;}else{_0x1c9a59=0xce;}_0x2b4542[_0xc452('0x18')](_0x1c9a59);return _0x2b4542[_0xc452('0x1e')](_0xc452('0x1f'),_0x55ecc7+'-'+_0x2528e3+'/'+_0x1cf3f4)[_0xc452('0x19')](_0x502abf);}return null;};}function patchUpdates(_0x5b0d71){return function(_0x44ab11){try{jsonpatch[_0xc452('0x20')](_0x44ab11,_0x5b0d71,!![]);}catch(_0x42551a){return BPromise[_0xc452('0x21')](_0x42551a);}return _0x44ab11[_0xc452('0x22')]();};}function saveUpdates(_0x610fd0,_0x422afa){return function(_0xe06ef3){if(_0xe06ef3){return _0xe06ef3[_0xc452('0x23')](_0x610fd0)[_0xc452('0x24')](function(_0x4ac9d5){return _0x4ac9d5;});}return null;};}function removeEntity(_0x44b309,_0x155101){return function(_0x2f92d5){if(_0x2f92d5){return _0x2f92d5['destroy']()[_0xc452('0x24')](function(){_0x44b309['status'](0xcc)[_0xc452('0x25')]();});}};}function handleEntityNotFound(_0x803eb5,_0x2828b1){return function(_0x2f7d4a){if(!_0x2f7d4a){_0x803eb5[_0xc452('0x26')](0x194);}return _0x2f7d4a;};}function handleError(_0x518f28,_0x2d262c){_0x2d262c=_0x2d262c||0x1f4;return function(_0xb10708){logger[_0xc452('0x27')](_0xb10708['stack']);if(_0xb10708['name']){delete _0xb10708[_0xc452('0x28')];}_0x518f28[_0xc452('0x18')](_0x2d262c)[_0xc452('0x29')](_0xb10708);};}exports[_0xc452('0x2a')]=function(_0x41d34d,_0x3946dd){var _0x1bd4f8={},_0x36d22f={},_0x5eea8f={'count':0x0,'rows':[]};var _0x3bfb6f=_['map'](db['SquareRecording'][_0xc452('0x2b')],function(_0x5c098d){return{'name':_0x5c098d[_0xc452('0x2c')],'type':_0x5c098d[_0xc452('0x2d')][_0xc452('0x2e')]};});_0x36d22f[_0xc452('0x2f')]=_[_0xc452('0x30')](_0x3bfb6f,_0xc452('0x28'));_0x36d22f['query']=_[_0xc452('0x31')](_0x41d34d[_0xc452('0x32')]);_0x36d22f[_0xc452('0x33')]=_[_0xc452('0x34')](_0x36d22f[_0xc452('0x2f')],_0x36d22f[_0xc452('0x32')]);_0x1bd4f8['attributes']=_['intersection'](_0x36d22f[_0xc452('0x2f')],qs['fields'](_0x41d34d[_0xc452('0x32')][_0xc452('0x35')]));_0x1bd4f8[_0xc452('0x36')]=_0x1bd4f8[_0xc452('0x36')]['length']?_0x1bd4f8[_0xc452('0x36')]:_0x36d22f['model'];if(!_0x41d34d['query'][_0xc452('0x37')](_0xc452('0x38'))){_0x1bd4f8[_0xc452('0x1d')]=qs['limit'](_0x41d34d[_0xc452('0x32')][_0xc452('0x1d')]);_0x1bd4f8['offset']=qs[_0xc452('0x1a')](_0x41d34d['query'][_0xc452('0x1a')]);}_0x1bd4f8[_0xc452('0x39')]=qs[_0xc452('0x3a')](_0x41d34d['query'][_0xc452('0x3a')]);_0x1bd4f8['where']=qs[_0xc452('0x33')](_[_0xc452('0x3b')](_0x41d34d[_0xc452('0x32')],_0x36d22f[_0xc452('0x33')]),_0x3bfb6f);if(_0x41d34d[_0xc452('0x32')][_0xc452('0x3c')]){_0x1bd4f8[_0xc452('0x3d')]=_[_0xc452('0x3e')](_0x1bd4f8[_0xc452('0x3d')],{'$or':_[_0xc452('0x30')](_0x3bfb6f,function(_0x402709){if(_0x402709[_0xc452('0x2d')]!=='VIRTUAL'){var _0x2453ca={};_0x2453ca[_0x402709[_0xc452('0x28')]]={'$like':'%'+_0x41d34d[_0xc452('0x32')][_0xc452('0x3c')]+'%'};return _0x2453ca;}})});}_0x1bd4f8=_[_0xc452('0x3e')]({},_0x1bd4f8,_0x41d34d['options']);var _0x4345ef={'where':_0x1bd4f8['where']};return db[_0xc452('0x3f')][_0xc452('0x1c')](_0x4345ef)[_0xc452('0x24')](function(_0x1299a8){_0x5eea8f[_0xc452('0x1c')]=_0x1299a8;if(_0x41d34d[_0xc452('0x32')][_0xc452('0x40')]){_0x1bd4f8[_0xc452('0x41')]=[{'all':!![]}];}return db[_0xc452('0x3f')][_0xc452('0x42')](_0x1bd4f8);})[_0xc452('0x24')](function(_0x107346){_0x5eea8f[_0xc452('0x43')]=_0x107346;return _0x5eea8f;})[_0xc452('0x24')](respondWithFilteredResult(_0x3946dd,_0x1bd4f8))['catch'](handleError(_0x3946dd,null));};exports[_0xc452('0x44')]=function(_0x473bca,_0x20d7a6){var _0x56e7bf={'raw':!![],'where':{'id':_0x473bca[_0xc452('0x45')]['id']}},_0x484802={};_0x484802['model']=_[_0xc452('0x31')](db[_0xc452('0x3f')][_0xc452('0x2b')]);_0x484802[_0xc452('0x32')]=_[_0xc452('0x31')](_0x473bca['query']);_0x484802[_0xc452('0x33')]=_[_0xc452('0x34')](_0x484802[_0xc452('0x2f')],_0x484802[_0xc452('0x32')]);_0x56e7bf[_0xc452('0x36')]=_[_0xc452('0x34')](_0x484802['model'],qs[_0xc452('0x35')](_0x473bca[_0xc452('0x32')]['fields']));_0x56e7bf[_0xc452('0x36')]=_0x56e7bf[_0xc452('0x36')]['length']?_0x56e7bf[_0xc452('0x36')]:_0x484802[_0xc452('0x2f')];if(_0x473bca['query'][_0xc452('0x40')]){_0x56e7bf[_0xc452('0x41')]=[{'all':!![]}];}_0x56e7bf=_[_0xc452('0x3e')]({},_0x56e7bf,_0x473bca['options']);return db[_0xc452('0x3f')]['find'](_0x56e7bf)[_0xc452('0x24')](handleEntityNotFound(_0x20d7a6,null))[_0xc452('0x24')](respondWithResult(_0x20d7a6,null))[_0xc452('0x46')](handleError(_0x20d7a6,null));};exports[_0xc452('0x47')]=function(_0x398ba0,_0x5d02f9){return db[_0xc452('0x3f')][_0xc452('0x47')](_0x398ba0[_0xc452('0x48')],{})['then'](respondWithResult(_0x5d02f9,0xc9))[_0xc452('0x46')](handleError(_0x5d02f9,null));};exports[_0xc452('0x23')]=function(_0x573547,_0x1d327e){if(_0x573547[_0xc452('0x48')]['id']){delete _0x573547[_0xc452('0x48')]['id'];}return db[_0xc452('0x3f')][_0xc452('0x49')]({'where':{'id':_0x573547[_0xc452('0x45')]['id']}})[_0xc452('0x24')](handleEntityNotFound(_0x1d327e,null))[_0xc452('0x24')](saveUpdates(_0x573547[_0xc452('0x48')],null))['then'](respondWithResult(_0x1d327e,null))[_0xc452('0x46')](handleError(_0x1d327e,null));};exports['download']=function(_0x11e62c,_0x273481,_0x15f226){var _0x1497b3=require('../../components/encryptor');var _0x3d5ba8=![];var _0x35e679={};if(_0x11e62c[_0xc452('0x32')][_0xc452('0x2d')]&&_0x11e62c[_0xc452('0x32')][_0xc452('0x2d')]===_0xc452('0x4a')){_0x35e679[_0xc452('0x4a')]=_0x11e62c[_0xc452('0x45')]['id'];}else{_0x35e679['id']=_0x11e62c[_0xc452('0x45')]['id'];}return db['SquareRecording'][_0xc452('0x49')]({'where':_0x35e679,'attributes':['id','savePath','filename'],'raw':!![]})[_0xc452('0x24')](handleEntityNotFound(_0x273481,null))[_0xc452('0x24')](function(_0x4d371d){if(_0x4d371d){var _0x51aaf6=_0x4d371d['savePath'];var _0x2b3458=util[_0xc452('0x4b')](_0xc452('0x4c'),_0x51aaf6);if(fs[_0xc452('0x4d')](_0x2b3458)){_0x3d5ba8=!![];return _0x1497b3[_0xc452('0x4e')](_0x2b3458,_0x51aaf6,config[_0xc452('0x4f')][_0xc452('0x50')])[_0xc452('0x24')](function(){return _0x4d371d;});}return _0x4d371d;}})[_0xc452('0x24')](function(_0x45f611){if(_0x45f611){var _0x46a149=_0x45f611[_0xc452('0x51')];if(!fs[_0xc452('0x4d')](_0x46a149)){throw new db[(_0xc452('0x52'))]['ValidationError'](_0xc452('0x53'));}if(_0x45f611[_0xc452('0x54')]){return _0x273481[_0xc452('0x55')](_0x46a149,_0x45f611['filename']+path[_0xc452('0x56')](_0x46a149),function(){if(_0x3d5ba8){fs[_0xc452('0x57')](_0x46a149);}});}else{return _0x273481['download'](_0x46a149,function(_0x1e7c03){if(_0x3d5ba8){fs[_0xc452('0x57')](_0x46a149);}});}}})[_0xc452('0x46')](function(_0x544e7f){if(_0x544e7f[_0xc452('0x58')]==='SquareRecording\x20not\x20found'){_0x273481[_0xc452('0x18')](0x194)[_0xc452('0x29')](_0xc452('0x59'));}else{return handleError(_0x273481,null);}});};exports['destroy']=function(_0x3418aa,_0x31fcad){return db[_0xc452('0x3f')][_0xc452('0x49')]({'where':{'id':_0x3418aa[_0xc452('0x45')]['id']}})['then'](function(_0x44ff55){if(_[_0xc452('0x5a')](_0x44ff55)){throw new ReferenceError(_0xc452('0x5b'));}return _0x44ff55;})['then'](function(_0x30c4c0){var _0x175d8f=_0x30c4c0[_0xc452('0x51')];logger['info']('cancellazione\x20fisica\x20documento\x20%s',_0x175d8f);if(!_[_0xc452('0x5a')](_0x30c4c0[_0xc452('0x51')])&&fs[_0xc452('0x4d')](_0x175d8f)){logger[_0xc452('0x5c')](_0xc452('0x5d')+_0x175d8f+_0xc452('0x5e'));fs[_0xc452('0x5f')](_0x175d8f);}_0x175d8f=_0x175d8f+_0xc452('0x60');if(!_[_0xc452('0x5a')](_0x30c4c0[_0xc452('0x51')])&&fs['existsSync'](_0x175d8f)){logger['info'](_0xc452('0x5d')+_0x175d8f+'\x22\x20trovato\x20eseguo\x20la\x20cancellazione');fs[_0xc452('0x5f')](_0x175d8f);}return _0x30c4c0;})['then'](function(_0x5ae8a7){if(!_0x5ae8a7)throw new InternalError();return _0x5ae8a7['destroy']();})[_0xc452('0x24')](function(){_0x31fcad['status'](0xcc)[_0xc452('0x25')]();})[_0xc452('0x46')](handleError(_0x31fcad,null));};