e5866ecf1055de16c7b3a59778529eb0194e45d5
[motion2.git] / server / api / voiceMailMessage / voiceMailMessage.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 _0xfddc=['VoiceMailMessage\x20not\x20found','audio/wav','attachment','Content-Disposition','.wav\x22','eml-format','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','to-csv','ejs','fs-extra','lodash','crypto','jsforce','desk.js','querystring','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','end','json','offset','undefined','limit','count','set','apply','reject','update','then','destroy','error','stack','name','send','map','VoiceMailMessage','rawAttributes','type','key','model','differenceBy','query','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','sort','pick','filter','where','VIRTUAL','merge','includeAll','include','rows','catch','show','params','keys','options','find','create','body','download','recording','msg_id','Sequelize','ValidationError'];(function(_0x1b3564,_0x16c919){var _0x504069=function(_0x9322b6){while(--_0x9322b6){_0x1b3564['push'](_0x1b3564['shift']());}};_0x504069(++_0x16c919);}(_0xfddc,0xaf));var _0xcfdd=function(_0x12f688,_0x585c25){_0x12f688=_0x12f688-0x0;var _0x59c3de=_0xfddc[_0x12f688];return _0x59c3de;};'use strict';var emlformat=require(_0xcfdd('0x0'));var rimraf=require('rimraf');var zipdir=require('zip-dir');var jsonpatch=require(_0xcfdd('0x1'));var rp=require(_0xcfdd('0x2'));var moment=require(_0xcfdd('0x3'));var BPromise=require(_0xcfdd('0x4'));var Mustache=require(_0xcfdd('0x5'));var util=require(_0xcfdd('0x6'));var path=require(_0xcfdd('0x7'));var sox=require('sox');var csv=require(_0xcfdd('0x8'));var ejs=require(_0xcfdd('0x9'));var fs=require('fs');var fs_extra=require(_0xcfdd('0xa'));var _=require(_0xcfdd('0xb'));var squel=require('squel');var crypto=require(_0xcfdd('0xc'));var jsforce=require(_0xcfdd('0xd'));var deskjs=require(_0xcfdd('0xe'));var toCsv=require(_0xcfdd('0x8'));var querystring=require(_0xcfdd('0xf'));var Papa=require('papaparse');var Redis=require('ioredis');var authService=require(_0xcfdd('0x10'));var qs=require('../../components/parsers/qs');var as=require(_0xcfdd('0x11'));var hardwareService=require(_0xcfdd('0x12'));var logger=require(_0xcfdd('0x13'))(_0xcfdd('0x14'));var utils=require('../../config/utils');var config=require(_0xcfdd('0x15'));var licenseUtil=require(_0xcfdd('0x16'));var db=require(_0xcfdd('0x17'))['db'];function respondWithStatusCode(_0x50301d,_0x7c0c13){_0x7c0c13=_0x7c0c13||0xcc;return function(_0x1f8954){if(_0x1f8954){return _0x50301d[_0xcfdd('0x18')](_0x7c0c13);}return _0x50301d[_0xcfdd('0x19')](_0x7c0c13)[_0xcfdd('0x1a')]();};}function respondWithResult(_0x1d3fee,_0x385e59){_0x385e59=_0x385e59||0xc8;return function(_0x2117c5){if(_0x2117c5){return _0x1d3fee[_0xcfdd('0x19')](_0x385e59)[_0xcfdd('0x1b')](_0x2117c5);}};}function respondWithFilteredResult(_0x1faca0,_0x3aa30a){return function(_0x578ec8){if(_0x578ec8){var _0x324372=typeof _0x3aa30a[_0xcfdd('0x1c')]===_0xcfdd('0x1d')&&typeof _0x3aa30a[_0xcfdd('0x1e')]==='undefined';var _0x481853=_0x578ec8[_0xcfdd('0x1f')];var _0x4d43b7=_0x324372?0x0:_0x3aa30a[_0xcfdd('0x1c')];var _0x14e6de=_0x324372?_0x578ec8['count']:_0x3aa30a[_0xcfdd('0x1c')]+_0x3aa30a[_0xcfdd('0x1e')];var _0xb0dbad;if(_0x14e6de>=_0x481853){_0x14e6de=_0x481853;_0xb0dbad=0xc8;}else{_0xb0dbad=0xce;}_0x1faca0['status'](_0xb0dbad);return _0x1faca0[_0xcfdd('0x20')]('Content-Range',_0x4d43b7+'-'+_0x14e6de+'/'+_0x481853)[_0xcfdd('0x1b')](_0x578ec8);}return null;};}function patchUpdates(_0x1af080){return function(_0x2cdeab){try{jsonpatch[_0xcfdd('0x21')](_0x2cdeab,_0x1af080,!![]);}catch(_0x192a56){return BPromise[_0xcfdd('0x22')](_0x192a56);}return _0x2cdeab['save']();};}function saveUpdates(_0x2e866c,_0x401e5b){return function(_0x5d2436){if(_0x5d2436){return _0x5d2436[_0xcfdd('0x23')](_0x2e866c)[_0xcfdd('0x24')](function(_0x4ab0b1){return _0x4ab0b1;});}return null;};}function removeEntity(_0x4dd9cf,_0x397af4){return function(_0x87444){if(_0x87444){return _0x87444[_0xcfdd('0x25')]()[_0xcfdd('0x24')](function(){_0x4dd9cf[_0xcfdd('0x19')](0xcc)[_0xcfdd('0x1a')]();});}};}function handleEntityNotFound(_0x543aa5,_0x462ae8){return function(_0xbe8bda){if(!_0xbe8bda){_0x543aa5['sendStatus'](0x194);}return _0xbe8bda;};}function handleError(_0x1edc1d,_0x1260a3){_0x1260a3=_0x1260a3||0x1f4;return function(_0x3e67aa){logger[_0xcfdd('0x26')](_0x3e67aa[_0xcfdd('0x27')]);if(_0x3e67aa[_0xcfdd('0x28')]){delete _0x3e67aa[_0xcfdd('0x28')];}_0x1edc1d[_0xcfdd('0x19')](_0x1260a3)[_0xcfdd('0x29')](_0x3e67aa);};}exports['index']=function(_0x18ea76,_0x39eaea){var _0xbdf70d={},_0x386751={},_0x5db3ec={'count':0x0,'rows':[]};var _0x23fa99=_[_0xcfdd('0x2a')](db[_0xcfdd('0x2b')][_0xcfdd('0x2c')],function(_0x3d9dd5){return{'name':_0x3d9dd5['fieldName'],'type':_0x3d9dd5[_0xcfdd('0x2d')][_0xcfdd('0x2e')]};});_0x386751[_0xcfdd('0x2f')]=_[_0xcfdd('0x30')](_[_0xcfdd('0x2a')](_0x23fa99,_0xcfdd('0x28')),[_0xcfdd('0x28')]);_0x386751[_0xcfdd('0x31')]=_['keys'](_0x18ea76['query']);_0x386751[_0xcfdd('0x32')]=_[_0xcfdd('0x33')](_0x386751[_0xcfdd('0x2f')],_0x386751[_0xcfdd('0x31')]);_0xbdf70d[_0xcfdd('0x34')]=_[_0xcfdd('0x33')](_0x386751[_0xcfdd('0x2f')],qs[_0xcfdd('0x35')](_0x18ea76[_0xcfdd('0x31')][_0xcfdd('0x35')]));_0xbdf70d[_0xcfdd('0x34')]=_0xbdf70d[_0xcfdd('0x34')][_0xcfdd('0x36')]?_0xbdf70d['attributes']:_0x386751['model'];if(!_0x18ea76[_0xcfdd('0x31')][_0xcfdd('0x37')](_0xcfdd('0x38'))){_0xbdf70d[_0xcfdd('0x1e')]=qs['limit'](_0x18ea76[_0xcfdd('0x31')]['limit']);_0xbdf70d[_0xcfdd('0x1c')]=qs['offset'](_0x18ea76[_0xcfdd('0x31')][_0xcfdd('0x1c')]);}_0xbdf70d[_0xcfdd('0x39')]=qs[_0xcfdd('0x3a')](_0x18ea76[_0xcfdd('0x31')][_0xcfdd('0x3a')]);_0xbdf70d['where']=qs['filters'](_[_0xcfdd('0x3b')](_0x18ea76[_0xcfdd('0x31')],_0x386751[_0xcfdd('0x32')]),_0x23fa99);if(_0x18ea76[_0xcfdd('0x31')][_0xcfdd('0x3c')]){_0xbdf70d['where']=_['merge'](_0xbdf70d[_0xcfdd('0x3d')],{'$or':_[_0xcfdd('0x2a')](_0x23fa99,function(_0x2b457d){if(_0x2b457d[_0xcfdd('0x2d')]!==_0xcfdd('0x3e')){var _0x1b2cd2={};_0x1b2cd2[_0x2b457d['name']]={'$like':'%'+_0x18ea76['query'][_0xcfdd('0x3c')]+'%'};return _0x1b2cd2;}})});}_0xbdf70d=_[_0xcfdd('0x3f')]({},_0xbdf70d,_0x18ea76['options']);var _0x39ab81={'where':_0xbdf70d[_0xcfdd('0x3d')]};return db[_0xcfdd('0x2b')][_0xcfdd('0x1f')](_0x39ab81)['then'](function(_0x316aef){_0x5db3ec[_0xcfdd('0x1f')]=_0x316aef;if(_0x18ea76[_0xcfdd('0x31')][_0xcfdd('0x40')]){_0xbdf70d[_0xcfdd('0x41')]=[{'all':!![]}];}return db[_0xcfdd('0x2b')]['findAll'](_0xbdf70d);})[_0xcfdd('0x24')](function(_0x4a6820){_0x5db3ec[_0xcfdd('0x42')]=_0x4a6820;return _0x5db3ec;})[_0xcfdd('0x24')](respondWithFilteredResult(_0x39eaea,_0xbdf70d))[_0xcfdd('0x43')](handleError(_0x39eaea,null));};exports[_0xcfdd('0x44')]=function(_0x7f3150,_0x13e869){var _0x52b355={'raw':!![],'where':{'id':_0x7f3150[_0xcfdd('0x45')]['id']}},_0x457b8d={};_0x457b8d['model']=_[_0xcfdd('0x46')](db['VoiceMailMessage']['rawAttributes']);_0x457b8d['query']=_[_0xcfdd('0x46')](_0x7f3150[_0xcfdd('0x31')]);_0x457b8d[_0xcfdd('0x32')]=_['intersection'](_0x457b8d[_0xcfdd('0x2f')],_0x457b8d['query']);_0x52b355[_0xcfdd('0x34')]=_[_0xcfdd('0x33')](_0x457b8d[_0xcfdd('0x2f')],qs['fields'](_0x7f3150[_0xcfdd('0x31')][_0xcfdd('0x35')]));_0x52b355['attributes']=_0x52b355['attributes'][_0xcfdd('0x36')]?_0x52b355[_0xcfdd('0x34')]:_0x457b8d[_0xcfdd('0x2f')];if(_0x7f3150[_0xcfdd('0x31')][_0xcfdd('0x40')]){_0x52b355[_0xcfdd('0x41')]=[{'all':!![]}];}_0x52b355=_['merge']({},_0x52b355,_0x7f3150[_0xcfdd('0x47')]);return db[_0xcfdd('0x2b')][_0xcfdd('0x48')](_0x52b355)[_0xcfdd('0x24')](handleEntityNotFound(_0x13e869,null))['then'](respondWithResult(_0x13e869,null))[_0xcfdd('0x43')](handleError(_0x13e869,null));};exports['create']=function(_0xbe5b6,_0x2af1f2){return db[_0xcfdd('0x2b')][_0xcfdd('0x49')](_0xbe5b6[_0xcfdd('0x4a')],{})[_0xcfdd('0x24')](respondWithResult(_0x2af1f2,0xc9))[_0xcfdd('0x43')](handleError(_0x2af1f2,null));};exports[_0xcfdd('0x23')]=function(_0x2ac803,_0x54a63b){if(_0x2ac803[_0xcfdd('0x4a')]['id']){delete _0x2ac803['body']['id'];}return db[_0xcfdd('0x2b')][_0xcfdd('0x48')]({'where':{'id':_0x2ac803[_0xcfdd('0x45')]['id']}})[_0xcfdd('0x24')](handleEntityNotFound(_0x54a63b,null))[_0xcfdd('0x24')](saveUpdates(_0x2ac803['body'],null))[_0xcfdd('0x24')](respondWithResult(_0x54a63b,null))[_0xcfdd('0x43')](handleError(_0x54a63b,null));};exports[_0xcfdd('0x25')]=function(_0x26806c,_0xa808c2){return db['VoiceMailMessage'][_0xcfdd('0x48')]({'where':{'id':_0x26806c['params']['id']}})['then'](handleEntityNotFound(_0xa808c2,null))[_0xcfdd('0x24')](removeEntity(_0xa808c2,null))[_0xcfdd('0x43')](handleError(_0xa808c2,null));};exports[_0xcfdd('0x4b')]=function(_0xbaee8c,_0x1114b0,_0x39ff75){return db[_0xcfdd('0x2b')]['find']({'where':{'id':_0xbaee8c[_0xcfdd('0x45')]['id']},'attributes':['id',_0xcfdd('0x4c'),_0xcfdd('0x4d')]})[_0xcfdd('0x24')](handleEntityNotFound(_0x1114b0,null))[_0xcfdd('0x24')](function(_0x493959){if(_0x493959){if(!_0x493959['recording']){throw new db[(_0xcfdd('0x4e'))][(_0xcfdd('0x4f'))](_0xcfdd('0x50'));}var _0x359865={'Content-Type':_0xcfdd('0x51'),'Content-Disposition':_0xcfdd('0x52')};if(_0x493959[_0xcfdd('0x4d')]){_0x359865[_0xcfdd('0x53')]='attachment;\x20filename=\x22'+_0x493959[_0xcfdd('0x4d')]+_0xcfdd('0x54');}_0x1114b0[_0xcfdd('0x20')](_0x359865);return _0x1114b0[_0xcfdd('0x29')](new Buffer(_0x493959[_0xcfdd('0x4c')]));}})[_0xcfdd('0x43')](handleError(_0x1114b0,null));};