5a2222d280791b883b58420827fd616d4b2d1bb3
[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 _0x17ba=['moment','bluebird','mustache','util','path','sox','to-csv','ejs','lodash','squel','crypto','jsforce','desk.js','querystring','papaparse','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../mysqldb','sendStatus','status','end','json','count','set','apply','reject','save','update','destroy','then','error','stack','name','map','VoiceMailMessage','rawAttributes','fieldName','type','key','model','differenceBy','keys','query','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','limit','offset','order','sort','where','pick','filter','merge','options','includeAll','findAll','rows','show','include','find','catch','create','body','params','recording','msg_id','Sequelize','VoiceMailMessage\x20not\x20found','audio/wav','attachment','Content-Disposition','attachment;\x20filename=\x22','.wav\x22','html-pdf','eml-format','zip-dir','fast-json-patch','request-promise'];(function(_0x25e7cb,_0x3579b7){var _0x375d92=function(_0xe8cf3b){while(--_0xe8cf3b){_0x25e7cb['push'](_0x25e7cb['shift']());}};_0x375d92(++_0x3579b7);}(_0x17ba,0xab));var _0xa17b=function(_0x54db2c,_0x1e4376){_0x54db2c=_0x54db2c-0x0;var _0x1b9ae5=_0x17ba[_0x54db2c];return _0x1b9ae5;};'use strict';var pdf=require(_0xa17b('0x0'));var emlformat=require(_0xa17b('0x1'));var rimraf=require('rimraf');var zipdir=require(_0xa17b('0x2'));var jsonpatch=require(_0xa17b('0x3'));var rp=require(_0xa17b('0x4'));var moment=require(_0xa17b('0x5'));var BPromise=require(_0xa17b('0x6'));var Mustache=require(_0xa17b('0x7'));var util=require(_0xa17b('0x8'));var path=require(_0xa17b('0x9'));var sox=require(_0xa17b('0xa'));var csv=require(_0xa17b('0xb'));var ejs=require(_0xa17b('0xc'));var fs=require('fs');var _=require(_0xa17b('0xd'));var squel=require(_0xa17b('0xe'));var crypto=require(_0xa17b('0xf'));var jsforce=require(_0xa17b('0x10'));var deskjs=require(_0xa17b('0x11'));var toCsv=require(_0xa17b('0xb'));var querystring=require(_0xa17b('0x12'));var Papa=require(_0xa17b('0x13'));var Redis=require('ioredis');var authService=require(_0xa17b('0x14'));var qs=require(_0xa17b('0x15'));var as=require(_0xa17b('0x16'));var hardwareService=require(_0xa17b('0x17'));var logger=require(_0xa17b('0x18'))(_0xa17b('0x19'));var utils=require(_0xa17b('0x1a'));var config=require('../../config/environment');var db=require(_0xa17b('0x1b'))['db'];function respondWithStatusCode(_0x3e92e4,_0x3c3a8a){_0x3c3a8a=_0x3c3a8a||0xcc;return function(_0x52b7aa){if(_0x52b7aa){return _0x3e92e4[_0xa17b('0x1c')](_0x3c3a8a);}return _0x3e92e4[_0xa17b('0x1d')](_0x3c3a8a)[_0xa17b('0x1e')]();};}function respondWithResult(_0xeeacaa,_0x4a222e){_0x4a222e=_0x4a222e||0xc8;return function(_0x117ad9){if(_0x117ad9){return _0xeeacaa['status'](_0x4a222e)[_0xa17b('0x1f')](_0x117ad9);}};}function respondWithFilteredResult(_0x219385,_0x5de138){return function(_0x112764){if(_0x112764){var _0x3c63e3=_0x112764[_0xa17b('0x20')],_0x1c0578=_0x5de138['offset'],_0x1f8141=_0x5de138['offset']+_0x5de138['limit'],_0x4870fb;if(_0x1f8141>=_0x3c63e3){_0x1f8141=_0x3c63e3;_0x4870fb=0xc8;}else{_0x4870fb=0xce;}_0x219385[_0xa17b('0x1d')](_0x4870fb);return _0x219385[_0xa17b('0x21')]('Content-Range',_0x1c0578+'-'+_0x1f8141+'/'+_0x3c63e3)[_0xa17b('0x1f')](_0x112764);}return null;};}function patchUpdates(_0x166d44){return function(_0x18621f){try{jsonpatch[_0xa17b('0x22')](_0x18621f,_0x166d44,!![]);}catch(_0x2a340d){return BPromise[_0xa17b('0x23')](_0x2a340d);}return _0x18621f[_0xa17b('0x24')]();};}function saveUpdates(_0x584a0a,_0x610c2b){return function(_0x3f409a){if(_0x3f409a){return _0x3f409a[_0xa17b('0x25')](_0x584a0a)['then'](function(_0x44f7bc){return _0x44f7bc;});}return null;};}function removeEntity(_0x1a6471,_0x24d305){return function(_0xbbbb62){if(_0xbbbb62){return _0xbbbb62[_0xa17b('0x26')]()[_0xa17b('0x27')](function(){_0x1a6471['status'](0xcc)[_0xa17b('0x1e')]();});}};}function handleEntityNotFound(_0x4d4a65,_0xa34739){return function(_0x13630d){if(!_0x13630d){_0x4d4a65['sendStatus'](0x194);}return _0x13630d;};}function handleError(_0x491764,_0x2a298c){_0x2a298c=_0x2a298c||0x1f4;return function(_0x29bf68){logger[_0xa17b('0x28')](_0x29bf68[_0xa17b('0x29')]);if(_0x29bf68[_0xa17b('0x2a')]){delete _0x29bf68[_0xa17b('0x2a')];}_0x491764['status'](_0x2a298c)['send'](_0x29bf68);};}exports['index']=function(_0x4aad82,_0x2b1708){var _0x5ef356={},_0x295e67={},_0x4ff3f8={'count':0x0,'rows':[]};var _0x14671b=_[_0xa17b('0x2b')](db[_0xa17b('0x2c')][_0xa17b('0x2d')],function(_0x346cc2){return{'name':_0x346cc2[_0xa17b('0x2e')],'type':_0x346cc2[_0xa17b('0x2f')][_0xa17b('0x30')]};});_0x295e67[_0xa17b('0x31')]=_[_0xa17b('0x32')](_[_0xa17b('0x2b')](_0x14671b,'name'),['name']);_0x295e67['query']=_[_0xa17b('0x33')](_0x4aad82[_0xa17b('0x34')]);_0x295e67[_0xa17b('0x35')]=_[_0xa17b('0x36')](_0x295e67[_0xa17b('0x31')],_0x295e67[_0xa17b('0x34')]);_0x5ef356[_0xa17b('0x37')]=_[_0xa17b('0x36')](_0x295e67['model'],qs[_0xa17b('0x38')](_0x4aad82['query'][_0xa17b('0x38')]));_0x5ef356[_0xa17b('0x37')]=_0x5ef356[_0xa17b('0x37')][_0xa17b('0x39')]?_0x5ef356[_0xa17b('0x37')]:_0x295e67[_0xa17b('0x31')];if(!_0x4aad82['query'][_0xa17b('0x3a')](_0xa17b('0x3b'))){_0x5ef356[_0xa17b('0x3c')]=qs[_0xa17b('0x3c')](_0x4aad82[_0xa17b('0x34')]['limit']);_0x5ef356[_0xa17b('0x3d')]=qs['offset'](_0x4aad82[_0xa17b('0x34')]['offset']);}_0x5ef356[_0xa17b('0x3e')]=qs[_0xa17b('0x3f')](_0x4aad82['query'][_0xa17b('0x3f')]);_0x5ef356[_0xa17b('0x40')]=qs['filters'](_[_0xa17b('0x41')](_0x4aad82[_0xa17b('0x34')],_0x295e67[_0xa17b('0x35')]));if(_0x4aad82[_0xa17b('0x34')][_0xa17b('0x42')]){_0x5ef356['where']=_[_0xa17b('0x43')](_0x5ef356['where'],{'$or':_[_0xa17b('0x2b')](_0x14671b,function(_0x47b994){if(_0x47b994[_0xa17b('0x2f')]!=='VIRTUAL'){var _0x1e457e={};_0x1e457e[_0x47b994['name']]={'$like':'%'+_0x4aad82[_0xa17b('0x34')]['filter']+'%'};return _0x1e457e;}})});}_0x5ef356=_[_0xa17b('0x43')]({},_0x5ef356,_0x4aad82[_0xa17b('0x44')]);var _0x5bfb5={'where':_0x5ef356[_0xa17b('0x40')]};return db[_0xa17b('0x2c')][_0xa17b('0x20')](_0x5bfb5)[_0xa17b('0x27')](function(_0xe57f94){_0x4ff3f8['count']=_0xe57f94;if(_0x4aad82[_0xa17b('0x34')][_0xa17b('0x45')]){_0x5ef356['include']=[{'all':!![]}];}return db[_0xa17b('0x2c')][_0xa17b('0x46')](_0x5ef356);})[_0xa17b('0x27')](function(_0x318b3e){_0x4ff3f8[_0xa17b('0x47')]=_0x318b3e;return _0x4ff3f8;})[_0xa17b('0x27')](respondWithFilteredResult(_0x2b1708,_0x5ef356))['catch'](handleError(_0x2b1708,null));};exports[_0xa17b('0x48')]=function(_0x1521fe,_0x16bac7){var _0x5ec459={'raw':!![],'where':{'id':_0x1521fe['params']['id']}},_0x54b65c={};_0x54b65c[_0xa17b('0x31')]=_[_0xa17b('0x33')](db[_0xa17b('0x2c')][_0xa17b('0x2d')]);_0x54b65c[_0xa17b('0x34')]=_[_0xa17b('0x33')](_0x1521fe[_0xa17b('0x34')]);_0x54b65c[_0xa17b('0x35')]=_[_0xa17b('0x36')](_0x54b65c[_0xa17b('0x31')],_0x54b65c[_0xa17b('0x34')]);_0x5ec459[_0xa17b('0x37')]=_['intersection'](_0x54b65c[_0xa17b('0x31')],qs[_0xa17b('0x38')](_0x1521fe[_0xa17b('0x34')][_0xa17b('0x38')]));_0x5ec459[_0xa17b('0x37')]=_0x5ec459[_0xa17b('0x37')]['length']?_0x5ec459[_0xa17b('0x37')]:_0x54b65c[_0xa17b('0x31')];if(_0x1521fe[_0xa17b('0x34')][_0xa17b('0x45')]){_0x5ec459[_0xa17b('0x49')]=[{'all':!![]}];}_0x5ec459=_['merge']({},_0x5ec459,_0x1521fe[_0xa17b('0x44')]);return db[_0xa17b('0x2c')][_0xa17b('0x4a')](_0x5ec459)[_0xa17b('0x27')](handleEntityNotFound(_0x16bac7,null))['then'](respondWithResult(_0x16bac7,null))[_0xa17b('0x4b')](handleError(_0x16bac7,null));};exports[_0xa17b('0x4c')]=function(_0x421470,_0x2906fd){return db[_0xa17b('0x2c')][_0xa17b('0x4c')](_0x421470[_0xa17b('0x4d')],{})['then'](respondWithResult(_0x2906fd,0xc9))[_0xa17b('0x4b')](handleError(_0x2906fd,null));};exports[_0xa17b('0x25')]=function(_0x4ffe5a,_0xb4b4d){if(_0x4ffe5a[_0xa17b('0x4d')]['id']){delete _0x4ffe5a[_0xa17b('0x4d')]['id'];}return db['VoiceMailMessage'][_0xa17b('0x4a')]({'where':{'id':_0x4ffe5a[_0xa17b('0x4e')]['id']}})['then'](handleEntityNotFound(_0xb4b4d,null))[_0xa17b('0x27')](saveUpdates(_0x4ffe5a[_0xa17b('0x4d')],null))['then'](respondWithResult(_0xb4b4d,null))[_0xa17b('0x4b')](handleError(_0xb4b4d,null));};exports[_0xa17b('0x26')]=function(_0x5cdea9,_0x3eddb7){return db[_0xa17b('0x2c')][_0xa17b('0x4a')]({'where':{'id':_0x5cdea9[_0xa17b('0x4e')]['id']}})[_0xa17b('0x27')](handleEntityNotFound(_0x3eddb7,null))[_0xa17b('0x27')](removeEntity(_0x3eddb7,null))[_0xa17b('0x4b')](handleError(_0x3eddb7,null));};exports['download']=function(_0x420fdc,_0x3ff07a,_0x620a4a){return db[_0xa17b('0x2c')][_0xa17b('0x4a')]({'where':{'id':_0x420fdc[_0xa17b('0x4e')]['id']},'attributes':['id',_0xa17b('0x4f'),_0xa17b('0x50')]})[_0xa17b('0x27')](handleEntityNotFound(_0x3ff07a,null))[_0xa17b('0x27')](function(_0x1e4b67){if(_0x1e4b67){if(!_0x1e4b67[_0xa17b('0x4f')]){throw new db[(_0xa17b('0x51'))]['ValidationError'](_0xa17b('0x52'));}var _0x25fa9b={'Content-Type':_0xa17b('0x53'),'Content-Disposition':_0xa17b('0x54')};if(_0x1e4b67[_0xa17b('0x50')]){_0x25fa9b[_0xa17b('0x55')]=_0xa17b('0x56')+_0x1e4b67[_0xa17b('0x50')]+_0xa17b('0x57');}_0x3ff07a['set'](_0x25fa9b);return _0x3ff07a['send'](new Buffer(_0x1e4b67[_0xa17b('0x4f')]));}})[_0xa17b('0x4b')](handleError(_0x3ff07a,null));};