Built motion from commit (unavailable).|2.5.1
[motion2.git] / server / api / screenRecording / screenRecording.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 _0x262d=['create','body','duration','createdAt','closedAt','value','catch','describe','download','../../components/encryptor','uniqueid','join','root','server/files/screen_recordings','format','%s.cypher','existsSync','decryptFile','secrets','recording','ValidationError','ScreenRecording\x20not\x20found','filename','extname','unlink','message','info','isNil','File:\x20\x22','\x22\x20trovato\x20eseguo\x20la\x20cancellazione','unlinkSync','.cypher','html-pdf','eml-format','rimraf','zip-dir','fast-json-patch','moment','bluebird','mustache','util','path','sox','ejs','to-csv','querystring','ioredis','../../components/parsers/advancedSearch','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','sendStatus','status','end','offset','limit','set','Content-Range','json','save','update','destroy','then','error','stack','name','send','index','ScreenRecording','rawAttributes','fieldName','type','key','model','differenceBy','map','query','filters','intersection','fields','attributes','nolimit','sort','where','pick','filter','merge','VIRTUAL','options','count','include','findAll','rows','show','params','keys','length','find'];(function(_0x1b5ba6,_0x3be496){var _0x41a3fc=function(_0x2396ca){while(--_0x2396ca){_0x1b5ba6['push'](_0x1b5ba6['shift']());}};_0x41a3fc(++_0x3be496);}(_0x262d,0x14c));var _0xd262=function(_0x3a6efd,_0x2a5102){_0x3a6efd=_0x3a6efd-0x0;var _0x487b9a=_0x262d[_0x3a6efd];return _0x487b9a;};'use strict';var pdf=require(_0xd262('0x0'));var emlformat=require(_0xd262('0x1'));var rimraf=require(_0xd262('0x2'));var zipdir=require(_0xd262('0x3'));var jsonpatch=require(_0xd262('0x4'));var rp=require('request-promise');var moment=require(_0xd262('0x5'));var BPromise=require(_0xd262('0x6'));var Mustache=require(_0xd262('0x7'));var util=require(_0xd262('0x8'));var path=require(_0xd262('0x9'));var sox=require(_0xd262('0xa'));var csv=require('to-csv');var ejs=require(_0xd262('0xb'));var fs=require('fs');var _=require('lodash');var squel=require('squel');var crypto=require('crypto');var jsforce=require('jsforce');var deskjs=require('desk.js');var toCsv=require(_0xd262('0xc'));var querystring=require(_0xd262('0xd'));var Papa=require('papaparse');var Redis=require(_0xd262('0xe'));var authService=require('../../components/auth/service');var qs=require('../../components/parsers/qs');var as=require(_0xd262('0xf'));var hardwareService=require('../../config/license/hardware');var logger=require(_0xd262('0x10'))(_0xd262('0x11'));var utils=require(_0xd262('0x12'));var config=require(_0xd262('0x13'));var db=require(_0xd262('0x14'))['db'];function respondWithStatusCode(_0x26ced0,_0xe44eee){_0xe44eee=_0xe44eee||0xcc;return function(_0x244eec){if(_0x244eec){return _0x26ced0[_0xd262('0x15')](_0xe44eee);}return _0x26ced0[_0xd262('0x16')](_0xe44eee)[_0xd262('0x17')]();};}function respondWithResult(_0x3e0252,_0x45a6bb){_0x45a6bb=_0x45a6bb||0xc8;return function(_0x4f54fd){if(_0x4f54fd){return _0x3e0252['status'](_0x45a6bb)['json'](_0x4f54fd);}};}function respondWithFilteredResult(_0x101ab8,_0x5575ab){return function(_0x81675d){if(_0x81675d){var _0x5b26c9=_0x81675d['count'],_0x4e2faf=_0x5575ab[_0xd262('0x18')],_0x495f94=_0x5575ab[_0xd262('0x18')]+_0x5575ab[_0xd262('0x19')],_0x358b86;if(_0x495f94>=_0x5b26c9){_0x495f94=_0x5b26c9;_0x358b86=0xc8;}else{_0x358b86=0xce;}_0x101ab8[_0xd262('0x16')](_0x358b86);return _0x101ab8[_0xd262('0x1a')](_0xd262('0x1b'),_0x4e2faf+'-'+_0x495f94+'/'+_0x5b26c9)[_0xd262('0x1c')](_0x81675d);}return null;};}function patchUpdates(_0x1821a2){return function(_0x57565f){try{jsonpatch['apply'](_0x57565f,_0x1821a2,!![]);}catch(_0x38c107){return BPromise['reject'](_0x38c107);}return _0x57565f[_0xd262('0x1d')]();};}function saveUpdates(_0x27359d,_0x77a51a){return function(_0x2c1d52){if(_0x2c1d52){return _0x2c1d52[_0xd262('0x1e')](_0x27359d)['then'](function(_0x247d6c){return _0x247d6c;});}return null;};}function removeEntity(_0xd2ccda,_0x471476){return function(_0x47fe1b){if(_0x47fe1b){return _0x47fe1b[_0xd262('0x1f')]()[_0xd262('0x20')](function(){_0xd2ccda['status'](0xcc)[_0xd262('0x17')]();});}};}function handleEntityNotFound(_0x3fed4e,_0x175394){return function(_0x4e8ee9){if(!_0x4e8ee9){_0x3fed4e[_0xd262('0x15')](0x194);}return _0x4e8ee9;};}function handleError(_0x2c8795,_0x241305){_0x241305=_0x241305||0x1f4;return function(_0x88600a){logger[_0xd262('0x21')](_0x88600a[_0xd262('0x22')]);if(_0x88600a['name']){delete _0x88600a[_0xd262('0x23')];}_0x2c8795[_0xd262('0x16')](_0x241305)[_0xd262('0x24')](_0x88600a);};}exports[_0xd262('0x25')]=function(_0x27c347,_0x213795){var _0x522639={},_0x26bc65={},_0x51470f={'count':0x0,'rows':[]};var _0x18088a=_['map'](db[_0xd262('0x26')][_0xd262('0x27')],function(_0x5288d7){return{'name':_0x5288d7[_0xd262('0x28')],'type':_0x5288d7[_0xd262('0x29')][_0xd262('0x2a')]};});_0x26bc65[_0xd262('0x2b')]=_[_0xd262('0x2c')](_[_0xd262('0x2d')](_0x18088a,_0xd262('0x23')),['format']);_0x26bc65[_0xd262('0x2e')]=_['keys'](_0x27c347[_0xd262('0x2e')]);_0x26bc65[_0xd262('0x2f')]=_[_0xd262('0x30')](_0x26bc65[_0xd262('0x2b')],_0x26bc65[_0xd262('0x2e')]);_0x522639['attributes']=_[_0xd262('0x30')](_0x26bc65[_0xd262('0x2b')],qs[_0xd262('0x31')](_0x27c347[_0xd262('0x2e')][_0xd262('0x31')]));_0x522639['attributes']=_0x522639['attributes']['length']?_0x522639[_0xd262('0x32')]:_0x26bc65[_0xd262('0x2b')];if(!_0x27c347[_0xd262('0x2e')]['hasOwnProperty'](_0xd262('0x33'))){_0x522639[_0xd262('0x19')]=qs[_0xd262('0x19')](_0x27c347['query']['limit']);_0x522639[_0xd262('0x18')]=qs[_0xd262('0x18')](_0x27c347[_0xd262('0x2e')][_0xd262('0x18')]);}_0x522639['order']=qs[_0xd262('0x34')](_0x27c347[_0xd262('0x2e')]['sort']);_0x522639[_0xd262('0x35')]=qs[_0xd262('0x2f')](_[_0xd262('0x36')](_0x27c347[_0xd262('0x2e')],_0x26bc65['filters']),_0x18088a);if(_0x27c347[_0xd262('0x2e')][_0xd262('0x37')]){_0x522639[_0xd262('0x35')]=_[_0xd262('0x38')](_0x522639['where'],{'$or':_[_0xd262('0x2d')](_0x18088a,function(_0x18db46){if(_0x18db46[_0xd262('0x29')]!==_0xd262('0x39')){var _0x3aa5df={};_0x3aa5df[_0x18db46[_0xd262('0x23')]]={'$like':'%'+_0x27c347['query'][_0xd262('0x37')]+'%'};return _0x3aa5df;}})});}_0x522639=_['merge']({},_0x522639,_0x27c347[_0xd262('0x3a')]);var _0xf42237={'where':_0x522639['where']};return db[_0xd262('0x26')][_0xd262('0x3b')](_0xf42237)[_0xd262('0x20')](function(_0x17e65b){_0x51470f['count']=_0x17e65b;if(_0x27c347['query']['includeAll']){_0x522639[_0xd262('0x3c')]=[{'all':!![]}];}return db[_0xd262('0x26')][_0xd262('0x3d')](_0x522639);})[_0xd262('0x20')](function(_0x4730f5){_0x51470f[_0xd262('0x3e')]=_0x4730f5;return _0x51470f;})[_0xd262('0x20')](respondWithFilteredResult(_0x213795,_0x522639))['catch'](handleError(_0x213795,null));};exports[_0xd262('0x3f')]=function(_0x26382b,_0x548c16){var _0x5895aa={'raw':![],'where':{'id':_0x26382b[_0xd262('0x40')]['id']}},_0x41f403={};_0x41f403[_0xd262('0x2b')]=_['keys'](db['ScreenRecording']['rawAttributes']);_0x41f403[_0xd262('0x2e')]=_[_0xd262('0x41')](_0x26382b['query']);_0x41f403[_0xd262('0x2f')]=_[_0xd262('0x30')](_0x41f403['model'],_0x41f403[_0xd262('0x2e')]);_0x5895aa[_0xd262('0x32')]=_[_0xd262('0x30')](_0x41f403['model'],qs['fields'](_0x26382b[_0xd262('0x2e')][_0xd262('0x31')]));_0x5895aa[_0xd262('0x32')]=_0x5895aa[_0xd262('0x32')][_0xd262('0x42')]?_0x5895aa[_0xd262('0x32')]:_0x41f403[_0xd262('0x2b')];if(_0x26382b['query']['includeAll']){_0x5895aa['include']=[{'all':!![]}];}_0x5895aa=_[_0xd262('0x38')]({},_0x5895aa,_0x26382b[_0xd262('0x3a')]);return db['ScreenRecording'][_0xd262('0x43')](_0x5895aa)[_0xd262('0x20')](handleEntityNotFound(_0x548c16,null))['then'](respondWithResult(_0x548c16,null))['catch'](handleError(_0x548c16,null));};exports['create']=function(_0x5119c1,_0x42f30b){return db[_0xd262('0x26')][_0xd262('0x44')](_0x5119c1[_0xd262('0x45')],{})[_0xd262('0x20')](respondWithResult(_0x42f30b,0xc9))['catch'](handleError(_0x42f30b,null));};exports['update']=function(_0x3af8aa,_0x45272e){if(_0x3af8aa[_0xd262('0x45')]['id']){delete _0x3af8aa[_0xd262('0x45')]['id'];}delete _0x3af8aa[_0xd262('0x45')][_0xd262('0x46')];delete _0x3af8aa[_0xd262('0x45')][_0xd262('0x47')];delete _0x3af8aa[_0xd262('0x45')][_0xd262('0x48')];delete _0x3af8aa['body'][_0xd262('0x49')];return db[_0xd262('0x26')]['find']({'where':{'id':_0x3af8aa['params']['id']}})[_0xd262('0x20')](handleEntityNotFound(_0x45272e,null))[_0xd262('0x20')](saveUpdates(_0x3af8aa[_0xd262('0x45')],null))[_0xd262('0x20')](respondWithResult(_0x45272e,null))[_0xd262('0x4a')](handleError(_0x45272e,null));};exports[_0xd262('0x4b')]=function(_0x5cd317,_0x394868){return db[_0xd262('0x26')][_0xd262('0x4b')]()['then'](respondWithResult(_0x394868,null))[_0xd262('0x4a')](handleError(_0x394868,null));};exports[_0xd262('0x4c')]=function(_0x32f3cc,_0x465d88,_0x472c8a){var _0x3b6044=require(_0xd262('0x4d'));var _0x1ffa24=![];var _0x38aed6={};if(_0x32f3cc[_0xd262('0x2e')]['type']&&_0x32f3cc[_0xd262('0x2e')][_0xd262('0x29')]==='uniqueid'){_0x38aed6[_0xd262('0x4e')]=_0x32f3cc['params']['id'];}else{_0x38aed6['id']=_0x32f3cc['params']['id'];}return db[_0xd262('0x26')][_0xd262('0x43')]({'where':_0x38aed6,'attributes':['id',_0xd262('0x49')],'raw':!![]})['then'](handleEntityNotFound(_0x465d88,null))[_0xd262('0x20')](function(_0xdb1d3f){if(_0xdb1d3f){var _0x385c52=path[_0xd262('0x4f')](config[_0xd262('0x50')],_0xd262('0x51'),_0xdb1d3f[_0xd262('0x49')]);var _0x301f07=util[_0xd262('0x52')](_0xd262('0x53'),_0x385c52);if(fs[_0xd262('0x54')](_0x301f07)){_0x1ffa24=!![];return _0x3b6044[_0xd262('0x55')](_0x301f07,_0x385c52,config[_0xd262('0x56')][_0xd262('0x57')])[_0xd262('0x20')](function(){return _0xdb1d3f;});}return _0xdb1d3f;}})[_0xd262('0x20')](function(_0x936a6a){if(_0x936a6a){var _0x1d9fc3=path[_0xd262('0x4f')](config[_0xd262('0x50')],_0xd262('0x51'),_0x936a6a['value']);if(!fs['existsSync'](_0x1d9fc3)){throw new db['Sequelize'][(_0xd262('0x58'))](_0xd262('0x59'));}if(_0x936a6a['filename']){return _0x465d88[_0xd262('0x4c')](_0x1d9fc3,_0x936a6a[_0xd262('0x5a')]+path[_0xd262('0x5b')](_0x1d9fc3),function(){if(_0x1ffa24){fs[_0xd262('0x5c')](_0x1d9fc3);}});}else{return _0x465d88[_0xd262('0x4c')](_0x1d9fc3,function(_0x5f334d){if(_0x1ffa24){fs[_0xd262('0x5c')](_0x1d9fc3);}});}}})[_0xd262('0x4a')](function(_0x47f4bb){if(_0x47f4bb[_0xd262('0x5d')]===_0xd262('0x59')){_0x465d88['status'](0x194)['send']('Not\x20found');}else{return handleError(_0x465d88,null);}});};exports[_0xd262('0x1f')]=function(_0x5de144,_0x1767dd){return db['ScreenRecording'][_0xd262('0x43')]({'where':{'id':_0x5de144[_0xd262('0x40')]['id']}})['then'](function(_0x127ae2){if(!_0x127ae2)throw new ReferenceError('Entity\x20not\x20found');return _0x127ae2;})[_0xd262('0x20')](function(_0xb97c01){var _0x5ae38d=path['join'](config['root'],_0xd262('0x51'),_0xb97c01[_0xd262('0x49')]);logger[_0xd262('0x5e')]('cancellazione\x20fisica\x20documento\x20%s',_0x5ae38d);if(!_[_0xd262('0x5f')](_0xb97c01[_0xd262('0x49')])&&fs[_0xd262('0x54')](_0x5ae38d)){logger['info'](_0xd262('0x60')+_0x5ae38d+_0xd262('0x61'));fs[_0xd262('0x62')](_0x5ae38d);}_0x5ae38d=_0x5ae38d+_0xd262('0x63');if(!_[_0xd262('0x5f')](_0xb97c01[_0xd262('0x49')])&&fs[_0xd262('0x54')](_0x5ae38d)){logger[_0xd262('0x5e')](_0xd262('0x60')+_0x5ae38d+_0xd262('0x61'));fs[_0xd262('0x62')](_0x5ae38d);}return _0xb97c01;})[_0xd262('0x20')](function(_0x5e37ff){if(!_0x5e37ff)throw new InternalError();return _0x5e37ff[_0xd262('0x1f')]();})['then'](function(){_0x1767dd['status'](0xcc)['end']();})[_0xd262('0x4a')](handleError(_0x1767dd,null));};