Built motion from commit (unavailable).|2.3.4
[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 _0x1cc9=['../../config/environment','../../mysqldb','end','status','json','count','limit','set','Content-Range','apply','reject','save','update','then','destroy','error','send','index','SquareRecording','rawAttributes','model','keys','query','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','offset','sort','pick','filter','where','map','type','key','VIRTUAL','field','merge','options','includeAll','include','findAll','show','params','find','create','body','catch','download','uniqueid','savePath','filename','format','%s.cypher','value','existsSync','decryptFile','secrets','recording','Sequelize','ValidationError','SquareRecording\x20not\x20found','extname','unlink','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','to-csv','ejs','squel','crypto','jsforce','papaparse','../../config/license/hardware','../../components/parsers/qs','api','../../config/utils'];(function(_0x5783f4,_0x4a9e0a){var _0x28e380=function(_0x1ffc49){while(--_0x1ffc49){_0x5783f4['push'](_0x5783f4['shift']());}};_0x28e380(++_0x4a9e0a);}(_0x1cc9,0x1f1));var _0x91cc=function(_0x2313e8,_0x332e97){_0x2313e8=_0x2313e8-0x0;var _0x482a35=_0x1cc9[_0x2313e8];return _0x482a35;};'use strict';var pdf=require('html-pdf');var emlformat=require(_0x91cc('0x0'));var rimraf=require(_0x91cc('0x1'));var zipdir=require(_0x91cc('0x2'));var jsonpatch=require(_0x91cc('0x3'));var rp=require(_0x91cc('0x4'));var moment=require(_0x91cc('0x5'));var BPromise=require(_0x91cc('0x6'));var Mustache=require(_0x91cc('0x7'));var util=require(_0x91cc('0x8'));var path=require('path');var sox=require('sox');var csv=require(_0x91cc('0x9'));var ejs=require(_0x91cc('0xa'));var fs=require('fs');var _=require('lodash');var squel=require(_0x91cc('0xb'));var crypto=require(_0x91cc('0xc'));var jsforce=require(_0x91cc('0xd'));var deskjs=require('desk.js');var toCsv=require('to-csv');var querystring=require('querystring');var Papa=require(_0x91cc('0xe'));var authService=require('../../components/auth/service');var hardwareService=require(_0x91cc('0xf'));var Redis=require('ioredis');var qs=require(_0x91cc('0x10'));var logger=require('../../config/logger')(_0x91cc('0x11'));var utils=require(_0x91cc('0x12'));var config=require(_0x91cc('0x13'));var db=require(_0x91cc('0x14'))['db'];function respondWithStatusCode(_0x17ebf7,_0x5c3b8a){_0x5c3b8a=_0x5c3b8a||0xcc;return function(_0x1756c2){if(_0x1756c2){return _0x17ebf7['sendStatus'](_0x5c3b8a);}return _0x17ebf7['status'](_0x5c3b8a)[_0x91cc('0x15')]();};}function respondWithResult(_0x451241,_0x5319a0){_0x5319a0=_0x5319a0||0xc8;return function(_0x1eddc0){if(_0x1eddc0){return _0x451241[_0x91cc('0x16')](_0x5319a0)[_0x91cc('0x17')](_0x1eddc0);}};}function respondWithFilteredResult(_0x583e22,_0x2ba656){return function(_0x529982){if(_0x529982){var _0x46ea3e=_0x529982[_0x91cc('0x18')],_0x1e23c0=_0x2ba656['offset'],_0x5becf9=_0x2ba656['offset']+_0x2ba656[_0x91cc('0x19')],_0x1b24a7;if(_0x5becf9>=_0x46ea3e){_0x5becf9=_0x46ea3e;_0x1b24a7=0xc8;}else{_0x1b24a7=0xce;}_0x583e22[_0x91cc('0x16')](_0x1b24a7);return _0x583e22[_0x91cc('0x1a')](_0x91cc('0x1b'),_0x1e23c0+'-'+_0x5becf9+'/'+_0x46ea3e)[_0x91cc('0x17')](_0x529982);}return null;};}function patchUpdates(_0x5c1091){return function(_0x2e8dec){try{jsonpatch[_0x91cc('0x1c')](_0x2e8dec,_0x5c1091,!![]);}catch(_0x55cb31){return BPromise[_0x91cc('0x1d')](_0x55cb31);}return _0x2e8dec[_0x91cc('0x1e')]();};}function saveUpdates(_0xf8e911,_0xcce020){return function(_0x3edb0a){if(_0x3edb0a){return _0x3edb0a[_0x91cc('0x1f')](_0xf8e911)[_0x91cc('0x20')](function(_0x39d5c4){return _0x39d5c4;});}return null;};}function removeEntity(_0x55b8c9,_0x4fa38c){return function(_0xc6ad78){if(_0xc6ad78){return _0xc6ad78[_0x91cc('0x21')]()[_0x91cc('0x20')](function(){_0x55b8c9[_0x91cc('0x16')](0xcc)[_0x91cc('0x15')]();});}};}function handleEntityNotFound(_0xd9f311,_0x1a48ca){return function(_0x36461f){if(!_0x36461f){_0xd9f311['sendStatus'](0x194);}return _0x36461f;};}function handleError(_0x2a5538,_0xd122e7){_0xd122e7=_0xd122e7||0x1f4;return function(_0x4c17f0){logger[_0x91cc('0x22')](_0x4c17f0['stack']);if(_0x4c17f0['name']){delete _0x4c17f0['name'];}_0x2a5538[_0x91cc('0x16')](_0xd122e7)[_0x91cc('0x23')](_0x4c17f0);};}exports[_0x91cc('0x24')]=function(_0x356c4e,_0x35ebed){var _0x4e5852={},_0x227253={},_0x57993e={'count':0x0,'rows':[]};var _0x29a985=db[_0x91cc('0x25')][_0x91cc('0x26')];_0x227253[_0x91cc('0x27')]=_[_0x91cc('0x28')](_0x29a985);_0x227253['query']=_[_0x91cc('0x28')](_0x356c4e[_0x91cc('0x29')]);_0x227253[_0x91cc('0x2a')]=_[_0x91cc('0x2b')](_0x227253[_0x91cc('0x27')],_0x227253[_0x91cc('0x29')]);_0x4e5852[_0x91cc('0x2c')]=_[_0x91cc('0x2b')](_0x227253[_0x91cc('0x27')],qs[_0x91cc('0x2d')](_0x356c4e[_0x91cc('0x29')][_0x91cc('0x2d')]));_0x4e5852['attributes']=_0x4e5852[_0x91cc('0x2c')][_0x91cc('0x2e')]?_0x4e5852[_0x91cc('0x2c')]:_0x227253[_0x91cc('0x27')];if(!_0x356c4e[_0x91cc('0x29')][_0x91cc('0x2f')](_0x91cc('0x30'))){_0x4e5852[_0x91cc('0x19')]=qs[_0x91cc('0x19')](_0x356c4e[_0x91cc('0x29')]['limit']);_0x4e5852[_0x91cc('0x31')]=qs[_0x91cc('0x31')](_0x356c4e[_0x91cc('0x29')][_0x91cc('0x31')]);}_0x4e5852['order']=qs['sort'](_0x356c4e[_0x91cc('0x29')][_0x91cc('0x32')]);_0x4e5852['where']=qs['filters'](_[_0x91cc('0x33')](_0x356c4e[_0x91cc('0x29')],_0x227253[_0x91cc('0x2a')]));if(_0x356c4e[_0x91cc('0x29')][_0x91cc('0x34')]){_0x4e5852[_0x91cc('0x35')]=_['merge'](_0x4e5852[_0x91cc('0x35')],{'$or':_[_0x91cc('0x36')](_0x29a985,function(_0x2ef6cd){if(_0x2ef6cd[_0x91cc('0x37')][_0x91cc('0x38')]!==_0x91cc('0x39')){var _0x2559ea={};_0x2559ea[_0x2ef6cd[_0x91cc('0x3a')]]={'$like':'%'+_0x356c4e['query'][_0x91cc('0x34')]+'%'};return _0x2559ea;}})});}_0x4e5852=_[_0x91cc('0x3b')]({},_0x4e5852,_0x356c4e[_0x91cc('0x3c')]);var _0x32d596={'where':_0x4e5852[_0x91cc('0x35')]};return db['SquareRecording'][_0x91cc('0x18')](_0x32d596)[_0x91cc('0x20')](function(_0x28da25){_0x57993e[_0x91cc('0x18')]=_0x28da25;if(_0x356c4e['query'][_0x91cc('0x3d')]){_0x4e5852[_0x91cc('0x3e')]=[{'all':!![]}];}return db[_0x91cc('0x25')][_0x91cc('0x3f')](_0x4e5852);})[_0x91cc('0x20')](function(_0x4d105e){_0x57993e['rows']=_0x4d105e;return _0x57993e;})[_0x91cc('0x20')](respondWithFilteredResult(_0x35ebed,_0x4e5852))['catch'](handleError(_0x35ebed,null));};exports[_0x91cc('0x40')]=function(_0x535030,_0x230101){var _0x315a94={'raw':!![],'where':{'id':_0x535030[_0x91cc('0x41')]['id']}},_0x5d0598={};_0x5d0598['model']=_[_0x91cc('0x28')](db[_0x91cc('0x25')][_0x91cc('0x26')]);_0x5d0598[_0x91cc('0x29')]=_[_0x91cc('0x28')](_0x535030[_0x91cc('0x29')]);_0x5d0598[_0x91cc('0x2a')]=_['intersection'](_0x5d0598[_0x91cc('0x27')],_0x5d0598[_0x91cc('0x29')]);_0x315a94['attributes']=_['intersection'](_0x5d0598[_0x91cc('0x27')],qs['fields'](_0x535030[_0x91cc('0x29')][_0x91cc('0x2d')]));_0x315a94[_0x91cc('0x2c')]=_0x315a94['attributes'][_0x91cc('0x2e')]?_0x315a94[_0x91cc('0x2c')]:_0x5d0598['model'];if(_0x535030[_0x91cc('0x29')][_0x91cc('0x3d')]){_0x315a94[_0x91cc('0x3e')]=[{'all':!![]}];}_0x315a94=_[_0x91cc('0x3b')]({},_0x315a94,_0x535030[_0x91cc('0x3c')]);return db[_0x91cc('0x25')][_0x91cc('0x42')](_0x315a94)[_0x91cc('0x20')](handleEntityNotFound(_0x230101,null))[_0x91cc('0x20')](respondWithResult(_0x230101,null))['catch'](handleError(_0x230101,null));};exports[_0x91cc('0x43')]=function(_0x25324e,_0x2293b6){return db[_0x91cc('0x25')]['create'](_0x25324e[_0x91cc('0x44')],{})['then'](respondWithResult(_0x2293b6,0xc9))[_0x91cc('0x45')](handleError(_0x2293b6,null));};exports[_0x91cc('0x1f')]=function(_0x32a9f,_0x5c5474){if(_0x32a9f[_0x91cc('0x44')]['id']){delete _0x32a9f[_0x91cc('0x44')]['id'];}return db[_0x91cc('0x25')][_0x91cc('0x42')]({'where':{'id':_0x32a9f[_0x91cc('0x41')]['id']}})['then'](handleEntityNotFound(_0x5c5474,null))[_0x91cc('0x20')](saveUpdates(_0x32a9f[_0x91cc('0x44')],null))['then'](respondWithResult(_0x5c5474,null))[_0x91cc('0x45')](handleError(_0x5c5474,null));};exports['destroy']=function(_0x302fed,_0x3f5565){return db[_0x91cc('0x25')][_0x91cc('0x42')]({'where':{'id':_0x302fed['params']['id']}})[_0x91cc('0x20')](handleEntityNotFound(_0x3f5565,null))['then'](removeEntity(_0x3f5565,null))['catch'](handleError(_0x3f5565,null));};exports[_0x91cc('0x46')]=function(_0x58d2eb,_0x451d9a,_0x27bf03){var _0x47b4c9=require('../../components/encryptor');var _0x29ece5=![];var _0x2912a6={};if(_0x58d2eb[_0x91cc('0x29')][_0x91cc('0x37')]&&_0x58d2eb[_0x91cc('0x29')][_0x91cc('0x37')]===_0x91cc('0x47')){_0x2912a6[_0x91cc('0x47')]=_0x58d2eb['params']['id'];}else{_0x2912a6['id']=_0x58d2eb[_0x91cc('0x41')]['id'];}return db[_0x91cc('0x25')][_0x91cc('0x42')]({'where':_0x2912a6,'attributes':['id',_0x91cc('0x48'),_0x91cc('0x49')],'raw':!![]})['then'](handleEntityNotFound(_0x451d9a,null))['then'](function(_0x29e091){if(_0x29e091){var _0x325a72=util[_0x91cc('0x4a')](_0x91cc('0x4b'),_0x29e091[_0x91cc('0x4c')]);if(fs[_0x91cc('0x4d')](_0x325a72)){_0x29ece5=!![];return _0x47b4c9[_0x91cc('0x4e')](_0x325a72,_0x29e091[_0x91cc('0x48')],config[_0x91cc('0x4f')][_0x91cc('0x50')])['then'](function(){return _0x29e091;});}return _0x29e091;}})[_0x91cc('0x20')](function(_0x31e780){if(_0x31e780){if(!fs[_0x91cc('0x4d')](_0x31e780[_0x91cc('0x48')])){throw new db[(_0x91cc('0x51'))][(_0x91cc('0x52'))](_0x91cc('0x53'));}if(_0x31e780['filename']){return _0x451d9a[_0x91cc('0x46')](_0x31e780['savePath'],_0x31e780[_0x91cc('0x49')]+path[_0x91cc('0x54')](_0x31e780['savePath']),function(){if(_0x29ece5){fs[_0x91cc('0x55')](_0x31e780[_0x91cc('0x48')]);}});}else{return _0x451d9a[_0x91cc('0x46')](_0x31e780[_0x91cc('0x48')],function(_0x84321a){if(_0x29ece5){fs[_0x91cc('0x55')](_0x31e780[_0x91cc('0x48')]);}});}}})[_0x91cc('0x45')](handleError(_0x451d9a,null));};