Built motion from commit (unavailable).|2.5.6
[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 _0x6edf=['fieldName','model','map','query','keys','filters','intersection','attributes','fields','hasOwnProperty','nolimit','sort','where','pick','filter','merge','type','VIRTUAL','options','count','include','findAll','catch','params','filtears','length','find','create','body','update','download','../../components/encryptor','uniqueid','savePath','filename','format','%s.cypher','existsSync','secrets','Sequelize','SquareRecording\x20not\x20found','extname','unlink','message','Not\x20found','Entity\x20not\x20found','info','cancellazione\x20fisica\x20documento\x20%s','File:\x20\x22','\x22\x20trovato\x20eseguo\x20la\x20cancellazione','unlinkSync','.cypher','isNil','html-pdf','eml-format','fast-json-patch','request-promise','bluebird','util','path','sox','to-csv','lodash','squel','crypto','jsforce','desk.js','querystring','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','end','json','offset','limit','set','Content-Range','apply','save','then','destroy','error','stack','name','send','index','SquareRecording','rawAttributes'];(function(_0x4f8f3b,_0x43281b){var _0x4c250c=function(_0x19a7ff){while(--_0x19a7ff){_0x4f8f3b['push'](_0x4f8f3b['shift']());}};_0x4c250c(++_0x43281b);}(_0x6edf,0x158));var _0xf6ed=function(_0x1ae225,_0x4ba514){_0x1ae225=_0x1ae225-0x0;var _0x363a13=_0x6edf[_0x1ae225];return _0x363a13;};'use strict';var pdf=require(_0xf6ed('0x0'));var emlformat=require(_0xf6ed('0x1'));var rimraf=require('rimraf');var zipdir=require('zip-dir');var jsonpatch=require(_0xf6ed('0x2'));var rp=require(_0xf6ed('0x3'));var moment=require('moment');var BPromise=require(_0xf6ed('0x4'));var Mustache=require('mustache');var util=require(_0xf6ed('0x5'));var path=require(_0xf6ed('0x6'));var sox=require(_0xf6ed('0x7'));var csv=require(_0xf6ed('0x8'));var ejs=require('ejs');var fs=require('fs');var _=require(_0xf6ed('0x9'));var squel=require(_0xf6ed('0xa'));var crypto=require(_0xf6ed('0xb'));var jsforce=require(_0xf6ed('0xc'));var deskjs=require(_0xf6ed('0xd'));var toCsv=require(_0xf6ed('0x8'));var querystring=require(_0xf6ed('0xe'));var Papa=require('papaparse');var Redis=require(_0xf6ed('0xf'));var authService=require(_0xf6ed('0x10'));var qs=require(_0xf6ed('0x11'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0xf6ed('0x12'));var logger=require(_0xf6ed('0x13'))(_0xf6ed('0x14'));var utils=require(_0xf6ed('0x15'));var config=require(_0xf6ed('0x16'));var licenseUtil=require(_0xf6ed('0x17'));var db=require(_0xf6ed('0x18'))['db'];function respondWithStatusCode(_0x370f8a,_0x4acb1f){_0x4acb1f=_0x4acb1f||0xcc;return function(_0x3064e5){if(_0x3064e5){return _0x370f8a[_0xf6ed('0x19')](_0x4acb1f);}return _0x370f8a[_0xf6ed('0x1a')](_0x4acb1f)[_0xf6ed('0x1b')]();};}function respondWithResult(_0x37eee1,_0x12bbdc){_0x12bbdc=_0x12bbdc||0xc8;return function(_0x487f94){if(_0x487f94){return _0x37eee1[_0xf6ed('0x1a')](_0x12bbdc)[_0xf6ed('0x1c')](_0x487f94);}};}function respondWithFilteredResult(_0x55b1fc,_0xe3f868){return function(_0x4a9b06){if(_0x4a9b06){var _0x4b36fa=_0x4a9b06['count'],_0x31a43d=_0xe3f868['offset'],_0x1f1823=_0xe3f868[_0xf6ed('0x1d')]+_0xe3f868[_0xf6ed('0x1e')],_0x420c7a;if(_0x1f1823>=_0x4b36fa){_0x1f1823=_0x4b36fa;_0x420c7a=0xc8;}else{_0x420c7a=0xce;}_0x55b1fc[_0xf6ed('0x1a')](_0x420c7a);return _0x55b1fc[_0xf6ed('0x1f')](_0xf6ed('0x20'),_0x31a43d+'-'+_0x1f1823+'/'+_0x4b36fa)[_0xf6ed('0x1c')](_0x4a9b06);}return null;};}function patchUpdates(_0x2d3bba){return function(_0x2387b4){try{jsonpatch[_0xf6ed('0x21')](_0x2387b4,_0x2d3bba,!![]);}catch(_0x5b7a6a){return BPromise['reject'](_0x5b7a6a);}return _0x2387b4[_0xf6ed('0x22')]();};}function saveUpdates(_0x598e85,_0x34a339){return function(_0x5339fa){if(_0x5339fa){return _0x5339fa['update'](_0x598e85)[_0xf6ed('0x23')](function(_0x5a35dd){return _0x5a35dd;});}return null;};}function removeEntity(_0xad2d32,_0x1ad707){return function(_0x3309ca){if(_0x3309ca){return _0x3309ca[_0xf6ed('0x24')]()[_0xf6ed('0x23')](function(){_0xad2d32[_0xf6ed('0x1a')](0xcc)['end']();});}};}function handleEntityNotFound(_0x160c99,_0x4889a5){return function(_0x3cde08){if(!_0x3cde08){_0x160c99[_0xf6ed('0x19')](0x194);}return _0x3cde08;};}function handleError(_0x2a96bc,_0x374043){_0x374043=_0x374043||0x1f4;return function(_0x5c68a3){logger[_0xf6ed('0x25')](_0x5c68a3[_0xf6ed('0x26')]);if(_0x5c68a3[_0xf6ed('0x27')]){delete _0x5c68a3[_0xf6ed('0x27')];}_0x2a96bc[_0xf6ed('0x1a')](_0x374043)[_0xf6ed('0x28')](_0x5c68a3);};}exports[_0xf6ed('0x29')]=function(_0x1e628c,_0x3ac31a){var _0x4ec7cc={},_0xe7f8df={},_0x4d6de8={'count':0x0,'rows':[]};var _0x40eac3=_['map'](db[_0xf6ed('0x2a')][_0xf6ed('0x2b')],function(_0x171896){return{'name':_0x171896[_0xf6ed('0x2c')],'type':_0x171896['type']['key']};});_0xe7f8df[_0xf6ed('0x2d')]=_[_0xf6ed('0x2e')](_0x40eac3,'name');_0xe7f8df[_0xf6ed('0x2f')]=_[_0xf6ed('0x30')](_0x1e628c['query']);_0xe7f8df[_0xf6ed('0x31')]=_[_0xf6ed('0x32')](_0xe7f8df[_0xf6ed('0x2d')],_0xe7f8df[_0xf6ed('0x2f')]);_0x4ec7cc[_0xf6ed('0x33')]=_[_0xf6ed('0x32')](_0xe7f8df['model'],qs[_0xf6ed('0x34')](_0x1e628c[_0xf6ed('0x2f')]['fields']));_0x4ec7cc[_0xf6ed('0x33')]=_0x4ec7cc['attributes']['length']?_0x4ec7cc[_0xf6ed('0x33')]:_0xe7f8df[_0xf6ed('0x2d')];if(!_0x1e628c[_0xf6ed('0x2f')][_0xf6ed('0x35')](_0xf6ed('0x36'))){_0x4ec7cc[_0xf6ed('0x1e')]=qs[_0xf6ed('0x1e')](_0x1e628c[_0xf6ed('0x2f')][_0xf6ed('0x1e')]);_0x4ec7cc['offset']=qs['offset'](_0x1e628c[_0xf6ed('0x2f')][_0xf6ed('0x1d')]);}_0x4ec7cc['order']=qs[_0xf6ed('0x37')](_0x1e628c['query']['sort']);_0x4ec7cc[_0xf6ed('0x38')]=qs[_0xf6ed('0x31')](_[_0xf6ed('0x39')](_0x1e628c[_0xf6ed('0x2f')],_0xe7f8df['filters']),_0x40eac3);if(_0x1e628c[_0xf6ed('0x2f')][_0xf6ed('0x3a')]){_0x4ec7cc[_0xf6ed('0x38')]=_[_0xf6ed('0x3b')](_0x4ec7cc['where'],{'$or':_[_0xf6ed('0x2e')](_0x40eac3,function(_0x16bc5d){if(_0x16bc5d[_0xf6ed('0x3c')]!==_0xf6ed('0x3d')){var _0x584bcc={};_0x584bcc[_0x16bc5d[_0xf6ed('0x27')]]={'$like':'%'+_0x1e628c[_0xf6ed('0x2f')]['filter']+'%'};return _0x584bcc;}})});}_0x4ec7cc=_[_0xf6ed('0x3b')]({},_0x4ec7cc,_0x1e628c[_0xf6ed('0x3e')]);var _0x5c59e1={'where':_0x4ec7cc['where']};return db[_0xf6ed('0x2a')][_0xf6ed('0x3f')](_0x5c59e1)[_0xf6ed('0x23')](function(_0x3cb4b6){_0x4d6de8[_0xf6ed('0x3f')]=_0x3cb4b6;if(_0x1e628c[_0xf6ed('0x2f')]['includeAll']){_0x4ec7cc[_0xf6ed('0x40')]=[{'all':!![]}];}return db['SquareRecording'][_0xf6ed('0x41')](_0x4ec7cc);})[_0xf6ed('0x23')](function(_0x5c9231){_0x4d6de8['rows']=_0x5c9231;return _0x4d6de8;})[_0xf6ed('0x23')](respondWithFilteredResult(_0x3ac31a,_0x4ec7cc))[_0xf6ed('0x42')](handleError(_0x3ac31a,null));};exports['show']=function(_0x1fd210,_0x29025a){var _0x4ab0bd={'raw':!![],'where':{'id':_0x1fd210[_0xf6ed('0x43')]['id']}},_0x5c4139={};_0x5c4139[_0xf6ed('0x2d')]=_[_0xf6ed('0x30')](db['SquareRecording'][_0xf6ed('0x2b')]);_0x5c4139[_0xf6ed('0x2f')]=_[_0xf6ed('0x30')](_0x1fd210[_0xf6ed('0x2f')]);_0x5c4139[_0xf6ed('0x44')]=_[_0xf6ed('0x32')](_0x5c4139[_0xf6ed('0x2d')],_0x5c4139[_0xf6ed('0x2f')]);_0x4ab0bd[_0xf6ed('0x33')]=_[_0xf6ed('0x32')](_0x5c4139[_0xf6ed('0x2d')],qs[_0xf6ed('0x34')](_0x1fd210[_0xf6ed('0x2f')][_0xf6ed('0x34')]));_0x4ab0bd[_0xf6ed('0x33')]=_0x4ab0bd[_0xf6ed('0x33')][_0xf6ed('0x45')]?_0x4ab0bd[_0xf6ed('0x33')]:_0x5c4139[_0xf6ed('0x2d')];if(_0x1fd210[_0xf6ed('0x2f')]['includeAll']){_0x4ab0bd[_0xf6ed('0x40')]=[{'all':!![]}];}_0x4ab0bd=_[_0xf6ed('0x3b')]({},_0x4ab0bd,_0x1fd210['options']);return db[_0xf6ed('0x2a')][_0xf6ed('0x46')](_0x4ab0bd)['then'](handleEntityNotFound(_0x29025a,null))[_0xf6ed('0x23')](respondWithResult(_0x29025a,null))[_0xf6ed('0x42')](handleError(_0x29025a,null));};exports[_0xf6ed('0x47')]=function(_0x3ff5cf,_0x37b3da){return db['SquareRecording'][_0xf6ed('0x47')](_0x3ff5cf[_0xf6ed('0x48')],{})[_0xf6ed('0x23')](respondWithResult(_0x37b3da,0xc9))[_0xf6ed('0x42')](handleError(_0x37b3da,null));};exports[_0xf6ed('0x49')]=function(_0x473b7d,_0x354da9){if(_0x473b7d[_0xf6ed('0x48')]['id']){delete _0x473b7d['body']['id'];}return db[_0xf6ed('0x2a')][_0xf6ed('0x46')]({'where':{'id':_0x473b7d[_0xf6ed('0x43')]['id']}})[_0xf6ed('0x23')](handleEntityNotFound(_0x354da9,null))['then'](saveUpdates(_0x473b7d[_0xf6ed('0x48')],null))[_0xf6ed('0x23')](respondWithResult(_0x354da9,null))[_0xf6ed('0x42')](handleError(_0x354da9,null));};exports[_0xf6ed('0x4a')]=function(_0x468c41,_0x51d6b1,_0x3e15c9){var _0x539dd0=require(_0xf6ed('0x4b'));var _0x5703b9=![];var _0x2b73d7={};if(_0x468c41[_0xf6ed('0x2f')]['type']&&_0x468c41[_0xf6ed('0x2f')][_0xf6ed('0x3c')]===_0xf6ed('0x4c')){_0x2b73d7[_0xf6ed('0x4c')]=_0x468c41[_0xf6ed('0x43')]['id'];}else{_0x2b73d7['id']=_0x468c41[_0xf6ed('0x43')]['id'];}return db[_0xf6ed('0x2a')][_0xf6ed('0x46')]({'where':_0x2b73d7,'attributes':['id',_0xf6ed('0x4d'),_0xf6ed('0x4e')],'raw':!![]})[_0xf6ed('0x23')](handleEntityNotFound(_0x51d6b1,null))[_0xf6ed('0x23')](function(_0x4a2ac9){if(_0x4a2ac9){var _0xde4e40=_0x4a2ac9['savePath'];var _0x28d966=util[_0xf6ed('0x4f')](_0xf6ed('0x50'),_0xde4e40);if(fs[_0xf6ed('0x51')](_0x28d966)){_0x5703b9=!![];return _0x539dd0['decryptFile'](_0x28d966,_0xde4e40,config[_0xf6ed('0x52')]['recording'])[_0xf6ed('0x23')](function(){return _0x4a2ac9;});}return _0x4a2ac9;}})['then'](function(_0x37867c){if(_0x37867c){var _0x310090=_0x37867c[_0xf6ed('0x4d')];if(!fs[_0xf6ed('0x51')](_0x310090)){throw new db[(_0xf6ed('0x53'))]['ValidationError'](_0xf6ed('0x54'));}if(_0x37867c['filename']){return _0x51d6b1[_0xf6ed('0x4a')](_0x310090,_0x37867c['filename']+path[_0xf6ed('0x55')](_0x310090),function(){if(_0x5703b9){fs[_0xf6ed('0x56')](_0x310090);}});}else{return _0x51d6b1['download'](_0x310090,function(_0x298fe4){if(_0x5703b9){fs[_0xf6ed('0x56')](_0x310090);}});}}})['catch'](function(_0x2240b1){if(_0x2240b1[_0xf6ed('0x57')]==='SquareRecording\x20not\x20found'){_0x51d6b1[_0xf6ed('0x1a')](0x194)['send'](_0xf6ed('0x58'));}else{return handleError(_0x51d6b1,null);}});};exports['destroy']=function(_0x1df1ad,_0x54d3ce){return db[_0xf6ed('0x2a')][_0xf6ed('0x46')]({'where':{'id':_0x1df1ad[_0xf6ed('0x43')]['id']}})[_0xf6ed('0x23')](function(_0x243c09){if(!_0x243c09)throw new ReferenceError(_0xf6ed('0x59'));return _0x243c09;})[_0xf6ed('0x23')](function(_0x21d09c){var _0x58ead8=_0x21d09c[_0xf6ed('0x4d')];logger[_0xf6ed('0x5a')](_0xf6ed('0x5b'),_0x58ead8);if(!_['isNil'](_0x21d09c[_0xf6ed('0x4d')])&&fs[_0xf6ed('0x51')](_0x58ead8)){logger[_0xf6ed('0x5a')](_0xf6ed('0x5c')+_0x58ead8+_0xf6ed('0x5d'));fs[_0xf6ed('0x5e')](_0x58ead8);}_0x58ead8=_0x58ead8+_0xf6ed('0x5f');if(!_[_0xf6ed('0x60')](_0x21d09c[_0xf6ed('0x4d')])&&fs[_0xf6ed('0x51')](_0x58ead8)){logger[_0xf6ed('0x5a')](_0xf6ed('0x5c')+_0x58ead8+_0xf6ed('0x5d'));fs[_0xf6ed('0x5e')](_0x58ead8);}return _0x21d09c;})['then'](function(_0x581075){if(!_0x581075)throw new InternalError();return _0x581075[_0xf6ed('0x24')]();})[_0xf6ed('0x23')](function(){_0x54d3ce[_0xf6ed('0x1a')](0xcc)['end']();})[_0xf6ed('0x42')](handleError(_0x54d3ce,null));};