Built motion from commit 64a6f4bc.|2.6.26
[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 _0x3928=['ioredis','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','api','../../config/utils','sendStatus','status','end','offset','undefined','count','Content-Range','json','apply','reject','save','update','then','destroy','stack','name','map','VoiceMailMessage','rawAttributes','fieldName','type','key','differenceBy','query','keys','filters','model','attributes','intersection','fields','hasOwnProperty','nolimit','limit','order','sort','where','pick','merge','VIRTUAL','filter','options','includeAll','include','rows','catch','show','length','find','create','body','params','download','recording','msg_id','Sequelize','ValidationError','VoiceMailMessage\x20not\x20found','audio/wav','Content-Disposition','attachment;\x20filename=\x22','set','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','mustache','util','to-csv','fs-extra','squel','crypto','jsforce','desk.js','querystring','papaparse'];(function(_0x56ec52,_0x35e3c3){var _0x324eb2=function(_0x38a417){while(--_0x38a417){_0x56ec52['push'](_0x56ec52['shift']());}};_0x324eb2(++_0x35e3c3);}(_0x3928,0xe9));var _0x8392=function(_0x16376c,_0x141a56){_0x16376c=_0x16376c-0x0;var _0x57e0d6=_0x3928[_0x16376c];return _0x57e0d6;};'use strict';var emlformat=require(_0x8392('0x0'));var rimraf=require(_0x8392('0x1'));var zipdir=require(_0x8392('0x2'));var jsonpatch=require(_0x8392('0x3'));var rp=require(_0x8392('0x4'));var moment=require(_0x8392('0x5'));var BPromise=require('bluebird');var Mustache=require(_0x8392('0x6'));var util=require(_0x8392('0x7'));var path=require('path');var sox=require('sox');var csv=require(_0x8392('0x8'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0x8392('0x9'));var _=require('lodash');var squel=require(_0x8392('0xa'));var crypto=require(_0x8392('0xb'));var jsforce=require(_0x8392('0xc'));var deskjs=require(_0x8392('0xd'));var toCsv=require(_0x8392('0x8'));var querystring=require(_0x8392('0xe'));var Papa=require(_0x8392('0xf'));var Redis=require(_0x8392('0x10'));var authService=require(_0x8392('0x11'));var qs=require(_0x8392('0x12'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x8392('0x13'));var logger=require('../../config/logger')(_0x8392('0x14'));var utils=require(_0x8392('0x15'));var config=require('../../config/environment');var licenseUtil=require('../../config/license/util');var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0xe4c587,_0x482627){_0x482627=_0x482627||0xcc;return function(_0x2cba4a){if(_0x2cba4a){return _0xe4c587[_0x8392('0x16')](_0x482627);}return _0xe4c587[_0x8392('0x17')](_0x482627)[_0x8392('0x18')]();};}function respondWithResult(_0x5d478b,_0x2a4123){_0x2a4123=_0x2a4123||0xc8;return function(_0xfb267c){if(_0xfb267c){return _0x5d478b[_0x8392('0x17')](_0x2a4123)['json'](_0xfb267c);}};}function respondWithFilteredResult(_0xbe33c,_0x313e00){return function(_0x3e913c){if(_0x3e913c){var _0x1fc755=typeof _0x313e00[_0x8392('0x19')]===_0x8392('0x1a')&&typeof _0x313e00['limit']==='undefined';var _0x141a68=_0x3e913c[_0x8392('0x1b')];var _0x2b8d80=_0x1fc755?0x0:_0x313e00[_0x8392('0x19')];var _0x5d96d6=_0x1fc755?_0x3e913c['count']:_0x313e00[_0x8392('0x19')]+_0x313e00['limit'];var _0x36fa5a;if(_0x5d96d6>=_0x141a68){_0x5d96d6=_0x141a68;_0x36fa5a=0xc8;}else{_0x36fa5a=0xce;}_0xbe33c[_0x8392('0x17')](_0x36fa5a);return _0xbe33c['set'](_0x8392('0x1c'),_0x2b8d80+'-'+_0x5d96d6+'/'+_0x141a68)[_0x8392('0x1d')](_0x3e913c);}return null;};}function patchUpdates(_0x459e27){return function(_0x2da6fe){try{jsonpatch[_0x8392('0x1e')](_0x2da6fe,_0x459e27,!![]);}catch(_0x1d093d){return BPromise[_0x8392('0x1f')](_0x1d093d);}return _0x2da6fe[_0x8392('0x20')]();};}function saveUpdates(_0xf5cc11,_0x160fdc){return function(_0x2548bb){if(_0x2548bb){return _0x2548bb[_0x8392('0x21')](_0xf5cc11)[_0x8392('0x22')](function(_0x5380f6){return _0x5380f6;});}return null;};}function removeEntity(_0x2a3ce3,_0x3e94f3){return function(_0x275b4b){if(_0x275b4b){return _0x275b4b[_0x8392('0x23')]()[_0x8392('0x22')](function(){_0x2a3ce3[_0x8392('0x17')](0xcc)['end']();});}};}function handleEntityNotFound(_0x4fc9cf,_0x2b08bb){return function(_0x4f43a7){if(!_0x4f43a7){_0x4fc9cf['sendStatus'](0x194);}return _0x4f43a7;};}function handleError(_0x239706,_0x411e6f){_0x411e6f=_0x411e6f||0x1f4;return function(_0x5d37f5){logger['error'](_0x5d37f5[_0x8392('0x24')]);if(_0x5d37f5[_0x8392('0x25')]){delete _0x5d37f5[_0x8392('0x25')];}_0x239706[_0x8392('0x17')](_0x411e6f)['send'](_0x5d37f5);};}exports['index']=function(_0x2e9a91,_0x3dcf39){var _0xc8415b={},_0x154946={},_0x553bde={'count':0x0,'rows':[]};var _0x22a089=_[_0x8392('0x26')](db[_0x8392('0x27')][_0x8392('0x28')],function(_0x24a4bf){return{'name':_0x24a4bf[_0x8392('0x29')],'type':_0x24a4bf[_0x8392('0x2a')][_0x8392('0x2b')]};});_0x154946['model']=_[_0x8392('0x2c')](_[_0x8392('0x26')](_0x22a089,_0x8392('0x25')),[_0x8392('0x25')]);_0x154946[_0x8392('0x2d')]=_[_0x8392('0x2e')](_0x2e9a91[_0x8392('0x2d')]);_0x154946[_0x8392('0x2f')]=_['intersection'](_0x154946[_0x8392('0x30')],_0x154946[_0x8392('0x2d')]);_0xc8415b[_0x8392('0x31')]=_[_0x8392('0x32')](_0x154946[_0x8392('0x30')],qs[_0x8392('0x33')](_0x2e9a91[_0x8392('0x2d')]['fields']));_0xc8415b[_0x8392('0x31')]=_0xc8415b['attributes']['length']?_0xc8415b['attributes']:_0x154946[_0x8392('0x30')];if(!_0x2e9a91['query'][_0x8392('0x34')](_0x8392('0x35'))){_0xc8415b[_0x8392('0x36')]=qs[_0x8392('0x36')](_0x2e9a91[_0x8392('0x2d')][_0x8392('0x36')]);_0xc8415b['offset']=qs[_0x8392('0x19')](_0x2e9a91['query']['offset']);}_0xc8415b[_0x8392('0x37')]=qs[_0x8392('0x38')](_0x2e9a91[_0x8392('0x2d')][_0x8392('0x38')]);_0xc8415b[_0x8392('0x39')]=qs[_0x8392('0x2f')](_[_0x8392('0x3a')](_0x2e9a91[_0x8392('0x2d')],_0x154946[_0x8392('0x2f')]),_0x22a089);if(_0x2e9a91[_0x8392('0x2d')]['filter']){_0xc8415b[_0x8392('0x39')]=_[_0x8392('0x3b')](_0xc8415b['where'],{'$or':_['map'](_0x22a089,function(_0x243e5e){if(_0x243e5e['type']!==_0x8392('0x3c')){var _0x3f1dcb={};_0x3f1dcb[_0x243e5e[_0x8392('0x25')]]={'$like':'%'+_0x2e9a91[_0x8392('0x2d')][_0x8392('0x3d')]+'%'};return _0x3f1dcb;}})});}_0xc8415b=_[_0x8392('0x3b')]({},_0xc8415b,_0x2e9a91[_0x8392('0x3e')]);var _0x2ed244={'where':_0xc8415b[_0x8392('0x39')]};return db[_0x8392('0x27')][_0x8392('0x1b')](_0x2ed244)[_0x8392('0x22')](function(_0x8d8d2){_0x553bde[_0x8392('0x1b')]=_0x8d8d2;if(_0x2e9a91[_0x8392('0x2d')][_0x8392('0x3f')]){_0xc8415b[_0x8392('0x40')]=[{'all':!![]}];}return db[_0x8392('0x27')]['findAll'](_0xc8415b);})[_0x8392('0x22')](function(_0x491df0){_0x553bde[_0x8392('0x41')]=_0x491df0;return _0x553bde;})[_0x8392('0x22')](respondWithFilteredResult(_0x3dcf39,_0xc8415b))[_0x8392('0x42')](handleError(_0x3dcf39,null));};exports[_0x8392('0x43')]=function(_0x1ff9a3,_0x333b9d){var _0x1b59ef={'raw':!![],'where':{'id':_0x1ff9a3['params']['id']}},_0x5e36d1={};_0x5e36d1['model']=_[_0x8392('0x2e')](db['VoiceMailMessage'][_0x8392('0x28')]);_0x5e36d1[_0x8392('0x2d')]=_[_0x8392('0x2e')](_0x1ff9a3['query']);_0x5e36d1[_0x8392('0x2f')]=_[_0x8392('0x32')](_0x5e36d1['model'],_0x5e36d1[_0x8392('0x2d')]);_0x1b59ef['attributes']=_['intersection'](_0x5e36d1[_0x8392('0x30')],qs[_0x8392('0x33')](_0x1ff9a3[_0x8392('0x2d')][_0x8392('0x33')]));_0x1b59ef[_0x8392('0x31')]=_0x1b59ef[_0x8392('0x31')][_0x8392('0x44')]?_0x1b59ef[_0x8392('0x31')]:_0x5e36d1[_0x8392('0x30')];if(_0x1ff9a3[_0x8392('0x2d')][_0x8392('0x3f')]){_0x1b59ef['include']=[{'all':!![]}];}_0x1b59ef=_[_0x8392('0x3b')]({},_0x1b59ef,_0x1ff9a3[_0x8392('0x3e')]);return db[_0x8392('0x27')][_0x8392('0x45')](_0x1b59ef)['then'](handleEntityNotFound(_0x333b9d,null))[_0x8392('0x22')](respondWithResult(_0x333b9d,null))[_0x8392('0x42')](handleError(_0x333b9d,null));};exports[_0x8392('0x46')]=function(_0xe01c07,_0x415e41){return db['VoiceMailMessage']['create'](_0xe01c07[_0x8392('0x47')],{})[_0x8392('0x22')](respondWithResult(_0x415e41,0xc9))[_0x8392('0x42')](handleError(_0x415e41,null));};exports[_0x8392('0x21')]=function(_0x5a9a2a,_0x520c65){if(_0x5a9a2a[_0x8392('0x47')]['id']){delete _0x5a9a2a[_0x8392('0x47')]['id'];}return db[_0x8392('0x27')]['find']({'where':{'id':_0x5a9a2a[_0x8392('0x48')]['id']}})[_0x8392('0x22')](handleEntityNotFound(_0x520c65,null))[_0x8392('0x22')](saveUpdates(_0x5a9a2a[_0x8392('0x47')],null))[_0x8392('0x22')](respondWithResult(_0x520c65,null))['catch'](handleError(_0x520c65,null));};exports[_0x8392('0x23')]=function(_0x8e96,_0x457e31){return db[_0x8392('0x27')][_0x8392('0x45')]({'where':{'id':_0x8e96[_0x8392('0x48')]['id']}})[_0x8392('0x22')](handleEntityNotFound(_0x457e31,null))[_0x8392('0x22')](removeEntity(_0x457e31,null))[_0x8392('0x42')](handleError(_0x457e31,null));};exports[_0x8392('0x49')]=function(_0x26a7fa,_0x21e78b,_0x3a9165){return db[_0x8392('0x27')][_0x8392('0x45')]({'where':{'id':_0x26a7fa['params']['id']},'attributes':['id',_0x8392('0x4a'),_0x8392('0x4b')]})['then'](handleEntityNotFound(_0x21e78b,null))['then'](function(_0x1449e8){if(_0x1449e8){if(!_0x1449e8[_0x8392('0x4a')]){throw new db[(_0x8392('0x4c'))][(_0x8392('0x4d'))](_0x8392('0x4e'));}var _0x689f3d={'Content-Type':_0x8392('0x4f'),'Content-Disposition':'attachment'};if(_0x1449e8[_0x8392('0x4b')]){_0x689f3d[_0x8392('0x50')]=_0x8392('0x51')+_0x1449e8['msg_id']+'.wav\x22';}_0x21e78b[_0x8392('0x52')](_0x689f3d);return _0x21e78b['send'](new Buffer(_0x1449e8['recording']));}})[_0x8392('0x42')](handleError(_0x21e78b,null));};