2d92f4c2e8aadc2dd86a5eaaa405a03ea6cc5c91
[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 _0x5b02=['../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','sendStatus','status','end','json','count','offset','set','Content-Range','reject','save','update','then','error','stack','name','send','index','VoiceMailMessage','rawAttributes','fieldName','type','key','model','differenceBy','map','query','keys','intersection','attributes','fields','hasOwnProperty','limit','order','sort','where','filters','pick','filter','VIRTUAL','merge','options','include','findAll','catch','show','params','length','includeAll','create','body','find','download','recording','Sequelize','ValidationError','VoiceMailMessage\x20not\x20found','audio/wav','msg_id','attachment;\x20filename=\x22','html-pdf','eml-format','rimraf','zip-dir','moment','mustache','util','path','sox','to-csv','lodash','squel','jsforce','querystring','papaparse','ioredis'];(function(_0x9d2bdc,_0x4f2b6a){var _0x410615=function(_0x56b661){while(--_0x56b661){_0x9d2bdc['push'](_0x9d2bdc['shift']());}};_0x410615(++_0x4f2b6a);}(_0x5b02,0xe9));var _0x25b0=function(_0x367363,_0x45ceac){_0x367363=_0x367363-0x0;var _0x2c802c=_0x5b02[_0x367363];return _0x2c802c;};'use strict';var pdf=require(_0x25b0('0x0'));var emlformat=require(_0x25b0('0x1'));var rimraf=require(_0x25b0('0x2'));var zipdir=require(_0x25b0('0x3'));var jsonpatch=require('fast-json-patch');var rp=require('request-promise');var moment=require(_0x25b0('0x4'));var BPromise=require('bluebird');var Mustache=require(_0x25b0('0x5'));var util=require(_0x25b0('0x6'));var path=require(_0x25b0('0x7'));var sox=require(_0x25b0('0x8'));var csv=require(_0x25b0('0x9'));var ejs=require('ejs');var fs=require('fs');var _=require(_0x25b0('0xa'));var squel=require(_0x25b0('0xb'));var crypto=require('crypto');var jsforce=require(_0x25b0('0xc'));var deskjs=require('desk.js');var toCsv=require('to-csv');var querystring=require(_0x25b0('0xd'));var Papa=require(_0x25b0('0xe'));var Redis=require(_0x25b0('0xf'));var authService=require('../../components/auth/service');var qs=require(_0x25b0('0x10'));var as=require(_0x25b0('0x11'));var hardwareService=require(_0x25b0('0x12'));var logger=require(_0x25b0('0x13'))(_0x25b0('0x14'));var utils=require(_0x25b0('0x15'));var config=require(_0x25b0('0x16'));var db=require(_0x25b0('0x17'))['db'];function respondWithStatusCode(_0x193c2b,_0x1d3178){_0x1d3178=_0x1d3178||0xcc;return function(_0x184452){if(_0x184452){return _0x193c2b[_0x25b0('0x18')](_0x1d3178);}return _0x193c2b[_0x25b0('0x19')](_0x1d3178)[_0x25b0('0x1a')]();};}function respondWithResult(_0x1ceeb1,_0x42cc07){_0x42cc07=_0x42cc07||0xc8;return function(_0x293203){if(_0x293203){return _0x1ceeb1[_0x25b0('0x19')](_0x42cc07)[_0x25b0('0x1b')](_0x293203);}};}function respondWithFilteredResult(_0x3b89e7,_0x40071c){return function(_0x5ac18d){if(_0x5ac18d){var _0x51542b=_0x5ac18d[_0x25b0('0x1c')],_0xfe1ea6=_0x40071c[_0x25b0('0x1d')],_0x4b2357=_0x40071c[_0x25b0('0x1d')]+_0x40071c['limit'],_0xa8280a;if(_0x4b2357>=_0x51542b){_0x4b2357=_0x51542b;_0xa8280a=0xc8;}else{_0xa8280a=0xce;}_0x3b89e7[_0x25b0('0x19')](_0xa8280a);return _0x3b89e7[_0x25b0('0x1e')](_0x25b0('0x1f'),_0xfe1ea6+'-'+_0x4b2357+'/'+_0x51542b)[_0x25b0('0x1b')](_0x5ac18d);}return null;};}function patchUpdates(_0xe750bf){return function(_0x25872d){try{jsonpatch['apply'](_0x25872d,_0xe750bf,!![]);}catch(_0x348d36){return BPromise[_0x25b0('0x20')](_0x348d36);}return _0x25872d[_0x25b0('0x21')]();};}function saveUpdates(_0x1507b5,_0x1dc691){return function(_0xea4162){if(_0xea4162){return _0xea4162[_0x25b0('0x22')](_0x1507b5)[_0x25b0('0x23')](function(_0x7bdaf9){return _0x7bdaf9;});}return null;};}function removeEntity(_0x35939f,_0x2b2eda){return function(_0x3ce1da){if(_0x3ce1da){return _0x3ce1da['destroy']()[_0x25b0('0x23')](function(){_0x35939f[_0x25b0('0x19')](0xcc)['end']();});}};}function handleEntityNotFound(_0x2d7c17,_0x2023d8){return function(_0x3546f0){if(!_0x3546f0){_0x2d7c17['sendStatus'](0x194);}return _0x3546f0;};}function handleError(_0x4b87c9,_0x50089e){_0x50089e=_0x50089e||0x1f4;return function(_0x3fe815){logger[_0x25b0('0x24')](_0x3fe815[_0x25b0('0x25')]);if(_0x3fe815[_0x25b0('0x26')]){delete _0x3fe815[_0x25b0('0x26')];}_0x4b87c9[_0x25b0('0x19')](_0x50089e)[_0x25b0('0x27')](_0x3fe815);};}exports[_0x25b0('0x28')]=function(_0x22e024,_0x596d14){var _0x2ea408={},_0xbfba84={},_0x5ed7d2={'count':0x0,'rows':[]};var _0x567775=_['map'](db[_0x25b0('0x29')][_0x25b0('0x2a')],function(_0x251fad){return{'name':_0x251fad[_0x25b0('0x2b')],'type':_0x251fad[_0x25b0('0x2c')][_0x25b0('0x2d')]};});_0xbfba84[_0x25b0('0x2e')]=_[_0x25b0('0x2f')](_[_0x25b0('0x30')](_0x567775,_0x25b0('0x26')),[_0x25b0('0x26')]);_0xbfba84[_0x25b0('0x31')]=_[_0x25b0('0x32')](_0x22e024['query']);_0xbfba84['filters']=_[_0x25b0('0x33')](_0xbfba84['model'],_0xbfba84['query']);_0x2ea408[_0x25b0('0x34')]=_[_0x25b0('0x33')](_0xbfba84[_0x25b0('0x2e')],qs[_0x25b0('0x35')](_0x22e024[_0x25b0('0x31')]['fields']));_0x2ea408[_0x25b0('0x34')]=_0x2ea408[_0x25b0('0x34')]['length']?_0x2ea408[_0x25b0('0x34')]:_0xbfba84[_0x25b0('0x2e')];if(!_0x22e024['query'][_0x25b0('0x36')]('nolimit')){_0x2ea408[_0x25b0('0x37')]=qs[_0x25b0('0x37')](_0x22e024[_0x25b0('0x31')][_0x25b0('0x37')]);_0x2ea408[_0x25b0('0x1d')]=qs[_0x25b0('0x1d')](_0x22e024[_0x25b0('0x31')][_0x25b0('0x1d')]);}_0x2ea408[_0x25b0('0x38')]=qs['sort'](_0x22e024[_0x25b0('0x31')][_0x25b0('0x39')]);_0x2ea408[_0x25b0('0x3a')]=qs[_0x25b0('0x3b')](_[_0x25b0('0x3c')](_0x22e024[_0x25b0('0x31')],_0xbfba84[_0x25b0('0x3b')]),_0x567775);if(_0x22e024[_0x25b0('0x31')][_0x25b0('0x3d')]){_0x2ea408[_0x25b0('0x3a')]=_['merge'](_0x2ea408[_0x25b0('0x3a')],{'$or':_[_0x25b0('0x30')](_0x567775,function(_0x42a7af){if(_0x42a7af['type']!==_0x25b0('0x3e')){var _0x42a0ed={};_0x42a0ed[_0x42a7af[_0x25b0('0x26')]]={'$like':'%'+_0x22e024[_0x25b0('0x31')][_0x25b0('0x3d')]+'%'};return _0x42a0ed;}})});}_0x2ea408=_[_0x25b0('0x3f')]({},_0x2ea408,_0x22e024[_0x25b0('0x40')]);var _0x391493={'where':_0x2ea408['where']};return db['VoiceMailMessage'][_0x25b0('0x1c')](_0x391493)[_0x25b0('0x23')](function(_0x3f4ae0){_0x5ed7d2['count']=_0x3f4ae0;if(_0x22e024[_0x25b0('0x31')]['includeAll']){_0x2ea408[_0x25b0('0x41')]=[{'all':!![]}];}return db[_0x25b0('0x29')][_0x25b0('0x42')](_0x2ea408);})[_0x25b0('0x23')](function(_0x8a2eeb){_0x5ed7d2['rows']=_0x8a2eeb;return _0x5ed7d2;})[_0x25b0('0x23')](respondWithFilteredResult(_0x596d14,_0x2ea408))[_0x25b0('0x43')](handleError(_0x596d14,null));};exports[_0x25b0('0x44')]=function(_0x376d8a,_0x428799){var _0x5a9e86={'raw':!![],'where':{'id':_0x376d8a[_0x25b0('0x45')]['id']}},_0x327659={};_0x327659[_0x25b0('0x2e')]=_[_0x25b0('0x32')](db[_0x25b0('0x29')][_0x25b0('0x2a')]);_0x327659[_0x25b0('0x31')]=_[_0x25b0('0x32')](_0x376d8a[_0x25b0('0x31')]);_0x327659[_0x25b0('0x3b')]=_[_0x25b0('0x33')](_0x327659['model'],_0x327659[_0x25b0('0x31')]);_0x5a9e86['attributes']=_[_0x25b0('0x33')](_0x327659[_0x25b0('0x2e')],qs[_0x25b0('0x35')](_0x376d8a[_0x25b0('0x31')]['fields']));_0x5a9e86[_0x25b0('0x34')]=_0x5a9e86[_0x25b0('0x34')][_0x25b0('0x46')]?_0x5a9e86['attributes']:_0x327659[_0x25b0('0x2e')];if(_0x376d8a[_0x25b0('0x31')][_0x25b0('0x47')]){_0x5a9e86[_0x25b0('0x41')]=[{'all':!![]}];}_0x5a9e86=_[_0x25b0('0x3f')]({},_0x5a9e86,_0x376d8a[_0x25b0('0x40')]);return db[_0x25b0('0x29')]['find'](_0x5a9e86)[_0x25b0('0x23')](handleEntityNotFound(_0x428799,null))[_0x25b0('0x23')](respondWithResult(_0x428799,null))[_0x25b0('0x43')](handleError(_0x428799,null));};exports['create']=function(_0xbaeb06,_0xda629){return db[_0x25b0('0x29')][_0x25b0('0x48')](_0xbaeb06[_0x25b0('0x49')],{})['then'](respondWithResult(_0xda629,0xc9))[_0x25b0('0x43')](handleError(_0xda629,null));};exports[_0x25b0('0x22')]=function(_0x23de77,_0x524e9a){if(_0x23de77[_0x25b0('0x49')]['id']){delete _0x23de77[_0x25b0('0x49')]['id'];}return db[_0x25b0('0x29')][_0x25b0('0x4a')]({'where':{'id':_0x23de77[_0x25b0('0x45')]['id']}})[_0x25b0('0x23')](handleEntityNotFound(_0x524e9a,null))['then'](saveUpdates(_0x23de77['body'],null))['then'](respondWithResult(_0x524e9a,null))[_0x25b0('0x43')](handleError(_0x524e9a,null));};exports['destroy']=function(_0x48bc07,_0x2c5b9e){return db['VoiceMailMessage'][_0x25b0('0x4a')]({'where':{'id':_0x48bc07['params']['id']}})['then'](handleEntityNotFound(_0x2c5b9e,null))[_0x25b0('0x23')](removeEntity(_0x2c5b9e,null))[_0x25b0('0x43')](handleError(_0x2c5b9e,null));};exports[_0x25b0('0x4b')]=function(_0x34ded7,_0x42d139,_0xf3aef8){return db[_0x25b0('0x29')][_0x25b0('0x4a')]({'where':{'id':_0x34ded7[_0x25b0('0x45')]['id']},'attributes':['id',_0x25b0('0x4c'),'msg_id']})['then'](handleEntityNotFound(_0x42d139,null))['then'](function(_0xf1e6bf){if(_0xf1e6bf){if(!_0xf1e6bf[_0x25b0('0x4c')]){throw new db[(_0x25b0('0x4d'))][(_0x25b0('0x4e'))](_0x25b0('0x4f'));}var _0x3f460f={'Content-Type':_0x25b0('0x50'),'Content-Disposition':'attachment'};if(_0xf1e6bf[_0x25b0('0x51')]){_0x3f460f['Content-Disposition']=_0x25b0('0x52')+_0xf1e6bf['msg_id']+'.wav\x22';}_0x42d139[_0x25b0('0x1e')](_0x3f460f);return _0x42d139['send'](new Buffer(_0xf1e6bf['recording']));}})[_0x25b0('0x43')](handleError(_0x42d139,null));};