4f4f5de5ae40453bbbb92909743285df5ae4834f
[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 _0x579c=['destroy','error','stack','name','map','VoiceMailMessage','fieldName','key','model','differenceBy','query','keys','filters','intersection','fields','attributes','length','hasOwnProperty','nolimit','order','sort','pick','filter','where','merge','type','options','includeAll','include','rows','catch','show','rawAttributes','find','create','body','params','recording','msg_id','Sequelize','ValidationError','VoiceMailMessage\x20not\x20found','audio/wav','Content-Disposition','attachment;\x20filename=\x22','send','html-pdf','eml-format','rimraf','zip-dir','fast-json-patch','moment','mustache','util','path','sox','to-csv','ejs','lodash','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','sendStatus','end','status','count','offset','limit','set','Content-Range','json','apply','save','update','then'];(function(_0x2f5132,_0x2b2d7b){var _0x15fdca=function(_0x525f52){while(--_0x525f52){_0x2f5132['push'](_0x2f5132['shift']());}};_0x15fdca(++_0x2b2d7b);}(_0x579c,0xda));var _0xc579=function(_0x1d3019,_0x8dbbd5){_0x1d3019=_0x1d3019-0x0;var _0x36458e=_0x579c[_0x1d3019];return _0x36458e;};'use strict';var pdf=require(_0xc579('0x0'));var emlformat=require(_0xc579('0x1'));var rimraf=require(_0xc579('0x2'));var zipdir=require(_0xc579('0x3'));var jsonpatch=require(_0xc579('0x4'));var rp=require('request-promise');var moment=require(_0xc579('0x5'));var BPromise=require('bluebird');var Mustache=require(_0xc579('0x6'));var util=require(_0xc579('0x7'));var path=require(_0xc579('0x8'));var sox=require(_0xc579('0x9'));var csv=require(_0xc579('0xa'));var ejs=require(_0xc579('0xb'));var fs=require('fs');var _=require(_0xc579('0xc'));var squel=require('squel');var crypto=require(_0xc579('0xd'));var jsforce=require(_0xc579('0xe'));var deskjs=require(_0xc579('0xf'));var toCsv=require(_0xc579('0xa'));var querystring=require(_0xc579('0x10'));var Papa=require(_0xc579('0x11'));var Redis=require(_0xc579('0x12'));var authService=require(_0xc579('0x13'));var qs=require('../../components/parsers/qs');var as=require(_0xc579('0x14'));var hardwareService=require(_0xc579('0x15'));var logger=require(_0xc579('0x16'))(_0xc579('0x17'));var utils=require(_0xc579('0x18'));var config=require(_0xc579('0x19'));var db=require(_0xc579('0x1a'))['db'];function respondWithStatusCode(_0x1905b7,_0x421812){_0x421812=_0x421812||0xcc;return function(_0x441028){if(_0x441028){return _0x1905b7[_0xc579('0x1b')](_0x421812);}return _0x1905b7['status'](_0x421812)[_0xc579('0x1c')]();};}function respondWithResult(_0x4f6057,_0xf5400e){_0xf5400e=_0xf5400e||0xc8;return function(_0x59243e){if(_0x59243e){return _0x4f6057[_0xc579('0x1d')](_0xf5400e)['json'](_0x59243e);}};}function respondWithFilteredResult(_0x44cd32,_0x4b3635){return function(_0x349e82){if(_0x349e82){var _0x115276=_0x349e82[_0xc579('0x1e')],_0x567de5=_0x4b3635[_0xc579('0x1f')],_0x54557b=_0x4b3635[_0xc579('0x1f')]+_0x4b3635[_0xc579('0x20')],_0x3f5d14;if(_0x54557b>=_0x115276){_0x54557b=_0x115276;_0x3f5d14=0xc8;}else{_0x3f5d14=0xce;}_0x44cd32[_0xc579('0x1d')](_0x3f5d14);return _0x44cd32[_0xc579('0x21')](_0xc579('0x22'),_0x567de5+'-'+_0x54557b+'/'+_0x115276)[_0xc579('0x23')](_0x349e82);}return null;};}function patchUpdates(_0x45aa9c){return function(_0x5e5f36){try{jsonpatch[_0xc579('0x24')](_0x5e5f36,_0x45aa9c,!![]);}catch(_0x2b7d74){return BPromise['reject'](_0x2b7d74);}return _0x5e5f36[_0xc579('0x25')]();};}function saveUpdates(_0x3b0327,_0x14fcdd){return function(_0x6501bc){if(_0x6501bc){return _0x6501bc[_0xc579('0x26')](_0x3b0327)[_0xc579('0x27')](function(_0x147bb6){return _0x147bb6;});}return null;};}function removeEntity(_0x1b214d,_0x55781e){return function(_0x92657f){if(_0x92657f){return _0x92657f[_0xc579('0x28')]()[_0xc579('0x27')](function(){_0x1b214d[_0xc579('0x1d')](0xcc)[_0xc579('0x1c')]();});}};}function handleEntityNotFound(_0x565a1b,_0x3634f2){return function(_0x3cf83f){if(!_0x3cf83f){_0x565a1b[_0xc579('0x1b')](0x194);}return _0x3cf83f;};}function handleError(_0x4dec5e,_0x45e1ac){_0x45e1ac=_0x45e1ac||0x1f4;return function(_0x5103b7){logger[_0xc579('0x29')](_0x5103b7[_0xc579('0x2a')]);if(_0x5103b7[_0xc579('0x2b')]){delete _0x5103b7['name'];}_0x4dec5e[_0xc579('0x1d')](_0x45e1ac)['send'](_0x5103b7);};}exports['index']=function(_0x56439a,_0x540d90){var _0x3f7363={},_0xfdbb73={},_0x2ddebd={'count':0x0,'rows':[]};var _0x206e39=_[_0xc579('0x2c')](db[_0xc579('0x2d')]['rawAttributes'],function(_0x4d78bc){return{'name':_0x4d78bc[_0xc579('0x2e')],'type':_0x4d78bc['type'][_0xc579('0x2f')]};});_0xfdbb73[_0xc579('0x30')]=_[_0xc579('0x31')](_[_0xc579('0x2c')](_0x206e39,_0xc579('0x2b')),[_0xc579('0x2b')]);_0xfdbb73[_0xc579('0x32')]=_[_0xc579('0x33')](_0x56439a['query']);_0xfdbb73[_0xc579('0x34')]=_[_0xc579('0x35')](_0xfdbb73[_0xc579('0x30')],_0xfdbb73[_0xc579('0x32')]);_0x3f7363['attributes']=_['intersection'](_0xfdbb73[_0xc579('0x30')],qs['fields'](_0x56439a[_0xc579('0x32')][_0xc579('0x36')]));_0x3f7363[_0xc579('0x37')]=_0x3f7363[_0xc579('0x37')][_0xc579('0x38')]?_0x3f7363['attributes']:_0xfdbb73[_0xc579('0x30')];if(!_0x56439a['query'][_0xc579('0x39')](_0xc579('0x3a'))){_0x3f7363['limit']=qs[_0xc579('0x20')](_0x56439a[_0xc579('0x32')]['limit']);_0x3f7363['offset']=qs[_0xc579('0x1f')](_0x56439a[_0xc579('0x32')]['offset']);}_0x3f7363[_0xc579('0x3b')]=qs[_0xc579('0x3c')](_0x56439a['query'][_0xc579('0x3c')]);_0x3f7363['where']=qs[_0xc579('0x34')](_[_0xc579('0x3d')](_0x56439a['query'],_0xfdbb73[_0xc579('0x34')]),_0x206e39);if(_0x56439a[_0xc579('0x32')][_0xc579('0x3e')]){_0x3f7363[_0xc579('0x3f')]=_[_0xc579('0x40')](_0x3f7363[_0xc579('0x3f')],{'$or':_['map'](_0x206e39,function(_0x50e6a3){if(_0x50e6a3[_0xc579('0x41')]!=='VIRTUAL'){var _0xc21792={};_0xc21792[_0x50e6a3[_0xc579('0x2b')]]={'$like':'%'+_0x56439a[_0xc579('0x32')][_0xc579('0x3e')]+'%'};return _0xc21792;}})});}_0x3f7363=_['merge']({},_0x3f7363,_0x56439a[_0xc579('0x42')]);var _0x2864de={'where':_0x3f7363[_0xc579('0x3f')]};return db['VoiceMailMessage']['count'](_0x2864de)['then'](function(_0x1ef28f){_0x2ddebd[_0xc579('0x1e')]=_0x1ef28f;if(_0x56439a[_0xc579('0x32')][_0xc579('0x43')]){_0x3f7363[_0xc579('0x44')]=[{'all':!![]}];}return db[_0xc579('0x2d')]['findAll'](_0x3f7363);})[_0xc579('0x27')](function(_0x53ab02){_0x2ddebd[_0xc579('0x45')]=_0x53ab02;return _0x2ddebd;})[_0xc579('0x27')](respondWithFilteredResult(_0x540d90,_0x3f7363))[_0xc579('0x46')](handleError(_0x540d90,null));};exports[_0xc579('0x47')]=function(_0x3d8f24,_0xd137fe){var _0x120410={'raw':!![],'where':{'id':_0x3d8f24['params']['id']}},_0x44f77e={};_0x44f77e[_0xc579('0x30')]=_[_0xc579('0x33')](db[_0xc579('0x2d')][_0xc579('0x48')]);_0x44f77e[_0xc579('0x32')]=_[_0xc579('0x33')](_0x3d8f24['query']);_0x44f77e[_0xc579('0x34')]=_[_0xc579('0x35')](_0x44f77e[_0xc579('0x30')],_0x44f77e['query']);_0x120410[_0xc579('0x37')]=_[_0xc579('0x35')](_0x44f77e[_0xc579('0x30')],qs['fields'](_0x3d8f24[_0xc579('0x32')]['fields']));_0x120410[_0xc579('0x37')]=_0x120410[_0xc579('0x37')][_0xc579('0x38')]?_0x120410['attributes']:_0x44f77e[_0xc579('0x30')];if(_0x3d8f24[_0xc579('0x32')]['includeAll']){_0x120410['include']=[{'all':!![]}];}_0x120410=_[_0xc579('0x40')]({},_0x120410,_0x3d8f24[_0xc579('0x42')]);return db[_0xc579('0x2d')][_0xc579('0x49')](_0x120410)['then'](handleEntityNotFound(_0xd137fe,null))['then'](respondWithResult(_0xd137fe,null))[_0xc579('0x46')](handleError(_0xd137fe,null));};exports[_0xc579('0x4a')]=function(_0x292b95,_0x216f56){return db['VoiceMailMessage'][_0xc579('0x4a')](_0x292b95[_0xc579('0x4b')],{})['then'](respondWithResult(_0x216f56,0xc9))[_0xc579('0x46')](handleError(_0x216f56,null));};exports['update']=function(_0x5b2851,_0x5b2929){if(_0x5b2851[_0xc579('0x4b')]['id']){delete _0x5b2851[_0xc579('0x4b')]['id'];}return db[_0xc579('0x2d')][_0xc579('0x49')]({'where':{'id':_0x5b2851[_0xc579('0x4c')]['id']}})['then'](handleEntityNotFound(_0x5b2929,null))[_0xc579('0x27')](saveUpdates(_0x5b2851[_0xc579('0x4b')],null))[_0xc579('0x27')](respondWithResult(_0x5b2929,null))['catch'](handleError(_0x5b2929,null));};exports['destroy']=function(_0x1539b5,_0x8c0ad8){return db[_0xc579('0x2d')][_0xc579('0x49')]({'where':{'id':_0x1539b5[_0xc579('0x4c')]['id']}})[_0xc579('0x27')](handleEntityNotFound(_0x8c0ad8,null))[_0xc579('0x27')](removeEntity(_0x8c0ad8,null))['catch'](handleError(_0x8c0ad8,null));};exports['download']=function(_0x43e36d,_0x349c65,_0x58081f){return db[_0xc579('0x2d')]['find']({'where':{'id':_0x43e36d[_0xc579('0x4c')]['id']},'attributes':['id',_0xc579('0x4d'),_0xc579('0x4e')]})[_0xc579('0x27')](handleEntityNotFound(_0x349c65,null))[_0xc579('0x27')](function(_0x297b54){if(_0x297b54){if(!_0x297b54['recording']){throw new db[(_0xc579('0x4f'))][(_0xc579('0x50'))](_0xc579('0x51'));}var _0x5710f1={'Content-Type':_0xc579('0x52'),'Content-Disposition':'attachment'};if(_0x297b54[_0xc579('0x4e')]){_0x5710f1[_0xc579('0x53')]=_0xc579('0x54')+_0x297b54[_0xc579('0x4e')]+'.wav\x22';}_0x349c65['set'](_0x5710f1);return _0x349c65[_0xc579('0x55')](new Buffer(_0x297b54['recording']));}})[_0xc579('0x46')](handleError(_0x349c65,null));};