Built motion from commit (unavailable).|2.4.20
[motion2.git] / server / api / voiceMail / voiceMail.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 _0x4de5=['UserProfileSection','autoAssociation','UserProfileResource','error','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','body','getMessages','findOne','VoiceMailMessage','merge','mailbox','eml-format','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','sox','ejs','squel','crypto','jsforce','desk.js','to-csv','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','api','../../config/utils','../../config/environment','../../mysqldb','sendStatus','status','end','json','offset','limit','Content-Range','apply','save','update','then','destroy','get','Voicemails','name','send','index','map','VoiceMail','rawAttributes','key','model','query','keys','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','sort','where','pick','type','filter','options','count','includeAll','include','findAll','rows','catch','show','params','find','create','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','user'];(function(_0x4f6400,_0x379b1b){var _0x4e447=function(_0x5766a2){while(--_0x5766a2){_0x4f6400['push'](_0x4f6400['shift']());}};_0x4e447(++_0x379b1b);}(_0x4de5,0xbb));var _0x54de=function(_0x52700c,_0x56e68a){_0x52700c=_0x52700c-0x0;var _0x2c954d=_0x4de5[_0x52700c];return _0x2c954d;};'use strict';var pdf=require('html-pdf');var emlformat=require(_0x54de('0x0'));var rimraf=require('rimraf');var zipdir=require(_0x54de('0x1'));var jsonpatch=require(_0x54de('0x2'));var rp=require(_0x54de('0x3'));var moment=require(_0x54de('0x4'));var BPromise=require(_0x54de('0x5'));var Mustache=require(_0x54de('0x6'));var util=require(_0x54de('0x7'));var path=require(_0x54de('0x8'));var sox=require(_0x54de('0x9'));var csv=require('to-csv');var ejs=require(_0x54de('0xa'));var fs=require('fs');var _=require('lodash');var squel=require(_0x54de('0xb'));var crypto=require(_0x54de('0xc'));var jsforce=require(_0x54de('0xd'));var deskjs=require(_0x54de('0xe'));var toCsv=require(_0x54de('0xf'));var querystring=require(_0x54de('0x10'));var Papa=require(_0x54de('0x11'));var Redis=require(_0x54de('0x12'));var authService=require(_0x54de('0x13'));var qs=require(_0x54de('0x14'));var as=require(_0x54de('0x15'));var hardwareService=require(_0x54de('0x16'));var logger=require('../../config/logger')(_0x54de('0x17'));var utils=require(_0x54de('0x18'));var config=require(_0x54de('0x19'));var db=require(_0x54de('0x1a'))['db'];function respondWithStatusCode(_0x58f9eb,_0x57d80f){_0x57d80f=_0x57d80f||0xcc;return function(_0x4a729f){if(_0x4a729f){return _0x58f9eb[_0x54de('0x1b')](_0x57d80f);}return _0x58f9eb[_0x54de('0x1c')](_0x57d80f)[_0x54de('0x1d')]();};}function respondWithResult(_0x43e2e9,_0x40039e){_0x40039e=_0x40039e||0xc8;return function(_0x4b1286){if(_0x4b1286){return _0x43e2e9[_0x54de('0x1c')](_0x40039e)[_0x54de('0x1e')](_0x4b1286);}};}function respondWithFilteredResult(_0x1a29b0,_0x1d3df9){return function(_0x4adf6c){if(_0x4adf6c){var _0x5be3b2=_0x4adf6c['count'],_0x13884c=_0x1d3df9[_0x54de('0x1f')],_0x4e1d23=_0x1d3df9[_0x54de('0x1f')]+_0x1d3df9[_0x54de('0x20')],_0x3be6df;if(_0x4e1d23>=_0x5be3b2){_0x4e1d23=_0x5be3b2;_0x3be6df=0xc8;}else{_0x3be6df=0xce;}_0x1a29b0[_0x54de('0x1c')](_0x3be6df);return _0x1a29b0['set'](_0x54de('0x21'),_0x13884c+'-'+_0x4e1d23+'/'+_0x5be3b2)[_0x54de('0x1e')](_0x4adf6c);}return null;};}function patchUpdates(_0x2a94c8){return function(_0x526572){try{jsonpatch[_0x54de('0x22')](_0x526572,_0x2a94c8,!![]);}catch(_0x3fadd7){return BPromise['reject'](_0x3fadd7);}return _0x526572[_0x54de('0x23')]();};}function saveUpdates(_0x4f2b22,_0x5816b2){return function(_0x46b552){if(_0x46b552){return _0x46b552[_0x54de('0x24')](_0x4f2b22)[_0x54de('0x25')](function(_0x50f628){return _0x50f628;});}return null;};}function removeEntity(_0x5786be,_0x5af2e3){return function(_0x2bb4ba){if(_0x2bb4ba){return _0x2bb4ba[_0x54de('0x26')]()['then'](function(){var _0xa9defe=_0x2bb4ba[_0x54de('0x27')]({'plain':!![]});var _0x200f3a=_0x54de('0x28');return db['UserProfileResource'][_0x54de('0x26')]({'where':{'type':_0x200f3a,'resourceId':_0xa9defe['id']}})['then'](function(){return _0x2bb4ba;});})[_0x54de('0x25')](function(){_0x5786be[_0x54de('0x1c')](0xcc)[_0x54de('0x1d')]();});}};}function handleEntityNotFound(_0x1b6e1a,_0x25c7dc){return function(_0x5a0a7e){if(!_0x5a0a7e){_0x1b6e1a['sendStatus'](0x194);}return _0x5a0a7e;};}function handleError(_0x2468ec,_0x369a10){_0x369a10=_0x369a10||0x1f4;return function(_0x3715ce){logger['error'](_0x3715ce['stack']);if(_0x3715ce[_0x54de('0x29')]){delete _0x3715ce[_0x54de('0x29')];}_0x2468ec[_0x54de('0x1c')](_0x369a10)[_0x54de('0x2a')](_0x3715ce);};}exports[_0x54de('0x2b')]=function(_0xb40cab,_0x58e0d7){var _0x3ceabe={},_0x5ef25a={},_0x52ea60={'count':0x0,'rows':[]};var _0x3fd1b0=_[_0x54de('0x2c')](db[_0x54de('0x2d')][_0x54de('0x2e')],function(_0x5e8988){return{'name':_0x5e8988['fieldName'],'type':_0x5e8988['type'][_0x54de('0x2f')]};});_0x5ef25a[_0x54de('0x30')]=_[_0x54de('0x2c')](_0x3fd1b0,_0x54de('0x29'));_0x5ef25a[_0x54de('0x31')]=_[_0x54de('0x32')](_0xb40cab[_0x54de('0x31')]);_0x5ef25a[_0x54de('0x33')]=_[_0x54de('0x34')](_0x5ef25a[_0x54de('0x30')],_0x5ef25a[_0x54de('0x31')]);_0x3ceabe[_0x54de('0x35')]=_[_0x54de('0x34')](_0x5ef25a[_0x54de('0x30')],qs['fields'](_0xb40cab['query'][_0x54de('0x36')]));_0x3ceabe[_0x54de('0x35')]=_0x3ceabe['attributes'][_0x54de('0x37')]?_0x3ceabe[_0x54de('0x35')]:_0x5ef25a['model'];if(!_0xb40cab[_0x54de('0x31')][_0x54de('0x38')](_0x54de('0x39'))){_0x3ceabe[_0x54de('0x20')]=qs[_0x54de('0x20')](_0xb40cab[_0x54de('0x31')][_0x54de('0x20')]);_0x3ceabe['offset']=qs[_0x54de('0x1f')](_0xb40cab['query'][_0x54de('0x1f')]);}_0x3ceabe['order']=qs[_0x54de('0x3a')](_0xb40cab['query'][_0x54de('0x3a')]);_0x3ceabe[_0x54de('0x3b')]=qs[_0x54de('0x33')](_[_0x54de('0x3c')](_0xb40cab[_0x54de('0x31')],_0x5ef25a[_0x54de('0x33')]));if(_0xb40cab[_0x54de('0x31')]['filter']){_0x3ceabe['where']=_['merge'](_0x3ceabe[_0x54de('0x3b')],{'$or':_['map'](_0x3fd1b0,function(_0x46c320){if(_0x46c320[_0x54de('0x3d')]!=='VIRTUAL'){var _0x1bb5be={};_0x1bb5be[_0x46c320[_0x54de('0x29')]]={'$like':'%'+_0xb40cab[_0x54de('0x31')][_0x54de('0x3e')]+'%'};return _0x1bb5be;}})});}_0x3ceabe=_['merge']({},_0x3ceabe,_0xb40cab[_0x54de('0x3f')]);var _0x47a076={'where':_0x3ceabe['where']};return db['VoiceMail'][_0x54de('0x40')](_0x47a076)['then'](function(_0x2ff367){_0x52ea60[_0x54de('0x40')]=_0x2ff367;if(_0xb40cab[_0x54de('0x31')][_0x54de('0x41')]){_0x3ceabe[_0x54de('0x42')]=[{'all':!![]}];}return db[_0x54de('0x2d')][_0x54de('0x43')](_0x3ceabe);})[_0x54de('0x25')](function(_0x19c03f){_0x52ea60[_0x54de('0x44')]=_0x19c03f;return _0x52ea60;})[_0x54de('0x25')](respondWithFilteredResult(_0x58e0d7,_0x3ceabe))[_0x54de('0x45')](handleError(_0x58e0d7,null));};exports[_0x54de('0x46')]=function(_0x4726ae,_0x2b275a){var _0x394824={'raw':!![],'where':{'id':_0x4726ae[_0x54de('0x47')]['id']}},_0x2963e0={};_0x2963e0['model']=_[_0x54de('0x32')](db[_0x54de('0x2d')][_0x54de('0x2e')]);_0x2963e0[_0x54de('0x31')]=_[_0x54de('0x32')](_0x4726ae[_0x54de('0x31')]);_0x2963e0[_0x54de('0x33')]=_[_0x54de('0x34')](_0x2963e0[_0x54de('0x30')],_0x2963e0[_0x54de('0x31')]);_0x394824[_0x54de('0x35')]=_[_0x54de('0x34')](_0x2963e0['model'],qs['fields'](_0x4726ae['query'][_0x54de('0x36')]));_0x394824[_0x54de('0x35')]=_0x394824[_0x54de('0x35')][_0x54de('0x37')]?_0x394824[_0x54de('0x35')]:_0x2963e0[_0x54de('0x30')];if(_0x4726ae[_0x54de('0x31')][_0x54de('0x41')]){_0x394824[_0x54de('0x42')]=[{'all':!![]}];}_0x394824=_['merge']({},_0x394824,_0x4726ae[_0x54de('0x3f')]);return db[_0x54de('0x2d')][_0x54de('0x48')](_0x394824)[_0x54de('0x25')](handleEntityNotFound(_0x2b275a,null))[_0x54de('0x25')](respondWithResult(_0x2b275a,null))[_0x54de('0x45')](handleError(_0x2b275a,null));};exports[_0x54de('0x49')]=function(_0x1dd0ef,_0x28258d){return db[_0x54de('0x2d')][_0x54de('0x49')](_0x1dd0ef['body'],{})[_0x54de('0x25')](function(_0x39942c){var _0x4bf923=_0x1dd0ef['user'][_0x54de('0x27')]({'plain':!![]});if(!_0x4bf923)throw new Error(_0x54de('0x4a'));if(_0x4bf923[_0x54de('0x4b')]===_0x54de('0x4c')){var _0x5a0ade=_0x39942c[_0x54de('0x27')]({'plain':!![]});var _0x44931b=_0x54de('0x28');return db[_0x54de('0x4d')][_0x54de('0x48')]({'where':{'name':_0x44931b,'userProfileId':_0x4bf923['userProfileId']},'raw':!![]})[_0x54de('0x25')](function(_0x5efade){if(_0x5efade&&_0x5efade[_0x54de('0x4e')]===0x0){return db[_0x54de('0x4f')][_0x54de('0x49')]({'name':_0x5a0ade[_0x54de('0x29')],'resourceId':_0x5a0ade['id'],'type':_0x5efade[_0x54de('0x29')],'sectionId':_0x5efade['id']},{})[_0x54de('0x25')](function(){return _0x39942c;});}else{return _0x39942c;}})[_0x54de('0x45')](function(_0x7ae528){logger[_0x54de('0x50')](_0x54de('0x51'),_0x7ae528);throw _0x7ae528;});}return _0x39942c;})[_0x54de('0x25')](respondWithResult(_0x28258d,0xc9))['catch'](handleError(_0x28258d,null));};exports[_0x54de('0x24')]=function(_0x285a7e,_0xc723d8){if(_0x285a7e[_0x54de('0x52')]['id']){delete _0x285a7e['body']['id'];}return db[_0x54de('0x2d')]['find']({'where':{'id':_0x285a7e['params']['id']}})[_0x54de('0x25')](handleEntityNotFound(_0xc723d8,null))['then'](saveUpdates(_0x285a7e['body'],null))[_0x54de('0x25')](respondWithResult(_0xc723d8,null))[_0x54de('0x45')](handleError(_0xc723d8,null));};exports['destroy']=function(_0x44c993,_0x3c5ef8){return db[_0x54de('0x2d')]['find']({'where':{'id':_0x44c993[_0x54de('0x47')]['id']}})[_0x54de('0x25')](handleEntityNotFound(_0x3c5ef8,null))['then'](removeEntity(_0x3c5ef8,null))[_0x54de('0x45')](handleError(_0x3c5ef8,null));};exports[_0x54de('0x53')]=function(_0x4a9175,_0x403cf1,_0x331c18){return db[_0x54de('0x2d')][_0x54de('0x54')]({'where':{'id':_0x4a9175[_0x54de('0x47')]['id']}})[_0x54de('0x25')](handleEntityNotFound(_0x403cf1,null))[_0x54de('0x25')](function(_0x58419e){var _0x168f46;var _0x1b21c4={},_0x4d8685={};_0x4d8685['model']=_[_0x54de('0x32')](db[_0x54de('0x55')][_0x54de('0x2e')]);_0x4d8685['query']=_[_0x54de('0x32')](_0x4a9175[_0x54de('0x31')]);_0x4d8685[_0x54de('0x33')]=_[_0x54de('0x34')](_0x4d8685['model'],_0x4d8685['query']);_0x1b21c4[_0x54de('0x35')]=_[_0x54de('0x34')](_0x4d8685[_0x54de('0x30')],qs[_0x54de('0x36')](_0x4a9175['query'][_0x54de('0x36')]));_0x1b21c4['attributes']=_0x1b21c4[_0x54de('0x35')][_0x54de('0x37')]?_0x1b21c4[_0x54de('0x35')]:_0x4d8685[_0x54de('0x30')];if(!_0x4a9175[_0x54de('0x31')][_0x54de('0x38')](_0x54de('0x39'))){_0x1b21c4[_0x54de('0x20')]=qs['limit'](_0x4a9175[_0x54de('0x31')][_0x54de('0x20')]);_0x1b21c4[_0x54de('0x1f')]=qs[_0x54de('0x1f')](_0x4a9175[_0x54de('0x31')][_0x54de('0x1f')]);}_0x1b21c4['order']=qs[_0x54de('0x3a')](_0x4a9175[_0x54de('0x31')]['sort']);_0x1b21c4['where']=qs['filters'](_[_0x54de('0x3c')](_0x4a9175['query'],_0x4d8685[_0x54de('0x33')]));if(_0x4a9175[_0x54de('0x31')][_0x54de('0x3e')]){_0x1b21c4[_0x54de('0x3b')]=_[_0x54de('0x56')](_0x1b21c4[_0x54de('0x3b')],{'$or':_[_0x54de('0x2c')](_0x1b21c4[_0x54de('0x35')],function(_0x2e3197){var _0x2e40e4={};_0x2e40e4[_0x2e3197]={'$like':'%'+_0x4a9175[_0x54de('0x31')][_0x54de('0x3e')]+'%'};return _0x2e40e4;})});}_0x1b21c4[_0x54de('0x3b')]=_[_0x54de('0x56')](_0x1b21c4[_0x54de('0x3b')],{'mailboxuser':_0x58419e[_0x54de('0x57')]});_0x1b21c4=_[_0x54de('0x56')]({},_0x1b21c4,_0x4a9175[_0x54de('0x3f')]);return db[_0x54de('0x55')]['findAndCountAll'](_0x1b21c4)[_0x54de('0x25')](respondWithFilteredResult(_0x403cf1,_0x1b21c4));})[_0x54de('0x45')](handleError(_0x403cf1,null));};