Built motion from commit (unavailable).|2.5.23
[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 _0x27c1=['error','stack','name','send','index','VoiceMailMessage','fieldName','type','key','model','differenceBy','query','keys','filters','intersection','attributes','fields','length','sort','where','pick','filter','merge','VIRTUAL','includeAll','include','findAll','rows','rawAttributes','options','find','create','catch','body','params','download','recording','msg_id','ValidationError','VoiceMailMessage\x20not\x20found','audio/wav','attachment','.wav\x22','html-pdf','rimraf','zip-dir','request-promise','bluebird','path','to-csv','ejs','squel','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','end','json','count','offset','limit','set','Content-Range','reject','update','then','destroy'];(function(_0x16e424,_0x5cf723){var _0x49ad04=function(_0x4f7954){while(--_0x4f7954){_0x16e424['push'](_0x16e424['shift']());}};_0x49ad04(++_0x5cf723);}(_0x27c1,0x118));var _0x127c=function(_0x465a0c,_0x19d4d5){_0x465a0c=_0x465a0c-0x0;var _0x1e202e=_0x27c1[_0x465a0c];return _0x1e202e;};'use strict';var pdf=require(_0x127c('0x0'));var emlformat=require('eml-format');var rimraf=require(_0x127c('0x1'));var zipdir=require(_0x127c('0x2'));var jsonpatch=require('fast-json-patch');var rp=require(_0x127c('0x3'));var moment=require('moment');var BPromise=require(_0x127c('0x4'));var Mustache=require('mustache');var util=require('util');var path=require(_0x127c('0x5'));var sox=require('sox');var csv=require(_0x127c('0x6'));var ejs=require(_0x127c('0x7'));var fs=require('fs');var _=require('lodash');var squel=require(_0x127c('0x8'));var crypto=require(_0x127c('0x9'));var jsforce=require(_0x127c('0xa'));var deskjs=require(_0x127c('0xb'));var toCsv=require(_0x127c('0x6'));var querystring=require(_0x127c('0xc'));var Papa=require(_0x127c('0xd'));var Redis=require(_0x127c('0xe'));var authService=require(_0x127c('0xf'));var qs=require('../../components/parsers/qs');var as=require(_0x127c('0x10'));var hardwareService=require(_0x127c('0x11'));var logger=require(_0x127c('0x12'))(_0x127c('0x13'));var utils=require('../../config/utils');var config=require(_0x127c('0x14'));var licenseUtil=require(_0x127c('0x15'));var db=require(_0x127c('0x16'))['db'];function respondWithStatusCode(_0x4bcc32,_0x1bb85){_0x1bb85=_0x1bb85||0xcc;return function(_0x73b1ec){if(_0x73b1ec){return _0x4bcc32[_0x127c('0x17')](_0x1bb85);}return _0x4bcc32[_0x127c('0x18')](_0x1bb85)[_0x127c('0x19')]();};}function respondWithResult(_0x3bbb81,_0x30e79e){_0x30e79e=_0x30e79e||0xc8;return function(_0x571f24){if(_0x571f24){return _0x3bbb81[_0x127c('0x18')](_0x30e79e)[_0x127c('0x1a')](_0x571f24);}};}function respondWithFilteredResult(_0x3127ec,_0x1b650c){return function(_0x48142c){if(_0x48142c){var _0x1b47eb=_0x48142c[_0x127c('0x1b')],_0x33ccf9=_0x1b650c[_0x127c('0x1c')],_0x3b72e2=_0x1b650c[_0x127c('0x1c')]+_0x1b650c[_0x127c('0x1d')],_0x12c24f;if(_0x3b72e2>=_0x1b47eb){_0x3b72e2=_0x1b47eb;_0x12c24f=0xc8;}else{_0x12c24f=0xce;}_0x3127ec['status'](_0x12c24f);return _0x3127ec[_0x127c('0x1e')](_0x127c('0x1f'),_0x33ccf9+'-'+_0x3b72e2+'/'+_0x1b47eb)[_0x127c('0x1a')](_0x48142c);}return null;};}function patchUpdates(_0x40a320){return function(_0x2952ef){try{jsonpatch['apply'](_0x2952ef,_0x40a320,!![]);}catch(_0x7fbc50){return BPromise[_0x127c('0x20')](_0x7fbc50);}return _0x2952ef['save']();};}function saveUpdates(_0x547256,_0x1138e8){return function(_0x1ed4e8){if(_0x1ed4e8){return _0x1ed4e8[_0x127c('0x21')](_0x547256)[_0x127c('0x22')](function(_0x212a97){return _0x212a97;});}return null;};}function removeEntity(_0x2111b4,_0x24cb25){return function(_0x592ded){if(_0x592ded){return _0x592ded[_0x127c('0x23')]()[_0x127c('0x22')](function(){_0x2111b4['status'](0xcc)[_0x127c('0x19')]();});}};}function handleEntityNotFound(_0x23c281,_0xf9362a){return function(_0x226644){if(!_0x226644){_0x23c281[_0x127c('0x17')](0x194);}return _0x226644;};}function handleError(_0x5186e3,_0x53ab65){_0x53ab65=_0x53ab65||0x1f4;return function(_0x5c9f3d){logger[_0x127c('0x24')](_0x5c9f3d[_0x127c('0x25')]);if(_0x5c9f3d[_0x127c('0x26')]){delete _0x5c9f3d[_0x127c('0x26')];}_0x5186e3[_0x127c('0x18')](_0x53ab65)[_0x127c('0x27')](_0x5c9f3d);};}exports[_0x127c('0x28')]=function(_0x2fbfdd,_0x526a54){var _0x309e3c={},_0x3b0189={},_0x4832f6={'count':0x0,'rows':[]};var _0x169d22=_['map'](db[_0x127c('0x29')]['rawAttributes'],function(_0x1d639b){return{'name':_0x1d639b[_0x127c('0x2a')],'type':_0x1d639b[_0x127c('0x2b')][_0x127c('0x2c')]};});_0x3b0189[_0x127c('0x2d')]=_[_0x127c('0x2e')](_['map'](_0x169d22,_0x127c('0x26')),[_0x127c('0x26')]);_0x3b0189[_0x127c('0x2f')]=_[_0x127c('0x30')](_0x2fbfdd[_0x127c('0x2f')]);_0x3b0189[_0x127c('0x31')]=_[_0x127c('0x32')](_0x3b0189[_0x127c('0x2d')],_0x3b0189['query']);_0x309e3c[_0x127c('0x33')]=_[_0x127c('0x32')](_0x3b0189['model'],qs[_0x127c('0x34')](_0x2fbfdd['query'][_0x127c('0x34')]));_0x309e3c['attributes']=_0x309e3c[_0x127c('0x33')][_0x127c('0x35')]?_0x309e3c[_0x127c('0x33')]:_0x3b0189[_0x127c('0x2d')];if(!_0x2fbfdd[_0x127c('0x2f')]['hasOwnProperty']('nolimit')){_0x309e3c[_0x127c('0x1d')]=qs['limit'](_0x2fbfdd['query'][_0x127c('0x1d')]);_0x309e3c[_0x127c('0x1c')]=qs[_0x127c('0x1c')](_0x2fbfdd['query'][_0x127c('0x1c')]);}_0x309e3c['order']=qs[_0x127c('0x36')](_0x2fbfdd[_0x127c('0x2f')][_0x127c('0x36')]);_0x309e3c[_0x127c('0x37')]=qs['filters'](_[_0x127c('0x38')](_0x2fbfdd[_0x127c('0x2f')],_0x3b0189[_0x127c('0x31')]),_0x169d22);if(_0x2fbfdd[_0x127c('0x2f')][_0x127c('0x39')]){_0x309e3c[_0x127c('0x37')]=_[_0x127c('0x3a')](_0x309e3c[_0x127c('0x37')],{'$or':_['map'](_0x169d22,function(_0x571ad1){if(_0x571ad1[_0x127c('0x2b')]!==_0x127c('0x3b')){var _0x268d14={};_0x268d14[_0x571ad1[_0x127c('0x26')]]={'$like':'%'+_0x2fbfdd[_0x127c('0x2f')][_0x127c('0x39')]+'%'};return _0x268d14;}})});}_0x309e3c=_[_0x127c('0x3a')]({},_0x309e3c,_0x2fbfdd['options']);var _0x54c2d7={'where':_0x309e3c[_0x127c('0x37')]};return db[_0x127c('0x29')][_0x127c('0x1b')](_0x54c2d7)[_0x127c('0x22')](function(_0xe33667){_0x4832f6[_0x127c('0x1b')]=_0xe33667;if(_0x2fbfdd[_0x127c('0x2f')][_0x127c('0x3c')]){_0x309e3c[_0x127c('0x3d')]=[{'all':!![]}];}return db[_0x127c('0x29')][_0x127c('0x3e')](_0x309e3c);})[_0x127c('0x22')](function(_0xaec8e4){_0x4832f6[_0x127c('0x3f')]=_0xaec8e4;return _0x4832f6;})['then'](respondWithFilteredResult(_0x526a54,_0x309e3c))['catch'](handleError(_0x526a54,null));};exports['show']=function(_0x3b1d36,_0x1615df){var _0x55340f={'raw':!![],'where':{'id':_0x3b1d36['params']['id']}},_0x4ed447={};_0x4ed447[_0x127c('0x2d')]=_['keys'](db[_0x127c('0x29')][_0x127c('0x40')]);_0x4ed447[_0x127c('0x2f')]=_['keys'](_0x3b1d36['query']);_0x4ed447[_0x127c('0x31')]=_[_0x127c('0x32')](_0x4ed447['model'],_0x4ed447[_0x127c('0x2f')]);_0x55340f[_0x127c('0x33')]=_[_0x127c('0x32')](_0x4ed447[_0x127c('0x2d')],qs[_0x127c('0x34')](_0x3b1d36[_0x127c('0x2f')][_0x127c('0x34')]));_0x55340f[_0x127c('0x33')]=_0x55340f[_0x127c('0x33')][_0x127c('0x35')]?_0x55340f['attributes']:_0x4ed447[_0x127c('0x2d')];if(_0x3b1d36[_0x127c('0x2f')][_0x127c('0x3c')]){_0x55340f[_0x127c('0x3d')]=[{'all':!![]}];}_0x55340f=_[_0x127c('0x3a')]({},_0x55340f,_0x3b1d36[_0x127c('0x41')]);return db['VoiceMailMessage'][_0x127c('0x42')](_0x55340f)['then'](handleEntityNotFound(_0x1615df,null))[_0x127c('0x22')](respondWithResult(_0x1615df,null))['catch'](handleError(_0x1615df,null));};exports[_0x127c('0x43')]=function(_0x50595c,_0x2da88f){return db[_0x127c('0x29')][_0x127c('0x43')](_0x50595c['body'],{})['then'](respondWithResult(_0x2da88f,0xc9))[_0x127c('0x44')](handleError(_0x2da88f,null));};exports[_0x127c('0x21')]=function(_0xef7a25,_0x37e9ad){if(_0xef7a25['body']['id']){delete _0xef7a25[_0x127c('0x45')]['id'];}return db[_0x127c('0x29')]['find']({'where':{'id':_0xef7a25[_0x127c('0x46')]['id']}})[_0x127c('0x22')](handleEntityNotFound(_0x37e9ad,null))[_0x127c('0x22')](saveUpdates(_0xef7a25[_0x127c('0x45')],null))[_0x127c('0x22')](respondWithResult(_0x37e9ad,null))[_0x127c('0x44')](handleError(_0x37e9ad,null));};exports[_0x127c('0x23')]=function(_0x282eec,_0x570e6d){return db['VoiceMailMessage'][_0x127c('0x42')]({'where':{'id':_0x282eec[_0x127c('0x46')]['id']}})['then'](handleEntityNotFound(_0x570e6d,null))['then'](removeEntity(_0x570e6d,null))[_0x127c('0x44')](handleError(_0x570e6d,null));};exports[_0x127c('0x47')]=function(_0x174bc0,_0x218d99,_0x2277ce){return db[_0x127c('0x29')][_0x127c('0x42')]({'where':{'id':_0x174bc0[_0x127c('0x46')]['id']},'attributes':['id',_0x127c('0x48'),_0x127c('0x49')]})[_0x127c('0x22')](handleEntityNotFound(_0x218d99,null))['then'](function(_0x2558ca){if(_0x2558ca){if(!_0x2558ca[_0x127c('0x48')]){throw new db['Sequelize'][(_0x127c('0x4a'))](_0x127c('0x4b'));}var _0x4f258a={'Content-Type':_0x127c('0x4c'),'Content-Disposition':_0x127c('0x4d')};if(_0x2558ca[_0x127c('0x49')]){_0x4f258a['Content-Disposition']='attachment;\x20filename=\x22'+_0x2558ca['msg_id']+_0x127c('0x4e');}_0x218d99['set'](_0x4f258a);return _0x218d99[_0x127c('0x27')](new Buffer(_0x2558ca[_0x127c('0x48')]));}})[_0x127c('0x44')](handleError(_0x218d99,null));};