c29f2d89a43e68c43b5c0bcbc590a2c8ae4269ef
[motion2.git] / server / api / mailMessage / mailMessage.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 _0x303a=['manual','SIP/%s','channel','motionChannel','event','acceptmessage','reject','null','RejectMessage','rejectMessage','User','interface','fromString','EventManager','rejectmessage','unix','toString','server','files','message-%s.eml','from','bcc','subject','Attachment','Attachments','decode','createdAt','headers','Bcc','existsSync','push','readFileSync','build','writeFileSync','download','unlinkSync','eml-format','moment','bluebird','util','path','lodash','ioredis','mail-interactions','../../mysqldb','redis','socket.io-emitter','./mailMessage.socket','register','jayson/promise','client','http','then','MailMessage,\x20%s,\x20%s','request\x20sent','debug','MailMessage,\x20%s,\x20%s,\x20%s','error','message','result','catch','status','json','undefined','limit','count','offset','set','Content-Range','update','destroy','end','sendStatus','stack','name','send','index','map','MailMessage','rawAttributes','type','keys','filters','intersection','model','query','attributes','length','hasOwnProperty','nolimit','sort','where','pick','filter','merge','VIRTUAL','options','includeAll','show','params','fields','include','find','body','describe','create','direction','split','MailAccount','findOne','MailAccountId','CmList','List','CmContact','DESC','Smtp','CloudProvider','getSmtpOptions','attachments','join','root','server/files/attachments','Contacts','defaults','List\x20not\x20found','SendMail','sendMail','messageId','YYYY-MM-DD\x20HH:mm:ss','accept','mail','read','readAt','format','UserId','user','get','MailInteraction','MailInteractionId','isNil','read1stAt','interaction','info','[MAILMESSAGE:ACCEPT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','role','AcceptMessage','SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20','ContactId','sequelize','Sequelize','SELECT','contact','agent','fullname','email','internal'];(function(_0x532112,_0x37d94b){var _0x23e5fb=function(_0x690ac8){while(--_0x690ac8){_0x532112['push'](_0x532112['shift']());}};_0x23e5fb(++_0x37d94b);}(_0x303a,0xc0));var _0xa303=function(_0x302d0b,_0x2c7dbb){_0x302d0b=_0x302d0b-0x0;var _0x3b9e1d=_0x303a[_0x302d0b];return _0x3b9e1d;};'use strict';var emlformat=require(_0xa303('0x0'));var moment=require(_0xa303('0x1'));var BPromise=require(_0xa303('0x2'));var util=require(_0xa303('0x3'));var path=require(_0xa303('0x4'));var fs=require('fs');var _=require(_0xa303('0x5'));var Redis=require(_0xa303('0x6'));var htmlToText=require('html-to-text');var qs=require('../../components/parsers/qs');var logger=require('../../config/logger')('api');var interaction_log=require('../../config/logger')(_0xa303('0x7'));var config=require('../../config/environment');var db=require(_0xa303('0x8'))['db'];config[_0xa303('0x9')]=_['defaults'](config[_0xa303('0x9')],{'host':'localhost','port':0x18eb});var socket=require(_0xa303('0xa'))(new Redis(config[_0xa303('0x9')]));var htmlEntities=require('html-entities');require(_0xa303('0xb'))[_0xa303('0xc')](socket);var jayson=require(_0xa303('0xd'));var client=jayson['client']['http']({'port':0x232c});var client9003=jayson[_0xa303('0xe')][_0xa303('0xf')]({'port':0x232b});var client9002=jayson[_0xa303('0xe')][_0xa303('0xf')]({'port':0x232a});function respondWithRpcPromise(_0x449f7c,_0x5de188,_0x4312e4,_0x576ccf){return new BPromise(function(_0x3aa5fa,_0x268475){var _0x58d21d=_0x576ccf||client;return _0x58d21d['request'](_0x449f7c,_0x4312e4)[_0xa303('0x10')](function(_0x1341b8){logger['info'](_0xa303('0x11'),_0x5de188,_0xa303('0x12'));logger[_0xa303('0x13')](_0xa303('0x14'),_0x5de188,_0xa303('0x12'),JSON['stringify'](_0x1341b8));if(_0x1341b8['error']){if(_0x1341b8[_0xa303('0x15')]['code']===0x1f4){logger['error'](_0xa303('0x11'),_0x5de188,_0x1341b8[_0xa303('0x15')][_0xa303('0x16')]);return _0x268475(_0x1341b8[_0xa303('0x15')][_0xa303('0x16')]);}logger[_0xa303('0x15')](_0xa303('0x11'),_0x5de188,_0x1341b8[_0xa303('0x15')][_0xa303('0x16')]);return _0x3aa5fa(_0x1341b8[_0xa303('0x15')][_0xa303('0x16')]);}else{logger['info']('MailMessage,\x20%s,\x20%s',_0x5de188,_0xa303('0x12'));_0x3aa5fa(_0x1341b8[_0xa303('0x17')][_0xa303('0x16')]);}})[_0xa303('0x18')](function(_0xf46382){logger['error'](_0xa303('0x11'),_0x5de188,_0xf46382);_0x268475(_0xf46382);});});}function respondWithResult(_0x14831c,_0x345236){_0x345236=_0x345236||0xc8;return function(_0xd32027){if(_0xd32027){return _0x14831c[_0xa303('0x19')](_0x345236)[_0xa303('0x1a')](_0xd32027);}};}function respondWithFilteredResult(_0x26b2b4,_0x3beef9){return function(_0x2c6653){if(_0x2c6653){var _0x4f6de4=typeof _0x3beef9['offset']===_0xa303('0x1b')&&typeof _0x3beef9[_0xa303('0x1c')]===_0xa303('0x1b');var _0x56f796=_0x2c6653[_0xa303('0x1d')];var _0x3b2634=_0x4f6de4?0x0:_0x3beef9[_0xa303('0x1e')];var _0x307a82=_0x4f6de4?_0x2c6653['count']:_0x3beef9[_0xa303('0x1e')]+_0x3beef9['limit'];var _0x25ed69;if(_0x307a82>=_0x56f796){_0x307a82=_0x56f796;_0x25ed69=0xc8;}else{_0x25ed69=0xce;}_0x26b2b4[_0xa303('0x19')](_0x25ed69);return _0x26b2b4[_0xa303('0x1f')](_0xa303('0x20'),_0x3b2634+'-'+_0x307a82+'/'+_0x56f796)[_0xa303('0x1a')](_0x2c6653);}return null;};}function saveUpdates(_0xeb872e){return function(_0x4ea67d){if(_0x4ea67d){return _0x4ea67d[_0xa303('0x21')](_0xeb872e)[_0xa303('0x10')](function(_0x11fd4e){return _0x11fd4e;});}return null;};}function removeEntity(_0x9a4732){return function(_0x28bcec){if(_0x28bcec){return _0x28bcec[_0xa303('0x22')]()['then'](function(){_0x9a4732[_0xa303('0x19')](0xcc)[_0xa303('0x23')]();});}};}function handleEntityNotFound(_0x68eebe){return function(_0x3508f5){if(!_0x3508f5){_0x68eebe[_0xa303('0x24')](0x194);}return _0x3508f5;};}function handleError(_0x375706,_0x9c4663){_0x9c4663=_0x9c4663||0x1f4;return function(_0x5c8c3a){logger[_0xa303('0x15')](_0x5c8c3a[_0xa303('0x25')]);if(_0x5c8c3a[_0xa303('0x26')]){delete _0x5c8c3a[_0xa303('0x26')];}_0x375706['status'](_0x9c4663)[_0xa303('0x27')](_0x5c8c3a);};}exports[_0xa303('0x28')]=function(_0xbc168c,_0x37b435){var _0x689b27={},_0x496f5c={},_0x10751f={'count':0x0,'rows':[]};var _0x1a59f1=_[_0xa303('0x29')](db[_0xa303('0x2a')][_0xa303('0x2b')],function(_0x32e220){return{'name':_0x32e220['fieldName'],'type':_0x32e220[_0xa303('0x2c')]['key']};});_0x496f5c['model']=_[_0xa303('0x29')](_0x1a59f1,_0xa303('0x26'));_0x496f5c['query']=_[_0xa303('0x2d')](_0xbc168c['query']);_0x496f5c[_0xa303('0x2e')]=_[_0xa303('0x2f')](_0x496f5c[_0xa303('0x30')],_0x496f5c['query']);_0x689b27['attributes']=_[_0xa303('0x2f')](_0x496f5c['model'],qs['fields'](_0xbc168c[_0xa303('0x31')]['fields']));_0x689b27[_0xa303('0x32')]=_0x689b27[_0xa303('0x32')][_0xa303('0x33')]?_0x689b27[_0xa303('0x32')]:_0x496f5c['model'];if(!_0xbc168c[_0xa303('0x31')][_0xa303('0x34')](_0xa303('0x35'))){_0x689b27[_0xa303('0x1c')]=qs[_0xa303('0x1c')](_0xbc168c[_0xa303('0x31')]['limit']);_0x689b27[_0xa303('0x1e')]=qs[_0xa303('0x1e')](_0xbc168c[_0xa303('0x31')][_0xa303('0x1e')]);}_0x689b27['order']=qs['sort'](_0xbc168c[_0xa303('0x31')][_0xa303('0x36')]);_0x689b27[_0xa303('0x37')]=qs[_0xa303('0x2e')](_[_0xa303('0x38')](_0xbc168c[_0xa303('0x31')],_0x496f5c[_0xa303('0x2e')]),_0x1a59f1);if(_0xbc168c[_0xa303('0x31')][_0xa303('0x39')]){_0x689b27[_0xa303('0x37')]=_[_0xa303('0x3a')](_0x689b27[_0xa303('0x37')],{'$or':_[_0xa303('0x29')](_0x1a59f1,function(_0x2b2797){if(_0x2b2797[_0xa303('0x2c')]!==_0xa303('0x3b')){var _0x2969cd={};_0x2969cd[_0x2b2797['name']]={'$like':'%'+_0xbc168c[_0xa303('0x31')][_0xa303('0x39')]+'%'};return _0x2969cd;}})});}_0x689b27=_[_0xa303('0x3a')]({},_0x689b27,_0xbc168c[_0xa303('0x3c')]);var _0x14c09f={'where':_0x689b27[_0xa303('0x37')]};return db[_0xa303('0x2a')][_0xa303('0x1d')](_0x14c09f)[_0xa303('0x10')](function(_0x1b207c){_0x10751f[_0xa303('0x1d')]=_0x1b207c;if(_0xbc168c[_0xa303('0x31')][_0xa303('0x3d')]){_0x689b27['include']=[{'all':!![]}];}return db['MailMessage']['findAll'](_0x689b27);})[_0xa303('0x10')](function(_0x3f7280){_0x10751f['rows']=_0x3f7280;return _0x10751f;})[_0xa303('0x10')](respondWithFilteredResult(_0x37b435,_0x689b27))[_0xa303('0x18')](handleError(_0x37b435,null));};exports[_0xa303('0x3e')]=function(_0x3ee90e,_0xb8d860){var _0xdee9e0={'raw':!![],'where':{'id':_0x3ee90e[_0xa303('0x3f')]['id']}},_0xa733ae={};_0xa733ae[_0xa303('0x30')]=_[_0xa303('0x2d')](db[_0xa303('0x2a')][_0xa303('0x2b')]);_0xa733ae[_0xa303('0x31')]=_[_0xa303('0x2d')](_0x3ee90e[_0xa303('0x31')]);_0xa733ae['filters']=_[_0xa303('0x2f')](_0xa733ae[_0xa303('0x30')],_0xa733ae[_0xa303('0x31')]);_0xdee9e0[_0xa303('0x32')]=_[_0xa303('0x2f')](_0xa733ae[_0xa303('0x30')],qs[_0xa303('0x40')](_0x3ee90e[_0xa303('0x31')][_0xa303('0x40')]));_0xdee9e0[_0xa303('0x32')]=_0xdee9e0[_0xa303('0x32')][_0xa303('0x33')]?_0xdee9e0[_0xa303('0x32')]:_0xa733ae[_0xa303('0x30')];if(_0x3ee90e['query'][_0xa303('0x3d')]){_0xdee9e0[_0xa303('0x41')]=[{'all':!![]}];}_0xdee9e0=_[_0xa303('0x3a')]({},_0xdee9e0,_0x3ee90e[_0xa303('0x3c')]);return db['MailMessage'][_0xa303('0x42')](_0xdee9e0)[_0xa303('0x10')](handleEntityNotFound(_0xb8d860,null))[_0xa303('0x10')](respondWithResult(_0xb8d860,null))['catch'](handleError(_0xb8d860,null));};exports['update']=function(_0x19dbfc,_0xd0b1d4){if(_0x19dbfc[_0xa303('0x43')]['id']){delete _0x19dbfc[_0xa303('0x43')]['id'];}return db[_0xa303('0x2a')][_0xa303('0x42')]({'where':{'id':_0x19dbfc['params']['id']}})[_0xa303('0x10')](handleEntityNotFound(_0xd0b1d4,null))[_0xa303('0x10')](saveUpdates(_0x19dbfc[_0xa303('0x43')],null))[_0xa303('0x10')](respondWithResult(_0xd0b1d4,null))[_0xa303('0x18')](handleError(_0xd0b1d4,null));};exports[_0xa303('0x22')]=function(_0x2676f2,_0x944df2){return db[_0xa303('0x2a')][_0xa303('0x42')]({'where':{'id':_0x2676f2['params']['id']}})[_0xa303('0x10')](handleEntityNotFound(_0x944df2,null))['then'](removeEntity(_0x944df2,null))[_0xa303('0x18')](handleError(_0x944df2,null));};exports[_0xa303('0x44')]=function(_0x33f6f2,_0x4b1afc){return db[_0xa303('0x2a')]['describe']()[_0xa303('0x10')](respondWithResult(_0x4b1afc,null))[_0xa303('0x18')](handleError(_0x4b1afc,null));};exports[_0xa303('0x45')]=function(_0x5f48f1,_0x3bad0b){return db[_0xa303('0x2a')][_0xa303('0x45')](_0x5f48f1[_0xa303('0x43')])['then'](function(_0x2f606e){if(_0x2f606e){if(_0x2f606e[_0xa303('0x46')]==='out'&&!_0x2f606e['secret']){var _0xb12b4e,_0x486491,_0x29efef;if(_0x5f48f1[_0xa303('0x43')]['to']){_0x486491=_0x5f48f1[_0xa303('0x43')]['to'][_0xa303('0x47')](',')[0x0];}return db[_0xa303('0x48')][_0xa303('0x49')]({'where':{'id':_0x2f606e[_0xa303('0x4a')]},'include':[{'model':db[_0xa303('0x4b')],'as':_0xa303('0x4c'),'include':[{'model':db[_0xa303('0x4d')],'as':'Contacts','where':{'email':_0x486491},'limit':0x1,'order':[['updatedAt',_0xa303('0x4e')]]}]},{'model':db['MailServerOut'],'as':_0xa303('0x4f'),'raw':!![],'include':[{'model':db['CloudProvider'],'as':_0xa303('0x50'),'raw':!![]}]}]})[_0xa303('0x10')](function(_0x2c3d27){_0xb12b4e=_0x2c3d27;if(!_0xb12b4e||!_0xb12b4e[_0xa303('0x4f')])return;var _0xd1933f=_0xb12b4e[_0xa303('0x51')]();if(_0x5f48f1[_0xa303('0x43')][_0xa303('0x52')]&&_0x5f48f1[_0xa303('0x43')]['attachments']['length']){for(var _0x2fdb25=0x0;_0x2fdb25<_0x5f48f1['body'][_0xa303('0x52')][_0xa303('0x33')];_0x2fdb25+=0x1){_0x5f48f1[_0xa303('0x43')]['attachments'][_0x2fdb25]={'filename':_0x5f48f1[_0xa303('0x43')][_0xa303('0x52')][_0x2fdb25]['name'],'path':path[_0xa303('0x53')](config[_0xa303('0x54')],_0xa303('0x55'),_0x5f48f1[_0xa303('0x43')][_0xa303('0x52')][_0x2fdb25]['basename'])};}}_0x29efef={'account':_0xd1933f,'message':_0x5f48f1[_0xa303('0x43')]};return;})[_0xa303('0x10')](function(){if(_0xb12b4e[_0xa303('0x4c')]){if(_0xb12b4e[_0xa303('0x4c')][_0xa303('0x56')][_0xa303('0x33')]){return _0xb12b4e[_0xa303('0x4c')][_0xa303('0x56')][0x0];}else{return db[_0xa303('0x4d')]['create'](_[_0xa303('0x57')](_0x5f48f1['body'],{'firstName':_0x5f48f1[_0xa303('0x43')]['to'],'email':_0x5f48f1[_0xa303('0x43')]['to'],'phone':_0x5f48f1[_0xa303('0x43')]['to'],'ListId':_0xb12b4e['ListId']}));}}else{throw new Error(_0xa303('0x58'));}})[_0xa303('0x10')](function(){if(_0x29efef){return respondWithRpcPromise(_0xa303('0x59'),_0xa303('0x5a'),_0x29efef,client9003)['then'](function(_0x545939){return _0x2f606e[_0xa303('0x21')]({'read':!![],'messageId':_0x545939[_0xa303('0x5b')],'sentAt':moment()['format'](_0xa303('0x5c'))});})[_0xa303('0x18')](function(_0x15f2a0){logger[_0xa303('0x15')]('%s',JSON['stringify'](_0x15f2a0));return _0x2f606e;});}return _0x2f606e;});}return _0x2f606e;}})[_0xa303('0x10')](respondWithResult(_0x3bad0b,0xc9))[_0xa303('0x18')](handleError(_0x3bad0b,null));};exports[_0xa303('0x5d')]=function(_0x1e011f,_0x36a5b3){var _0x44eff0={'agent':{},'channel':_0xa303('0x5e')};if(_0x1e011f[_0xa303('0x43')]['id']){delete _0x1e011f[_0xa303('0x43')]['id'];}_0x1e011f[_0xa303('0x43')][_0xa303('0x5f')]=!![];_0x1e011f['body'][_0xa303('0x60')]=moment()[_0xa303('0x61')](_0xa303('0x5c'));_0x1e011f[_0xa303('0x43')]['UserId']=_0x1e011f[_0xa303('0x43')][_0xa303('0x62')]||_0x1e011f[_0xa303('0x63')]['id'];_0x44eff0['agent']['id']=_0x1e011f[_0xa303('0x43')]['UserId'];return db[_0xa303('0x2a')][_0xa303('0x42')]({'where':{'id':_0x1e011f[_0xa303('0x3f')]['id'],'UserId':null}})[_0xa303('0x10')](handleEntityNotFound(_0x36a5b3,null))[_0xa303('0x10')](saveUpdates(_0x1e011f[_0xa303('0x43')],null))[_0xa303('0x10')](function(_0x21360d){if(_0x21360d){_0x44eff0[_0xa303('0x16')]=_0x21360d[_0xa303('0x64')]({'plain':!![]});return db[_0xa303('0x65')][_0xa303('0x42')]({'where':{'id':_0x21360d[_0xa303('0x66')]}});}return null;})[_0xa303('0x10')](handleEntityNotFound(_0x36a5b3,null))[_0xa303('0x10')](function(_0x23ef96){if(_0x23ef96){return _0x23ef96[_0xa303('0x21')]({'UserId':_0x1e011f['body'][_0xa303('0x62')],'read1stAt':_[_0xa303('0x67')](_0x23ef96[_0xa303('0x68')])?moment()[_0xa303('0x61')](_0xa303('0x5c')):undefined});}return null;})[_0xa303('0x10')](function(_0x3f5a89){if(_0x3f5a89){_0x44eff0[_0xa303('0x69')]=_0x3f5a89['get']({'plain':!![]});interaction_log[_0xa303('0x6a')](_0xa303('0x6b'),_0x1e011f['user']['id'],_0x1e011f[_0xa303('0x63')][_0xa303('0x26')],_0x1e011f[_0xa303('0x63')][_0xa303('0x6c')],_0x44eff0['interaction']['id'],_0x1e011f[_0xa303('0x43')]?JSON['stringify'](_0x1e011f[_0xa303('0x43')]):'null');return respondWithRpcPromise(_0xa303('0x6d'),'acceptMessage',_0x44eff0);}return null;})[_0xa303('0x10')](function(_0x5b8289){var _0x57c6e8=_0xa303('0x6e')+_0x5b8289[_0xa303('0x16')][_0xa303('0x6f')];return db[_0xa303('0x70')]['query'](_0x57c6e8,{'type':db[_0xa303('0x71')]['QueryTypes'][_0xa303('0x72')],'raw':!![]})[_0xa303('0x10')](function(_0x2d8653){return _0x2d8653;});})[_0xa303('0x10')](function(_0x59bb81){if(_0x59bb81){_0x44eff0[_0xa303('0x16')][_0xa303('0x73')]=_0x59bb81[0x0];if(!_0x1e011f[_0xa303('0x43')]['UserId'])return;return db['User']['find']({'where':{'id':_0x1e011f['body'][_0xa303('0x62')],'role':_0xa303('0x74')},'attributes':['id','name',_0xa303('0x75'),_0xa303('0x76'),_0xa303('0x77')],'raw':!![]});}return null;})[_0xa303('0x10')](function(_0x10725a){if(!_0x10725a)return null;_0x44eff0[_0xa303('0x16')][_0xa303('0x74')]=_0x10725a;return _0x44eff0;})[_0xa303('0x10')](function(_0x2b1566){if(_0x2b1566){if(_0x1e011f[_0xa303('0x43')][_0xa303('0x78')]){_0x44eff0[_0xa303('0x16')]['interface']=util[_0xa303('0x61')](_0xa303('0x79'),_0x1e011f[_0xa303('0x63')][_0xa303('0x26')]);_0x44eff0[_0xa303('0x16')][_0xa303('0x7a')]=_0x44eff0[_0xa303('0x7a')];_0x44eff0[_0xa303('0x16')][_0xa303('0x7b')]=_0x44eff0[_0xa303('0x7a')];_0x44eff0['message'][_0xa303('0x7c')]=_0xa303('0x5d');_0x44eff0[_0xa303('0x16')][_0xa303('0x43')]=htmlToText['fromString'](_0x44eff0[_0xa303('0x16')][_0xa303('0x43')]);return respondWithRpcPromise('EventManager','EventManager',{'event':_0xa303('0x7d'),'message':_0x44eff0[_0xa303('0x16')]},client9002)[_0xa303('0x10')](function(){return _0x44eff0;});}return _0x44eff0;}return null;})['then'](respondWithResult(_0x36a5b3,null))[_0xa303('0x18')](handleError(_0x36a5b3,null));};exports[_0xa303('0x7e')]=function(_0x38f70d,_0x123597){var _0x4cd6bf={'agent':{},'channel':_0xa303('0x5e')};if(_0x38f70d[_0xa303('0x43')]['id']){delete _0x38f70d[_0xa303('0x43')]['id'];}_0x38f70d[_0xa303('0x43')][_0xa303('0x62')]=_0x38f70d[_0xa303('0x43')][_0xa303('0x62')]||_0x38f70d[_0xa303('0x63')]['id'];_0x4cd6bf[_0xa303('0x74')]['id']=_0x38f70d[_0xa303('0x43')][_0xa303('0x62')];return db[_0xa303('0x2a')][_0xa303('0x42')]({'where':{'id':_0x38f70d[_0xa303('0x3f')]['id'],'UserId':null}})['then'](handleEntityNotFound(_0x123597,null))['then'](function(_0x2485ee){if(_0x2485ee){_0x4cd6bf[_0xa303('0x16')]=_0x2485ee[_0xa303('0x64')]({'plain':!![]});return db[_0xa303('0x65')][_0xa303('0x42')]({'where':{'id':_0x2485ee[_0xa303('0x66')]}});}return null;})[_0xa303('0x10')](handleEntityNotFound(_0x123597,null))[_0xa303('0x10')](function(_0x32add7){if(_0x32add7){_0x4cd6bf['interaction']=_0x32add7[_0xa303('0x64')]({'plain':!![]});interaction_log['info']('[MAILMESSAGE:REJECT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s',_0x38f70d[_0xa303('0x63')]['id'],_0x38f70d['user'][_0xa303('0x26')],_0x38f70d[_0xa303('0x63')][_0xa303('0x6c')],_0x4cd6bf[_0xa303('0x69')]['id'],_0x38f70d['body']?JSON['stringify'](_0x38f70d[_0xa303('0x43')]):_0xa303('0x7f'));return respondWithRpcPromise(_0xa303('0x80'),_0xa303('0x81'),_0x4cd6bf);}return null;})['then'](function(_0x515432){var _0x32da42=_0xa303('0x6e')+_0x515432[_0xa303('0x16')][_0xa303('0x6f')];return db[_0xa303('0x70')][_0xa303('0x31')](_0x32da42,{'type':db['Sequelize']['QueryTypes'][_0xa303('0x72')],'raw':!![]})[_0xa303('0x10')](function(_0xce9475){return _0xce9475;});})['then'](function(_0x71449b){if(_0x71449b){_0x4cd6bf[_0xa303('0x16')]['contact']=_0x71449b[0x0];if(!_0x38f70d[_0xa303('0x43')][_0xa303('0x62')])return;return db[_0xa303('0x82')]['find']({'where':{'id':_0x38f70d['body'][_0xa303('0x62')],'role':_0xa303('0x74')},'attributes':['id',_0xa303('0x26'),_0xa303('0x75'),_0xa303('0x76'),_0xa303('0x77')],'raw':!![]});}return null;})[_0xa303('0x10')](function(_0x24717d){if(!_0x24717d)return null;_0x4cd6bf[_0xa303('0x16')]['agent']=_0x24717d;return _0x4cd6bf;})[_0xa303('0x10')](function(_0x49f4ef){if(_0x49f4ef){_0x49f4ef['message'][_0xa303('0x83')]=util['format'](_0xa303('0x79'),_0x38f70d['user'][_0xa303('0x26')]);_0x49f4ef[_0xa303('0x16')]['channel']=_0x4cd6bf[_0xa303('0x7a')];_0x49f4ef['message'][_0xa303('0x7b')]=_0x4cd6bf[_0xa303('0x7a')];_0x49f4ef['message'][_0xa303('0x7c')]=_0xa303('0x7e');_0x49f4ef[_0xa303('0x16')][_0xa303('0x43')]=htmlToText[_0xa303('0x84')](_0x4cd6bf['message'][_0xa303('0x43')]);respondWithRpcPromise(_0xa303('0x85'),_0xa303('0x85'),{'event':_0xa303('0x86'),'message':_0x49f4ef['message']},client9002);return _0x4cd6bf;}return null;})['then'](respondWithResult(_0x123597,null))[_0xa303('0x18')](handleError(_0x123597,null));};exports['download']=function(_0x50ef1e,_0x462ef3){var _0x1aafd7=moment()[_0xa303('0x87')]()[_0xa303('0x88')]();var _0x147372=path[_0xa303('0x53')](config[_0xa303('0x54')],'server','files','tmp');var _0x97c35a=path[_0xa303('0x53')](config[_0xa303('0x54')],_0xa303('0x89'),_0xa303('0x8a'),_0xa303('0x52'));var _0x4fc447=util[_0xa303('0x61')](_0xa303('0x8b'),_0x1aafd7);return db[_0xa303('0x2a')][_0xa303('0x42')]({'where':{'id':_0x50ef1e[_0xa303('0x3f')]['id']},'attributes':['id',_0xa303('0x43'),_0xa303('0x8c'),'to','cc',_0xa303('0x8d'),_0xa303('0x8e'),'createdAt'],'include':_0x50ef1e['query'][_0xa303('0x52')]?[{'model':db[_0xa303('0x8f')],'as':_0xa303('0x90')}]:undefined})[_0xa303('0x10')](handleEntityNotFound(_0x462ef3,null))[_0xa303('0x10')](function(_0x597759){if(_0x597759){var _0x146a32=_0x597759;var _0x18f303={'from':_0x146a32[_0xa303('0x8c')],'to':_0x146a32['to'],'subject':_0x146a32[_0xa303('0x8e')],'html':htmlEntities[_0xa303('0x91')](_0x146a32[_0xa303('0x43')]),'headers':{'Date':moment(_0x146a32[_0xa303('0x92')])[_0xa303('0x61')]('ddd,\x20DD\x20MMM\x20YYYY\x20HH:mm:ss\x20ZZ')},'attachments':[]};if(_0x597759['cc']){_0x18f303[_0xa303('0x93')]['Cc']=_0x597759['cc'];}if(_0x597759[_0xa303('0x8d')]){_0x18f303[_0xa303('0x93')][_0xa303('0x94')]=_0x597759[_0xa303('0x8d')];}return new BPromise(function(_0xcacb1a,_0x287aea){if(_0x597759[_0xa303('0x90')]){for(var _0x381bbd=0x0;_0x381bbd<_0x597759[_0xa303('0x90')][_0xa303('0x33')];_0x381bbd++){var _0x53ebaf=_0x597759[_0xa303('0x90')][_0x381bbd];var _0x4b9005=path['join'](_0x97c35a,_0x53ebaf['basename']);if(fs[_0xa303('0x95')](_0x4b9005)){_0x18f303[_0xa303('0x52')][_0xa303('0x96')]({'name':_0x53ebaf[_0xa303('0x26')],'contentType':_0x53ebaf[_0xa303('0x2c')],'data':fs[_0xa303('0x97')](_0x4b9005)});}}}emlformat[_0xa303('0x98')](_0x18f303,function(_0x2364ad,_0x3e0dd3){if(_0x2364ad)return _0x287aea(_0x2364ad);fs[_0xa303('0x99')](path[_0xa303('0x53')](_0x147372,_0x4fc447),_0x3e0dd3);return _0xcacb1a(_0x3e0dd3);});});}})[_0xa303('0x10')](function(_0x1b6e55){if(_0x1b6e55){return _0x462ef3[_0xa303('0x9a')](path['join'](_0x147372,_0x4fc447),_0x4fc447,function(_0xfa0c97){if(!_0xfa0c97)fs[_0xa303('0x9b')](path[_0xa303('0x53')](_0x147372,_0x4fc447));});}})[_0xa303('0x18')](handleError(_0x462ef3,null));};