Built motion from commit a61a4a20.|2.5.46
[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 _0x5107=['papaparse','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/license/util','../../mysqldb','status','end','offset','undefined','limit','count','Content-Range','json','apply','reject','update','then','sendStatus','error','name','send','index','map','rawAttributes','fieldName','type','key','model','differenceBy','query','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','pick','filter','merge','include','VoiceMailMessage','findAll','rows','show','params','keys','includeAll','options','find','catch','create','body','recording','msg_id','ValidationError','VoiceMailMessage\x20not\x20found','audio/wav','Content-Disposition','set','eml-format','rimraf','zip-dir','fast-json-patch','moment','bluebird','mustache','path','sox','to-csv','ejs','fs-extra','lodash','squel','crypto','jsforce','desk.js'];(function(_0x433a86,_0x175b5c){var _0x23000c=function(_0x4b1fa0){while(--_0x4b1fa0){_0x433a86['push'](_0x433a86['shift']());}};_0x23000c(++_0x175b5c);}(_0x5107,0x198));var _0x7510=function(_0x2c947f,_0x198089){_0x2c947f=_0x2c947f-0x0;var _0xe3c2e1=_0x5107[_0x2c947f];return _0xe3c2e1;};'use strict';var emlformat=require(_0x7510('0x0'));var rimraf=require(_0x7510('0x1'));var zipdir=require(_0x7510('0x2'));var jsonpatch=require(_0x7510('0x3'));var rp=require('request-promise');var moment=require(_0x7510('0x4'));var BPromise=require(_0x7510('0x5'));var Mustache=require(_0x7510('0x6'));var util=require('util');var path=require(_0x7510('0x7'));var sox=require(_0x7510('0x8'));var csv=require(_0x7510('0x9'));var ejs=require(_0x7510('0xa'));var fs=require('fs');var fs_extra=require(_0x7510('0xb'));var _=require(_0x7510('0xc'));var squel=require(_0x7510('0xd'));var crypto=require(_0x7510('0xe'));var jsforce=require(_0x7510('0xf'));var deskjs=require(_0x7510('0x10'));var toCsv=require(_0x7510('0x9'));var querystring=require('querystring');var Papa=require(_0x7510('0x11'));var Redis=require(_0x7510('0x12'));var authService=require('../../components/auth/service');var qs=require(_0x7510('0x13'));var as=require(_0x7510('0x14'));var hardwareService=require(_0x7510('0x15'));var logger=require(_0x7510('0x16'))(_0x7510('0x17'));var utils=require(_0x7510('0x18'));var config=require('../../config/environment');var licenseUtil=require(_0x7510('0x19'));var db=require(_0x7510('0x1a'))['db'];function respondWithStatusCode(_0xd50b6a,_0x326724){_0x326724=_0x326724||0xcc;return function(_0x1a196e){if(_0x1a196e){return _0xd50b6a['sendStatus'](_0x326724);}return _0xd50b6a[_0x7510('0x1b')](_0x326724)[_0x7510('0x1c')]();};}function respondWithResult(_0x3eb298,_0x299da4){_0x299da4=_0x299da4||0xc8;return function(_0x262ae1){if(_0x262ae1){return _0x3eb298['status'](_0x299da4)['json'](_0x262ae1);}};}function respondWithFilteredResult(_0x3d8f6e,_0x462981){return function(_0x2c747f){if(_0x2c747f){var _0x58bb23=typeof _0x462981[_0x7510('0x1d')]===_0x7510('0x1e')&&typeof _0x462981[_0x7510('0x1f')]===_0x7510('0x1e');var _0x59817c=_0x2c747f[_0x7510('0x20')];var _0x22053c=_0x58bb23?0x0:_0x462981[_0x7510('0x1d')];var _0x4133e3=_0x58bb23?_0x2c747f[_0x7510('0x20')]:_0x462981[_0x7510('0x1d')]+_0x462981[_0x7510('0x1f')];var _0x37156d;if(_0x4133e3>=_0x59817c){_0x4133e3=_0x59817c;_0x37156d=0xc8;}else{_0x37156d=0xce;}_0x3d8f6e['status'](_0x37156d);return _0x3d8f6e['set'](_0x7510('0x21'),_0x22053c+'-'+_0x4133e3+'/'+_0x59817c)[_0x7510('0x22')](_0x2c747f);}return null;};}function patchUpdates(_0x4be410){return function(_0x22deca){try{jsonpatch[_0x7510('0x23')](_0x22deca,_0x4be410,!![]);}catch(_0x268940){return BPromise[_0x7510('0x24')](_0x268940);}return _0x22deca['save']();};}function saveUpdates(_0x2b8a6b,_0x330500){return function(_0xbd0273){if(_0xbd0273){return _0xbd0273[_0x7510('0x25')](_0x2b8a6b)[_0x7510('0x26')](function(_0x2df56b){return _0x2df56b;});}return null;};}function removeEntity(_0x2a164a,_0x14f70c){return function(_0x286b48){if(_0x286b48){return _0x286b48['destroy']()[_0x7510('0x26')](function(){_0x2a164a['status'](0xcc)['end']();});}};}function handleEntityNotFound(_0x33b6ca,_0x144552){return function(_0x6acb51){if(!_0x6acb51){_0x33b6ca[_0x7510('0x27')](0x194);}return _0x6acb51;};}function handleError(_0x466483,_0x189db5){_0x189db5=_0x189db5||0x1f4;return function(_0x2a9174){logger[_0x7510('0x28')](_0x2a9174['stack']);if(_0x2a9174[_0x7510('0x29')]){delete _0x2a9174[_0x7510('0x29')];}_0x466483['status'](_0x189db5)[_0x7510('0x2a')](_0x2a9174);};}exports[_0x7510('0x2b')]=function(_0x205aca,_0x31536e){var _0x495ef7={},_0x567d7e={},_0x13d06a={'count':0x0,'rows':[]};var _0x233e63=_[_0x7510('0x2c')](db['VoiceMailMessage'][_0x7510('0x2d')],function(_0x158aa3){return{'name':_0x158aa3[_0x7510('0x2e')],'type':_0x158aa3[_0x7510('0x2f')][_0x7510('0x30')]};});_0x567d7e[_0x7510('0x31')]=_[_0x7510('0x32')](_[_0x7510('0x2c')](_0x233e63,_0x7510('0x29')),[_0x7510('0x29')]);_0x567d7e[_0x7510('0x33')]=_['keys'](_0x205aca[_0x7510('0x33')]);_0x567d7e[_0x7510('0x34')]=_[_0x7510('0x35')](_0x567d7e[_0x7510('0x31')],_0x567d7e['query']);_0x495ef7[_0x7510('0x36')]=_[_0x7510('0x35')](_0x567d7e[_0x7510('0x31')],qs[_0x7510('0x37')](_0x205aca[_0x7510('0x33')]['fields']));_0x495ef7['attributes']=_0x495ef7[_0x7510('0x36')][_0x7510('0x38')]?_0x495ef7[_0x7510('0x36')]:_0x567d7e['model'];if(!_0x205aca[_0x7510('0x33')][_0x7510('0x39')](_0x7510('0x3a'))){_0x495ef7[_0x7510('0x1f')]=qs[_0x7510('0x1f')](_0x205aca[_0x7510('0x33')][_0x7510('0x1f')]);_0x495ef7[_0x7510('0x1d')]=qs[_0x7510('0x1d')](_0x205aca[_0x7510('0x33')][_0x7510('0x1d')]);}_0x495ef7[_0x7510('0x3b')]=qs[_0x7510('0x3c')](_0x205aca[_0x7510('0x33')][_0x7510('0x3c')]);_0x495ef7[_0x7510('0x3d')]=qs[_0x7510('0x34')](_[_0x7510('0x3e')](_0x205aca['query'],_0x567d7e['filters']),_0x233e63);if(_0x205aca[_0x7510('0x33')][_0x7510('0x3f')]){_0x495ef7[_0x7510('0x3d')]=_[_0x7510('0x40')](_0x495ef7[_0x7510('0x3d')],{'$or':_[_0x7510('0x2c')](_0x233e63,function(_0x196092){if(_0x196092['type']!=='VIRTUAL'){var _0x29af12={};_0x29af12[_0x196092[_0x7510('0x29')]]={'$like':'%'+_0x205aca['query']['filter']+'%'};return _0x29af12;}})});}_0x495ef7=_[_0x7510('0x40')]({},_0x495ef7,_0x205aca['options']);var _0x211c77={'where':_0x495ef7[_0x7510('0x3d')]};return db['VoiceMailMessage']['count'](_0x211c77)[_0x7510('0x26')](function(_0x359cfe){_0x13d06a[_0x7510('0x20')]=_0x359cfe;if(_0x205aca[_0x7510('0x33')]['includeAll']){_0x495ef7[_0x7510('0x41')]=[{'all':!![]}];}return db[_0x7510('0x42')][_0x7510('0x43')](_0x495ef7);})['then'](function(_0x2d8e1f){_0x13d06a[_0x7510('0x44')]=_0x2d8e1f;return _0x13d06a;})['then'](respondWithFilteredResult(_0x31536e,_0x495ef7))['catch'](handleError(_0x31536e,null));};exports[_0x7510('0x45')]=function(_0x2ed9ca,_0x20d5f7){var _0x237149={'raw':!![],'where':{'id':_0x2ed9ca[_0x7510('0x46')]['id']}},_0x4d7701={};_0x4d7701['model']=_[_0x7510('0x47')](db[_0x7510('0x42')][_0x7510('0x2d')]);_0x4d7701[_0x7510('0x33')]=_[_0x7510('0x47')](_0x2ed9ca[_0x7510('0x33')]);_0x4d7701[_0x7510('0x34')]=_['intersection'](_0x4d7701[_0x7510('0x31')],_0x4d7701[_0x7510('0x33')]);_0x237149[_0x7510('0x36')]=_[_0x7510('0x35')](_0x4d7701['model'],qs[_0x7510('0x37')](_0x2ed9ca[_0x7510('0x33')][_0x7510('0x37')]));_0x237149[_0x7510('0x36')]=_0x237149['attributes']['length']?_0x237149[_0x7510('0x36')]:_0x4d7701[_0x7510('0x31')];if(_0x2ed9ca['query'][_0x7510('0x48')]){_0x237149[_0x7510('0x41')]=[{'all':!![]}];}_0x237149=_[_0x7510('0x40')]({},_0x237149,_0x2ed9ca[_0x7510('0x49')]);return db[_0x7510('0x42')][_0x7510('0x4a')](_0x237149)[_0x7510('0x26')](handleEntityNotFound(_0x20d5f7,null))[_0x7510('0x26')](respondWithResult(_0x20d5f7,null))[_0x7510('0x4b')](handleError(_0x20d5f7,null));};exports[_0x7510('0x4c')]=function(_0x53e320,_0xe04975){return db[_0x7510('0x42')][_0x7510('0x4c')](_0x53e320[_0x7510('0x4d')],{})[_0x7510('0x26')](respondWithResult(_0xe04975,0xc9))['catch'](handleError(_0xe04975,null));};exports[_0x7510('0x25')]=function(_0x3659ae,_0xf1c8fd){if(_0x3659ae['body']['id']){delete _0x3659ae['body']['id'];}return db[_0x7510('0x42')][_0x7510('0x4a')]({'where':{'id':_0x3659ae[_0x7510('0x46')]['id']}})[_0x7510('0x26')](handleEntityNotFound(_0xf1c8fd,null))[_0x7510('0x26')](saveUpdates(_0x3659ae[_0x7510('0x4d')],null))['then'](respondWithResult(_0xf1c8fd,null))[_0x7510('0x4b')](handleError(_0xf1c8fd,null));};exports['destroy']=function(_0x52e36f,_0x431a74){return db[_0x7510('0x42')][_0x7510('0x4a')]({'where':{'id':_0x52e36f['params']['id']}})[_0x7510('0x26')](handleEntityNotFound(_0x431a74,null))['then'](removeEntity(_0x431a74,null))['catch'](handleError(_0x431a74,null));};exports['download']=function(_0x59be1e,_0x1be04f,_0x3f80b5){return db['VoiceMailMessage'][_0x7510('0x4a')]({'where':{'id':_0x59be1e[_0x7510('0x46')]['id']},'attributes':['id',_0x7510('0x4e'),_0x7510('0x4f')]})[_0x7510('0x26')](handleEntityNotFound(_0x1be04f,null))[_0x7510('0x26')](function(_0x9a50f1){if(_0x9a50f1){if(!_0x9a50f1[_0x7510('0x4e')]){throw new db['Sequelize'][(_0x7510('0x50'))](_0x7510('0x51'));}var _0x4887a3={'Content-Type':_0x7510('0x52'),'Content-Disposition':'attachment'};if(_0x9a50f1[_0x7510('0x4f')]){_0x4887a3[_0x7510('0x53')]='attachment;\x20filename=\x22'+_0x9a50f1[_0x7510('0x4f')]+'.wav\x22';}_0x1be04f[_0x7510('0x54')](_0x4887a3);return _0x1be04f[_0x7510('0x2a')](new Buffer(_0x9a50f1[_0x7510('0x4e')]));}})['catch'](handleError(_0x1be04f,null));};