Built motion from commit 47436d59.|2.6.7
[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 _0xb34d=['stack','name','send','map','VoiceMailMessage','fieldName','key','model','differenceBy','query','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','pick','merge','type','VIRTUAL','filter','options','count','then','include','findAll','catch','params','rawAttributes','keys','includeAll','find','create','body','download','msg_id','recording','Sequelize','ValidationError','VoiceMailMessage\x20not\x20found','attachment','Content-Disposition','attachment;\x20filename=\x22','.wav\x22','set','eml-format','rimraf','fast-json-patch','request-promise','bluebird','mustache','util','path','sox','fs-extra','lodash','squel','jsforce','to-csv','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','api','../../config/license/util','../../mysqldb','status','json','offset','undefined','limit','Content-Range','apply','reject','save','update','destroy','sendStatus','error'];(function(_0x32bdce,_0x220be5){var _0x15ecc6=function(_0x4f94de){while(--_0x4f94de){_0x32bdce['push'](_0x32bdce['shift']());}};_0x15ecc6(++_0x220be5);}(_0xb34d,0x86));var _0xdb34=function(_0x3c5032,_0x5d2847){_0x3c5032=_0x3c5032-0x0;var _0x83d71a=_0xb34d[_0x3c5032];return _0x83d71a;};'use strict';var emlformat=require(_0xdb34('0x0'));var rimraf=require(_0xdb34('0x1'));var zipdir=require('zip-dir');var jsonpatch=require(_0xdb34('0x2'));var rp=require(_0xdb34('0x3'));var moment=require('moment');var BPromise=require(_0xdb34('0x4'));var Mustache=require(_0xdb34('0x5'));var util=require(_0xdb34('0x6'));var path=require(_0xdb34('0x7'));var sox=require(_0xdb34('0x8'));var csv=require('to-csv');var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0xdb34('0x9'));var _=require(_0xdb34('0xa'));var squel=require(_0xdb34('0xb'));var crypto=require('crypto');var jsforce=require(_0xdb34('0xc'));var deskjs=require('desk.js');var toCsv=require(_0xdb34('0xd'));var querystring=require('querystring');var Papa=require(_0xdb34('0xe'));var Redis=require(_0xdb34('0xf'));var authService=require(_0xdb34('0x10'));var qs=require(_0xdb34('0x11'));var as=require(_0xdb34('0x12'));var hardwareService=require(_0xdb34('0x13'));var logger=require('../../config/logger')(_0xdb34('0x14'));var utils=require('../../config/utils');var config=require('../../config/environment');var licenseUtil=require(_0xdb34('0x15'));var db=require(_0xdb34('0x16'))['db'];function respondWithStatusCode(_0x3008c4,_0x56d327){_0x56d327=_0x56d327||0xcc;return function(_0x8655df){if(_0x8655df){return _0x3008c4['sendStatus'](_0x56d327);}return _0x3008c4[_0xdb34('0x17')](_0x56d327)['end']();};}function respondWithResult(_0x4eff36,_0x5af89d){_0x5af89d=_0x5af89d||0xc8;return function(_0xc95f06){if(_0xc95f06){return _0x4eff36[_0xdb34('0x17')](_0x5af89d)[_0xdb34('0x18')](_0xc95f06);}};}function respondWithFilteredResult(_0x1b0d59,_0x42c16a){return function(_0x49dce8){if(_0x49dce8){var _0x419ab1=typeof _0x42c16a[_0xdb34('0x19')]===_0xdb34('0x1a')&&typeof _0x42c16a[_0xdb34('0x1b')]==='undefined';var _0x4382d6=_0x49dce8['count'];var _0x363dc6=_0x419ab1?0x0:_0x42c16a[_0xdb34('0x19')];var _0x31a1dc=_0x419ab1?_0x49dce8['count']:_0x42c16a[_0xdb34('0x19')]+_0x42c16a['limit'];var _0x9450c8;if(_0x31a1dc>=_0x4382d6){_0x31a1dc=_0x4382d6;_0x9450c8=0xc8;}else{_0x9450c8=0xce;}_0x1b0d59[_0xdb34('0x17')](_0x9450c8);return _0x1b0d59['set'](_0xdb34('0x1c'),_0x363dc6+'-'+_0x31a1dc+'/'+_0x4382d6)[_0xdb34('0x18')](_0x49dce8);}return null;};}function patchUpdates(_0x30c6f1){return function(_0x37ff11){try{jsonpatch[_0xdb34('0x1d')](_0x37ff11,_0x30c6f1,!![]);}catch(_0x4ed60d){return BPromise[_0xdb34('0x1e')](_0x4ed60d);}return _0x37ff11[_0xdb34('0x1f')]();};}function saveUpdates(_0x5b06fc,_0x369b49){return function(_0x4f2fc1){if(_0x4f2fc1){return _0x4f2fc1[_0xdb34('0x20')](_0x5b06fc)['then'](function(_0x1992d7){return _0x1992d7;});}return null;};}function removeEntity(_0x4f90f3,_0x4020b8){return function(_0x2b525e){if(_0x2b525e){return _0x2b525e[_0xdb34('0x21')]()['then'](function(){_0x4f90f3['status'](0xcc)['end']();});}};}function handleEntityNotFound(_0x565d57,_0x279a78){return function(_0x3beaba){if(!_0x3beaba){_0x565d57[_0xdb34('0x22')](0x194);}return _0x3beaba;};}function handleError(_0x5f4e5f,_0x5ac16f){_0x5ac16f=_0x5ac16f||0x1f4;return function(_0x54c04b){logger[_0xdb34('0x23')](_0x54c04b[_0xdb34('0x24')]);if(_0x54c04b['name']){delete _0x54c04b[_0xdb34('0x25')];}_0x5f4e5f[_0xdb34('0x17')](_0x5ac16f)[_0xdb34('0x26')](_0x54c04b);};}exports['index']=function(_0x2d332c,_0x3fc161){var _0xb18377={},_0x16762f={},_0x4cb035={'count':0x0,'rows':[]};var _0x168b4=_[_0xdb34('0x27')](db[_0xdb34('0x28')]['rawAttributes'],function(_0x578d36){return{'name':_0x578d36[_0xdb34('0x29')],'type':_0x578d36['type'][_0xdb34('0x2a')]};});_0x16762f[_0xdb34('0x2b')]=_[_0xdb34('0x2c')](_[_0xdb34('0x27')](_0x168b4,_0xdb34('0x25')),[_0xdb34('0x25')]);_0x16762f[_0xdb34('0x2d')]=_['keys'](_0x2d332c['query']);_0x16762f[_0xdb34('0x2e')]=_[_0xdb34('0x2f')](_0x16762f[_0xdb34('0x2b')],_0x16762f[_0xdb34('0x2d')]);_0xb18377[_0xdb34('0x30')]=_[_0xdb34('0x2f')](_0x16762f[_0xdb34('0x2b')],qs[_0xdb34('0x31')](_0x2d332c[_0xdb34('0x2d')][_0xdb34('0x31')]));_0xb18377[_0xdb34('0x30')]=_0xb18377[_0xdb34('0x30')][_0xdb34('0x32')]?_0xb18377[_0xdb34('0x30')]:_0x16762f[_0xdb34('0x2b')];if(!_0x2d332c[_0xdb34('0x2d')][_0xdb34('0x33')](_0xdb34('0x34'))){_0xb18377[_0xdb34('0x1b')]=qs['limit'](_0x2d332c[_0xdb34('0x2d')][_0xdb34('0x1b')]);_0xb18377[_0xdb34('0x19')]=qs['offset'](_0x2d332c[_0xdb34('0x2d')][_0xdb34('0x19')]);}_0xb18377[_0xdb34('0x35')]=qs[_0xdb34('0x36')](_0x2d332c[_0xdb34('0x2d')][_0xdb34('0x36')]);_0xb18377[_0xdb34('0x37')]=qs[_0xdb34('0x2e')](_[_0xdb34('0x38')](_0x2d332c['query'],_0x16762f['filters']),_0x168b4);if(_0x2d332c[_0xdb34('0x2d')]['filter']){_0xb18377[_0xdb34('0x37')]=_[_0xdb34('0x39')](_0xb18377['where'],{'$or':_[_0xdb34('0x27')](_0x168b4,function(_0x4eec5c){if(_0x4eec5c[_0xdb34('0x3a')]!==_0xdb34('0x3b')){var _0x493015={};_0x493015[_0x4eec5c[_0xdb34('0x25')]]={'$like':'%'+_0x2d332c[_0xdb34('0x2d')][_0xdb34('0x3c')]+'%'};return _0x493015;}})});}_0xb18377=_[_0xdb34('0x39')]({},_0xb18377,_0x2d332c[_0xdb34('0x3d')]);var _0xc2142f={'where':_0xb18377[_0xdb34('0x37')]};return db[_0xdb34('0x28')][_0xdb34('0x3e')](_0xc2142f)[_0xdb34('0x3f')](function(_0x43b094){_0x4cb035[_0xdb34('0x3e')]=_0x43b094;if(_0x2d332c[_0xdb34('0x2d')]['includeAll']){_0xb18377[_0xdb34('0x40')]=[{'all':!![]}];}return db['VoiceMailMessage'][_0xdb34('0x41')](_0xb18377);})[_0xdb34('0x3f')](function(_0x30e2f8){_0x4cb035['rows']=_0x30e2f8;return _0x4cb035;})[_0xdb34('0x3f')](respondWithFilteredResult(_0x3fc161,_0xb18377))[_0xdb34('0x42')](handleError(_0x3fc161,null));};exports['show']=function(_0x45c710,_0x3c6c48){var _0x123868={'raw':!![],'where':{'id':_0x45c710[_0xdb34('0x43')]['id']}},_0x1f1825={};_0x1f1825[_0xdb34('0x2b')]=_['keys'](db[_0xdb34('0x28')][_0xdb34('0x44')]);_0x1f1825[_0xdb34('0x2d')]=_[_0xdb34('0x45')](_0x45c710['query']);_0x1f1825['filters']=_[_0xdb34('0x2f')](_0x1f1825['model'],_0x1f1825[_0xdb34('0x2d')]);_0x123868[_0xdb34('0x30')]=_['intersection'](_0x1f1825[_0xdb34('0x2b')],qs['fields'](_0x45c710[_0xdb34('0x2d')][_0xdb34('0x31')]));_0x123868[_0xdb34('0x30')]=_0x123868[_0xdb34('0x30')][_0xdb34('0x32')]?_0x123868[_0xdb34('0x30')]:_0x1f1825['model'];if(_0x45c710['query'][_0xdb34('0x46')]){_0x123868['include']=[{'all':!![]}];}_0x123868=_[_0xdb34('0x39')]({},_0x123868,_0x45c710[_0xdb34('0x3d')]);return db[_0xdb34('0x28')][_0xdb34('0x47')](_0x123868)[_0xdb34('0x3f')](handleEntityNotFound(_0x3c6c48,null))[_0xdb34('0x3f')](respondWithResult(_0x3c6c48,null))[_0xdb34('0x42')](handleError(_0x3c6c48,null));};exports[_0xdb34('0x48')]=function(_0x23f738,_0x4f539a){return db[_0xdb34('0x28')][_0xdb34('0x48')](_0x23f738[_0xdb34('0x49')],{})['then'](respondWithResult(_0x4f539a,0xc9))[_0xdb34('0x42')](handleError(_0x4f539a,null));};exports[_0xdb34('0x20')]=function(_0x40ac63,_0x7d4012){if(_0x40ac63[_0xdb34('0x49')]['id']){delete _0x40ac63['body']['id'];}return db['VoiceMailMessage'][_0xdb34('0x47')]({'where':{'id':_0x40ac63[_0xdb34('0x43')]['id']}})['then'](handleEntityNotFound(_0x7d4012,null))[_0xdb34('0x3f')](saveUpdates(_0x40ac63[_0xdb34('0x49')],null))[_0xdb34('0x3f')](respondWithResult(_0x7d4012,null))[_0xdb34('0x42')](handleError(_0x7d4012,null));};exports['destroy']=function(_0x2655da,_0x1079d1){return db['VoiceMailMessage'][_0xdb34('0x47')]({'where':{'id':_0x2655da[_0xdb34('0x43')]['id']}})[_0xdb34('0x3f')](handleEntityNotFound(_0x1079d1,null))['then'](removeEntity(_0x1079d1,null))[_0xdb34('0x42')](handleError(_0x1079d1,null));};exports[_0xdb34('0x4a')]=function(_0x152219,_0x1b877b,_0x26b8c6){return db[_0xdb34('0x28')]['find']({'where':{'id':_0x152219[_0xdb34('0x43')]['id']},'attributes':['id','recording',_0xdb34('0x4b')]})[_0xdb34('0x3f')](handleEntityNotFound(_0x1b877b,null))[_0xdb34('0x3f')](function(_0x448922){if(_0x448922){if(!_0x448922[_0xdb34('0x4c')]){throw new db[(_0xdb34('0x4d'))][(_0xdb34('0x4e'))](_0xdb34('0x4f'));}var _0x9b05e0={'Content-Type':'audio/wav','Content-Disposition':_0xdb34('0x50')};if(_0x448922['msg_id']){_0x9b05e0[_0xdb34('0x51')]=_0xdb34('0x52')+_0x448922[_0xdb34('0x4b')]+_0xdb34('0x53');}_0x1b877b[_0xdb34('0x54')](_0x9b05e0);return _0x1b877b['send'](new Buffer(_0x448922['recording']));}})['catch'](handleError(_0x1b877b,null));};