295226853916637d09baa899868b1ddd8d0b9e0c
[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 _0x519a=['params','rawAttributes','options','find','catch','create','body','recording','msg_id','ValidationError','VoiceMailMessage\x20not\x20found','audio/wav','attachment','Content-Disposition','attachment;\x20filename=\x22','.wav\x22','rimraf','zip-dir','request-promise','bluebird','mustache','util','path','sox','fs-extra','lodash','squel','crypto','jsforce','querystring','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','status','end','json','offset','undefined','count','set','Content-Range','apply','save','update','destroy','then','sendStatus','stack','name','send','index','map','fieldName','key','model','differenceBy','keys','query','filters','intersection','attributes','fields','length','nolimit','limit','sort','where','pick','filter','merge','type','VIRTUAL','VoiceMailMessage','includeAll','include','rows'];(function(_0x1900ae,_0x1272a2){var _0x1cea3d=function(_0x5e831c){while(--_0x5e831c){_0x1900ae['push'](_0x1900ae['shift']());}};_0x1cea3d(++_0x1272a2);}(_0x519a,0x64));var _0xa519=function(_0x423097,_0x8a09f4){_0x423097=_0x423097-0x0;var _0x3a73f1=_0x519a[_0x423097];return _0x3a73f1;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0xa519('0x0'));var zipdir=require(_0xa519('0x1'));var jsonpatch=require('fast-json-patch');var rp=require(_0xa519('0x2'));var moment=require('moment');var BPromise=require(_0xa519('0x3'));var Mustache=require(_0xa519('0x4'));var util=require(_0xa519('0x5'));var path=require(_0xa519('0x6'));var sox=require(_0xa519('0x7'));var csv=require('to-csv');var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0xa519('0x8'));var _=require(_0xa519('0x9'));var squel=require(_0xa519('0xa'));var crypto=require(_0xa519('0xb'));var jsforce=require(_0xa519('0xc'));var deskjs=require('desk.js');var toCsv=require('to-csv');var querystring=require(_0xa519('0xd'));var Papa=require('papaparse');var Redis=require(_0xa519('0xe'));var authService=require(_0xa519('0xf'));var qs=require(_0xa519('0x10'));var as=require(_0xa519('0x11'));var hardwareService=require(_0xa519('0x12'));var logger=require(_0xa519('0x13'))(_0xa519('0x14'));var utils=require(_0xa519('0x15'));var config=require(_0xa519('0x16'));var licenseUtil=require(_0xa519('0x17'));var db=require(_0xa519('0x18'))['db'];function respondWithStatusCode(_0x128266,_0x7d28b8){_0x7d28b8=_0x7d28b8||0xcc;return function(_0x54bcc6){if(_0x54bcc6){return _0x128266['sendStatus'](_0x7d28b8);}return _0x128266[_0xa519('0x19')](_0x7d28b8)[_0xa519('0x1a')]();};}function respondWithResult(_0x1ec87c,_0x186b11){_0x186b11=_0x186b11||0xc8;return function(_0x12618a){if(_0x12618a){return _0x1ec87c[_0xa519('0x19')](_0x186b11)[_0xa519('0x1b')](_0x12618a);}};}function respondWithFilteredResult(_0x4dd02b,_0x477964){return function(_0x462342){if(_0x462342){var _0x6caf3b=typeof _0x477964[_0xa519('0x1c')]===_0xa519('0x1d')&&typeof _0x477964['limit']===_0xa519('0x1d');var _0x5de074=_0x462342[_0xa519('0x1e')];var _0x50ffa8=_0x6caf3b?0x0:_0x477964['offset'];var _0x126ed8=_0x6caf3b?_0x462342[_0xa519('0x1e')]:_0x477964['offset']+_0x477964['limit'];var _0xd9738;if(_0x126ed8>=_0x5de074){_0x126ed8=_0x5de074;_0xd9738=0xc8;}else{_0xd9738=0xce;}_0x4dd02b[_0xa519('0x19')](_0xd9738);return _0x4dd02b[_0xa519('0x1f')](_0xa519('0x20'),_0x50ffa8+'-'+_0x126ed8+'/'+_0x5de074)[_0xa519('0x1b')](_0x462342);}return null;};}function patchUpdates(_0x1ccd01){return function(_0x12efbd){try{jsonpatch[_0xa519('0x21')](_0x12efbd,_0x1ccd01,!![]);}catch(_0x89b3a7){return BPromise['reject'](_0x89b3a7);}return _0x12efbd[_0xa519('0x22')]();};}function saveUpdates(_0x44303a,_0x6c9d98){return function(_0x5e919f){if(_0x5e919f){return _0x5e919f[_0xa519('0x23')](_0x44303a)['then'](function(_0x48db3f){return _0x48db3f;});}return null;};}function removeEntity(_0x43293a,_0x1412a4){return function(_0x598feb){if(_0x598feb){return _0x598feb[_0xa519('0x24')]()[_0xa519('0x25')](function(){_0x43293a['status'](0xcc)[_0xa519('0x1a')]();});}};}function handleEntityNotFound(_0x54bfc4,_0x2d56b8){return function(_0x5868a6){if(!_0x5868a6){_0x54bfc4[_0xa519('0x26')](0x194);}return _0x5868a6;};}function handleError(_0x252680,_0x364015){_0x364015=_0x364015||0x1f4;return function(_0x322863){logger['error'](_0x322863[_0xa519('0x27')]);if(_0x322863[_0xa519('0x28')]){delete _0x322863[_0xa519('0x28')];}_0x252680[_0xa519('0x19')](_0x364015)[_0xa519('0x29')](_0x322863);};}exports[_0xa519('0x2a')]=function(_0x3e0c33,_0x1b03d1){var _0x4053ca={},_0x1173f7={},_0x495268={'count':0x0,'rows':[]};var _0x4ef0e7=_[_0xa519('0x2b')](db['VoiceMailMessage']['rawAttributes'],function(_0x554a28){return{'name':_0x554a28[_0xa519('0x2c')],'type':_0x554a28['type'][_0xa519('0x2d')]};});_0x1173f7[_0xa519('0x2e')]=_[_0xa519('0x2f')](_[_0xa519('0x2b')](_0x4ef0e7,'name'),[_0xa519('0x28')]);_0x1173f7['query']=_[_0xa519('0x30')](_0x3e0c33[_0xa519('0x31')]);_0x1173f7[_0xa519('0x32')]=_[_0xa519('0x33')](_0x1173f7[_0xa519('0x2e')],_0x1173f7['query']);_0x4053ca[_0xa519('0x34')]=_[_0xa519('0x33')](_0x1173f7[_0xa519('0x2e')],qs[_0xa519('0x35')](_0x3e0c33[_0xa519('0x31')][_0xa519('0x35')]));_0x4053ca[_0xa519('0x34')]=_0x4053ca[_0xa519('0x34')][_0xa519('0x36')]?_0x4053ca['attributes']:_0x1173f7[_0xa519('0x2e')];if(!_0x3e0c33[_0xa519('0x31')]['hasOwnProperty'](_0xa519('0x37'))){_0x4053ca[_0xa519('0x38')]=qs[_0xa519('0x38')](_0x3e0c33[_0xa519('0x31')][_0xa519('0x38')]);_0x4053ca[_0xa519('0x1c')]=qs['offset'](_0x3e0c33[_0xa519('0x31')]['offset']);}_0x4053ca['order']=qs[_0xa519('0x39')](_0x3e0c33[_0xa519('0x31')]['sort']);_0x4053ca[_0xa519('0x3a')]=qs[_0xa519('0x32')](_[_0xa519('0x3b')](_0x3e0c33[_0xa519('0x31')],_0x1173f7[_0xa519('0x32')]),_0x4ef0e7);if(_0x3e0c33['query'][_0xa519('0x3c')]){_0x4053ca[_0xa519('0x3a')]=_[_0xa519('0x3d')](_0x4053ca[_0xa519('0x3a')],{'$or':_[_0xa519('0x2b')](_0x4ef0e7,function(_0x545481){if(_0x545481[_0xa519('0x3e')]!==_0xa519('0x3f')){var _0x4a3a66={};_0x4a3a66[_0x545481[_0xa519('0x28')]]={'$like':'%'+_0x3e0c33[_0xa519('0x31')][_0xa519('0x3c')]+'%'};return _0x4a3a66;}})});}_0x4053ca=_['merge']({},_0x4053ca,_0x3e0c33['options']);var _0x385845={'where':_0x4053ca[_0xa519('0x3a')]};return db[_0xa519('0x40')][_0xa519('0x1e')](_0x385845)[_0xa519('0x25')](function(_0x14f6a0){_0x495268['count']=_0x14f6a0;if(_0x3e0c33['query'][_0xa519('0x41')]){_0x4053ca[_0xa519('0x42')]=[{'all':!![]}];}return db[_0xa519('0x40')]['findAll'](_0x4053ca);})[_0xa519('0x25')](function(_0x254234){_0x495268[_0xa519('0x43')]=_0x254234;return _0x495268;})[_0xa519('0x25')](respondWithFilteredResult(_0x1b03d1,_0x4053ca))['catch'](handleError(_0x1b03d1,null));};exports['show']=function(_0x64080b,_0x4120d9){var _0x567d73={'raw':!![],'where':{'id':_0x64080b[_0xa519('0x44')]['id']}},_0x5f3b90={};_0x5f3b90['model']=_[_0xa519('0x30')](db[_0xa519('0x40')][_0xa519('0x45')]);_0x5f3b90['query']=_['keys'](_0x64080b[_0xa519('0x31')]);_0x5f3b90['filters']=_['intersection'](_0x5f3b90[_0xa519('0x2e')],_0x5f3b90[_0xa519('0x31')]);_0x567d73[_0xa519('0x34')]=_[_0xa519('0x33')](_0x5f3b90[_0xa519('0x2e')],qs[_0xa519('0x35')](_0x64080b[_0xa519('0x31')][_0xa519('0x35')]));_0x567d73[_0xa519('0x34')]=_0x567d73[_0xa519('0x34')][_0xa519('0x36')]?_0x567d73[_0xa519('0x34')]:_0x5f3b90[_0xa519('0x2e')];if(_0x64080b[_0xa519('0x31')]['includeAll']){_0x567d73[_0xa519('0x42')]=[{'all':!![]}];}_0x567d73=_[_0xa519('0x3d')]({},_0x567d73,_0x64080b[_0xa519('0x46')]);return db[_0xa519('0x40')][_0xa519('0x47')](_0x567d73)[_0xa519('0x25')](handleEntityNotFound(_0x4120d9,null))[_0xa519('0x25')](respondWithResult(_0x4120d9,null))[_0xa519('0x48')](handleError(_0x4120d9,null));};exports[_0xa519('0x49')]=function(_0x45649a,_0x47027f){return db[_0xa519('0x40')]['create'](_0x45649a[_0xa519('0x4a')],{})[_0xa519('0x25')](respondWithResult(_0x47027f,0xc9))[_0xa519('0x48')](handleError(_0x47027f,null));};exports[_0xa519('0x23')]=function(_0x1c6efc,_0x4e17f6){if(_0x1c6efc['body']['id']){delete _0x1c6efc[_0xa519('0x4a')]['id'];}return db[_0xa519('0x40')]['find']({'where':{'id':_0x1c6efc[_0xa519('0x44')]['id']}})[_0xa519('0x25')](handleEntityNotFound(_0x4e17f6,null))['then'](saveUpdates(_0x1c6efc['body'],null))[_0xa519('0x25')](respondWithResult(_0x4e17f6,null))[_0xa519('0x48')](handleError(_0x4e17f6,null));};exports[_0xa519('0x24')]=function(_0x3ba10d,_0xd40898){return db[_0xa519('0x40')][_0xa519('0x47')]({'where':{'id':_0x3ba10d[_0xa519('0x44')]['id']}})['then'](handleEntityNotFound(_0xd40898,null))['then'](removeEntity(_0xd40898,null))['catch'](handleError(_0xd40898,null));};exports['download']=function(_0x1ab14e,_0x228a15,_0x4fe46b){return db[_0xa519('0x40')]['find']({'where':{'id':_0x1ab14e[_0xa519('0x44')]['id']},'attributes':['id',_0xa519('0x4b'),_0xa519('0x4c')]})[_0xa519('0x25')](handleEntityNotFound(_0x228a15,null))[_0xa519('0x25')](function(_0x3f2c1c){if(_0x3f2c1c){if(!_0x3f2c1c[_0xa519('0x4b')]){throw new db['Sequelize'][(_0xa519('0x4d'))](_0xa519('0x4e'));}var _0x1e83f6={'Content-Type':_0xa519('0x4f'),'Content-Disposition':_0xa519('0x50')};if(_0x3f2c1c[_0xa519('0x4c')]){_0x1e83f6[_0xa519('0x51')]=_0xa519('0x52')+_0x3f2c1c[_0xa519('0x4c')]+_0xa519('0x53');}_0x228a15[_0xa519('0x1f')](_0x1e83f6);return _0x228a15[_0xa519('0x29')](new Buffer(_0x3f2c1c['recording']));}})[_0xa519('0x48')](handleError(_0x228a15,null));};