Built motion from commit 10af8726.|2.6.34
[motion2.git] / server / api / mailMessage / mailMessage.controller.js
index 041dbf5..313e7b8 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x3e74=['join','root','server/files/attachments','basename','CmContact','ListId','List\x20not\x20found','SendMail','sendMail','messageId','format','YYYY-MM-DD\x20HH:mm:ss','accept','mail','read','readAt','UserId','get','MailInteraction','MailInteractionId','read1stAt','interaction','null','AcceptMessage','acceptMessage','ContactId','sequelize','Sequelize','QueryTypes','SELECT','User','agent','fullname','email','internal','manual','interface','channel','fromString','EventManager','acceptmessage','reject','[MAILMESSAGE:REJECT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','role','rejectMessage','SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20','contact','SIP/%s','event','download','tmp','files','message-%s.eml','subject','createdAt','Attachments','from','ddd,\x20DD\x20MMM\x20YYYY\x20HH:mm:ss\x20ZZ','headers','Bcc','bcc','push','readFileSync','build','unlinkSync','eml-format','bluebird','util','path','html-to-text','../../config/logger','api','mail-interactions','../../config/environment','redis','defaults','localhost','socket.io-emitter','./mailMessage.socket','client','http','then','info','debug','MailMessage,\x20%s,\x20%s,\x20%s','request\x20sent','stringify','code','error','MailMessage,\x20%s,\x20%s','message','result','catch','status','json','offset','undefined','count','Content-Range','destroy','end','sendStatus','stack','name','send','MailMessage','rawAttributes','fieldName','type','key','intersection','query','attributes','model','fields','hasOwnProperty','nolimit','limit','sort','where','filters','pick','filter','merge','options','findAll','keys','length','include','find','update','body','params','describe','create','out','secret','MailAccount','findOne','CmList','Contacts','updatedAt','DESC','MailServerOut','Smtp','isNil','service','port','secure','authentication','auth','pass','user','attachments'];(function(_0x2a4591,_0xf1b4de){var _0x2914bf=function(_0x401bd8){while(--_0x401bd8){_0x2a4591['push'](_0x2a4591['shift']());}};_0x2914bf(++_0xf1b4de);}(_0x3e74,0x175));var _0x43e7=function(_0xaced30,_0x4d8e66){_0xaced30=_0xaced30-0x0;var _0x1ebb4e=_0x3e74[_0xaced30];return _0x1ebb4e;};'use strict';var emlformat=require(_0x43e7('0x0'));var moment=require('moment');var BPromise=require(_0x43e7('0x1'));var util=require(_0x43e7('0x2'));var path=require(_0x43e7('0x3'));var fs=require('fs');var _=require('lodash');var Redis=require('ioredis');var htmlToText=require(_0x43e7('0x4'));var qs=require('../../components/parsers/qs');var logger=require(_0x43e7('0x5'))(_0x43e7('0x6'));var interaction_log=require(_0x43e7('0x5'))(_0x43e7('0x7'));var config=require(_0x43e7('0x8'));var db=require('../../mysqldb')['db'];config[_0x43e7('0x9')]=_[_0x43e7('0xa')](config[_0x43e7('0x9')],{'host':_0x43e7('0xb'),'port':0x18eb});var socket=require(_0x43e7('0xc'))(new Redis(config['redis']));require(_0x43e7('0xd'))['register'](socket);var jayson=require('jayson/promise');var client=jayson[_0x43e7('0xe')][_0x43e7('0xf')]({'port':0x232c});var client9003=jayson['client'][_0x43e7('0xf')]({'port':0x232b});var client9002=jayson['client'][_0x43e7('0xf')]({'port':0x232a});function respondWithRpcPromise(_0x37302c,_0x4ebc8e,_0x3eb206,_0xc960ea){return new BPromise(function(_0x2718d3,_0x3bb83f){var _0x4e008c=_0xc960ea||client;return _0x4e008c['request'](_0x37302c,_0x3eb206)[_0x43e7('0x10')](function(_0x21fdd3){logger[_0x43e7('0x11')]('MailMessage,\x20%s,\x20%s',_0x4ebc8e,'request\x20sent');logger[_0x43e7('0x12')](_0x43e7('0x13'),_0x4ebc8e,_0x43e7('0x14'),JSON[_0x43e7('0x15')](_0x21fdd3));if(_0x21fdd3['error']){if(_0x21fdd3['error'][_0x43e7('0x16')]===0x1f4){logger[_0x43e7('0x17')](_0x43e7('0x18'),_0x4ebc8e,_0x21fdd3['error']['message']);return _0x3bb83f(_0x21fdd3[_0x43e7('0x17')][_0x43e7('0x19')]);}logger[_0x43e7('0x17')](_0x43e7('0x18'),_0x4ebc8e,_0x21fdd3[_0x43e7('0x17')][_0x43e7('0x19')]);return _0x2718d3(_0x21fdd3[_0x43e7('0x17')][_0x43e7('0x19')]);}else{logger[_0x43e7('0x11')](_0x43e7('0x18'),_0x4ebc8e,_0x43e7('0x14'));_0x2718d3(_0x21fdd3[_0x43e7('0x1a')]['message']);}})[_0x43e7('0x1b')](function(_0x3c6625){logger['error'](_0x43e7('0x18'),_0x4ebc8e,_0x3c6625);_0x3bb83f(_0x3c6625);});});}function respondWithResult(_0x3e281e,_0x3945bb){_0x3945bb=_0x3945bb||0xc8;return function(_0x28aacc){if(_0x28aacc){return _0x3e281e[_0x43e7('0x1c')](_0x3945bb)[_0x43e7('0x1d')](_0x28aacc);}};}function respondWithFilteredResult(_0x54a9e7,_0x454359){return function(_0x4eea52){if(_0x4eea52){var _0x4c9df3=typeof _0x454359[_0x43e7('0x1e')]===_0x43e7('0x1f')&&typeof _0x454359['limit']===_0x43e7('0x1f');var _0x4ca5cf=_0x4eea52[_0x43e7('0x20')];var _0x5c5e67=_0x4c9df3?0x0:_0x454359[_0x43e7('0x1e')];var _0x1b5f50=_0x4c9df3?_0x4eea52[_0x43e7('0x20')]:_0x454359[_0x43e7('0x1e')]+_0x454359['limit'];var _0x52b7b3;if(_0x1b5f50>=_0x4ca5cf){_0x1b5f50=_0x4ca5cf;_0x52b7b3=0xc8;}else{_0x52b7b3=0xce;}_0x54a9e7[_0x43e7('0x1c')](_0x52b7b3);return _0x54a9e7['set'](_0x43e7('0x21'),_0x5c5e67+'-'+_0x1b5f50+'/'+_0x4ca5cf)[_0x43e7('0x1d')](_0x4eea52);}return null;};}function saveUpdates(_0x3565cf){return function(_0xb1fc63){if(_0xb1fc63){return _0xb1fc63['update'](_0x3565cf)[_0x43e7('0x10')](function(_0x4690a6){return _0x4690a6;});}return null;};}function removeEntity(_0x45b675){return function(_0x50f9f5){if(_0x50f9f5){return _0x50f9f5[_0x43e7('0x22')]()[_0x43e7('0x10')](function(){_0x45b675[_0x43e7('0x1c')](0xcc)[_0x43e7('0x23')]();});}};}function handleEntityNotFound(_0x3bf475){return function(_0x35dbcd){if(!_0x35dbcd){_0x3bf475[_0x43e7('0x24')](0x194);}return _0x35dbcd;};}function handleError(_0x19725a,_0x2bde44){_0x2bde44=_0x2bde44||0x1f4;return function(_0x208706){logger['error'](_0x208706[_0x43e7('0x25')]);if(_0x208706[_0x43e7('0x26')]){delete _0x208706[_0x43e7('0x26')];}_0x19725a[_0x43e7('0x1c')](_0x2bde44)[_0x43e7('0x27')](_0x208706);};}exports['index']=function(_0x1eba65,_0x49b83d){var _0x30d47e={},_0x3f280d={},_0x4c61b9={'count':0x0,'rows':[]};var _0x5a7342=_['map'](db[_0x43e7('0x28')][_0x43e7('0x29')],function(_0x117c07){return{'name':_0x117c07[_0x43e7('0x2a')],'type':_0x117c07[_0x43e7('0x2b')][_0x43e7('0x2c')]};});_0x3f280d['model']=_['map'](_0x5a7342,'name');_0x3f280d['query']=_['keys'](_0x1eba65['query']);_0x3f280d['filters']=_[_0x43e7('0x2d')](_0x3f280d['model'],_0x3f280d[_0x43e7('0x2e')]);_0x30d47e[_0x43e7('0x2f')]=_[_0x43e7('0x2d')](_0x3f280d[_0x43e7('0x30')],qs[_0x43e7('0x31')](_0x1eba65[_0x43e7('0x2e')][_0x43e7('0x31')]));_0x30d47e['attributes']=_0x30d47e['attributes']['length']?_0x30d47e[_0x43e7('0x2f')]:_0x3f280d[_0x43e7('0x30')];if(!_0x1eba65[_0x43e7('0x2e')][_0x43e7('0x32')](_0x43e7('0x33'))){_0x30d47e[_0x43e7('0x34')]=qs[_0x43e7('0x34')](_0x1eba65[_0x43e7('0x2e')]['limit']);_0x30d47e[_0x43e7('0x1e')]=qs[_0x43e7('0x1e')](_0x1eba65['query'][_0x43e7('0x1e')]);}_0x30d47e['order']=qs[_0x43e7('0x35')](_0x1eba65[_0x43e7('0x2e')][_0x43e7('0x35')]);_0x30d47e[_0x43e7('0x36')]=qs[_0x43e7('0x37')](_[_0x43e7('0x38')](_0x1eba65['query'],_0x3f280d['filters']),_0x5a7342);if(_0x1eba65[_0x43e7('0x2e')][_0x43e7('0x39')]){_0x30d47e[_0x43e7('0x36')]=_[_0x43e7('0x3a')](_0x30d47e[_0x43e7('0x36')],{'$or':_['map'](_0x5a7342,function(_0x32a451){if(_0x32a451[_0x43e7('0x2b')]!=='VIRTUAL'){var _0x3628e0={};_0x3628e0[_0x32a451['name']]={'$like':'%'+_0x1eba65[_0x43e7('0x2e')]['filter']+'%'};return _0x3628e0;}})});}_0x30d47e=_[_0x43e7('0x3a')]({},_0x30d47e,_0x1eba65[_0x43e7('0x3b')]);var _0x3a5807={'where':_0x30d47e[_0x43e7('0x36')]};return db['MailMessage']['count'](_0x3a5807)[_0x43e7('0x10')](function(_0x40c509){_0x4c61b9[_0x43e7('0x20')]=_0x40c509;if(_0x1eba65[_0x43e7('0x2e')]['includeAll']){_0x30d47e['include']=[{'all':!![]}];}return db['MailMessage'][_0x43e7('0x3c')](_0x30d47e);})['then'](function(_0x2ab022){_0x4c61b9['rows']=_0x2ab022;return _0x4c61b9;})['then'](respondWithFilteredResult(_0x49b83d,_0x30d47e))[_0x43e7('0x1b')](handleError(_0x49b83d,null));};exports['show']=function(_0x2de14f,_0x39db7f){var _0x257bd8={'raw':!![],'where':{'id':_0x2de14f['params']['id']}},_0x99b9e1={};_0x99b9e1[_0x43e7('0x30')]=_[_0x43e7('0x3d')](db[_0x43e7('0x28')][_0x43e7('0x29')]);_0x99b9e1[_0x43e7('0x2e')]=_[_0x43e7('0x3d')](_0x2de14f['query']);_0x99b9e1['filters']=_[_0x43e7('0x2d')](_0x99b9e1[_0x43e7('0x30')],_0x99b9e1[_0x43e7('0x2e')]);_0x257bd8['attributes']=_['intersection'](_0x99b9e1['model'],qs[_0x43e7('0x31')](_0x2de14f[_0x43e7('0x2e')]['fields']));_0x257bd8[_0x43e7('0x2f')]=_0x257bd8[_0x43e7('0x2f')][_0x43e7('0x3e')]?_0x257bd8['attributes']:_0x99b9e1['model'];if(_0x2de14f['query']['includeAll']){_0x257bd8[_0x43e7('0x3f')]=[{'all':!![]}];}_0x257bd8=_[_0x43e7('0x3a')]({},_0x257bd8,_0x2de14f['options']);return db[_0x43e7('0x28')][_0x43e7('0x40')](_0x257bd8)[_0x43e7('0x10')](handleEntityNotFound(_0x39db7f,null))[_0x43e7('0x10')](respondWithResult(_0x39db7f,null))['catch'](handleError(_0x39db7f,null));};exports[_0x43e7('0x41')]=function(_0x483f20,_0x4bebd4){if(_0x483f20[_0x43e7('0x42')]['id']){delete _0x483f20[_0x43e7('0x42')]['id'];}return db[_0x43e7('0x28')][_0x43e7('0x40')]({'where':{'id':_0x483f20[_0x43e7('0x43')]['id']}})[_0x43e7('0x10')](handleEntityNotFound(_0x4bebd4,null))[_0x43e7('0x10')](saveUpdates(_0x483f20[_0x43e7('0x42')],null))[_0x43e7('0x10')](respondWithResult(_0x4bebd4,null))[_0x43e7('0x1b')](handleError(_0x4bebd4,null));};exports['destroy']=function(_0x119d34,_0x46c910){return db['MailMessage'][_0x43e7('0x40')]({'where':{'id':_0x119d34['params']['id']}})[_0x43e7('0x10')](handleEntityNotFound(_0x46c910,null))[_0x43e7('0x10')](removeEntity(_0x46c910,null))[_0x43e7('0x1b')](handleError(_0x46c910,null));};exports[_0x43e7('0x44')]=function(_0xfe13fa,_0x5e5556){return db['MailMessage'][_0x43e7('0x44')]()[_0x43e7('0x10')](respondWithResult(_0x5e5556,null))[_0x43e7('0x1b')](handleError(_0x5e5556,null));};exports[_0x43e7('0x45')]=function(_0x23d835,_0x25bb44){return db[_0x43e7('0x28')][_0x43e7('0x45')](_0x23d835[_0x43e7('0x42')])[_0x43e7('0x10')](function(_0x312306){if(_0x312306){if(_0x312306['direction']===_0x43e7('0x46')&&!_0x312306[_0x43e7('0x47')]){var _0x50a3fa,_0x4314d8,_0x220bf2;if(_0x23d835[_0x43e7('0x42')]['to']){_0x4314d8=_0x23d835['body']['to']['split'](',')[0x0];}return db[_0x43e7('0x48')][_0x43e7('0x49')]({'where':{'id':_0x312306['MailAccountId']},'include':[{'model':db[_0x43e7('0x4a')],'as':'List','include':[{'model':db['CmContact'],'as':_0x43e7('0x4b'),'where':{'email':_0x4314d8},'limit':0x1,'order':[[_0x43e7('0x4c'),_0x43e7('0x4d')]]}]},{'model':db[_0x43e7('0x4e')],'as':_0x43e7('0x4f'),'raw':!![]}]})['then'](function(_0xc3976){_0x50a3fa=_0xc3976;if(_0x50a3fa&&_0x50a3fa[_0x43e7('0x4f')]){var _0x4d89bd={'tls':{'rejectUnauthorized':![]}};if(_[_0x43e7('0x50')](_0x50a3fa[_0x43e7('0x4f')][_0x43e7('0x51')])){_0x4d89bd['host']=_0x50a3fa['Smtp']['host'];_0x4d89bd[_0x43e7('0x52')]=_0x50a3fa[_0x43e7('0x4f')][_0x43e7('0x52')];_0x4d89bd[_0x43e7('0x53')]=_0x50a3fa['Smtp']['secure'];if(_0x50a3fa[_0x43e7('0x4f')][_0x43e7('0x54')]){_0x4d89bd[_0x43e7('0x55')]={'user':_0x50a3fa[_0x43e7('0x4f')]['user'],'pass':_0x50a3fa[_0x43e7('0x4f')][_0x43e7('0x56')]};}}else{_0x4d89bd[_0x43e7('0x51')]=_0x50a3fa[_0x43e7('0x4f')][_0x43e7('0x51')];_0x4d89bd[_0x43e7('0x55')]={'user':_0x50a3fa[_0x43e7('0x4f')][_0x43e7('0x57')],'pass':_0x50a3fa[_0x43e7('0x4f')][_0x43e7('0x56')]};_0x4d89bd[_0x43e7('0x53')]=_0x50a3fa['Smtp']['secure'];}if(_0x23d835[_0x43e7('0x42')]['attachments']&&_0x23d835['body']['attachments'][_0x43e7('0x3e')]){for(var _0xe666b0=0x0;_0xe666b0<_0x23d835['body'][_0x43e7('0x58')][_0x43e7('0x3e')];_0xe666b0+=0x1){_0x23d835[_0x43e7('0x42')]['attachments'][_0xe666b0]={'filename':_0x23d835[_0x43e7('0x42')][_0x43e7('0x58')][_0xe666b0][_0x43e7('0x26')],'path':path[_0x43e7('0x59')](config[_0x43e7('0x5a')],_0x43e7('0x5b'),_0x23d835[_0x43e7('0x42')]['attachments'][_0xe666b0][_0x43e7('0x5c')])};}}_0x220bf2={'account':_0x4d89bd,'message':_0x23d835[_0x43e7('0x42')]};return;}})[_0x43e7('0x10')](function(){if(_0x50a3fa['List']){if(_0x50a3fa['List'][_0x43e7('0x4b')]['length']){return _0x50a3fa['List'][_0x43e7('0x4b')][0x0];}else{return db[_0x43e7('0x5d')]['create'](_[_0x43e7('0xa')](_0x23d835[_0x43e7('0x42')],{'firstName':_0x23d835[_0x43e7('0x42')]['to'],'email':_0x23d835[_0x43e7('0x42')]['to'],'phone':_0x23d835[_0x43e7('0x42')]['to'],'ListId':_0x50a3fa[_0x43e7('0x5e')]}));}}else{throw new Error(_0x43e7('0x5f'));}})['then'](function(){if(_0x220bf2){return respondWithRpcPromise(_0x43e7('0x60'),_0x43e7('0x61'),_0x220bf2,client9003)['then'](function(_0x418213){return _0x312306['update']({'read':!![],'messageId':_0x418213[_0x43e7('0x62')],'sentAt':moment()[_0x43e7('0x63')](_0x43e7('0x64'))});})[_0x43e7('0x1b')](function(_0x506361){logger[_0x43e7('0x17')]('%s',JSON[_0x43e7('0x15')](_0x506361));return _0x312306;});}return _0x312306;});}return _0x312306;}})[_0x43e7('0x10')](respondWithResult(_0x25bb44,0xc9))['catch'](handleError(_0x25bb44,null));};exports[_0x43e7('0x65')]=function(_0x38fa5b,_0x219dc6){var _0x703a30={'agent':{},'channel':_0x43e7('0x66')};if(_0x38fa5b['body']['id']){delete _0x38fa5b[_0x43e7('0x42')]['id'];}_0x38fa5b[_0x43e7('0x42')][_0x43e7('0x67')]=!![];_0x38fa5b[_0x43e7('0x42')][_0x43e7('0x68')]=moment()[_0x43e7('0x63')](_0x43e7('0x64'));_0x38fa5b['body']['UserId']=_0x38fa5b[_0x43e7('0x42')]['UserId']||_0x38fa5b['user']['id'];_0x703a30['agent']['id']=_0x38fa5b[_0x43e7('0x42')][_0x43e7('0x69')];return db[_0x43e7('0x28')][_0x43e7('0x40')]({'where':{'id':_0x38fa5b[_0x43e7('0x43')]['id'],'UserId':null}})[_0x43e7('0x10')](handleEntityNotFound(_0x219dc6,null))['then'](saveUpdates(_0x38fa5b[_0x43e7('0x42')],null))[_0x43e7('0x10')](function(_0x2cd420){if(_0x2cd420){_0x703a30['message']=_0x2cd420[_0x43e7('0x6a')]({'plain':!![]});return db[_0x43e7('0x6b')][_0x43e7('0x40')]({'where':{'id':_0x2cd420[_0x43e7('0x6c')]}});}return null;})[_0x43e7('0x10')](handleEntityNotFound(_0x219dc6,null))[_0x43e7('0x10')](function(_0x1d4a29){if(_0x1d4a29){return _0x1d4a29[_0x43e7('0x41')]({'UserId':_0x38fa5b['body']['UserId'],'read1stAt':_['isNil'](_0x1d4a29[_0x43e7('0x6d')])?moment()[_0x43e7('0x63')]('YYYY-MM-DD\x20HH:mm:ss'):undefined});}return null;})[_0x43e7('0x10')](function(_0x39a787){if(_0x39a787){_0x703a30[_0x43e7('0x6e')]=_0x39a787[_0x43e7('0x6a')]({'plain':!![]});interaction_log['info']('[MAILMESSAGE:ACCEPT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s',_0x38fa5b['user']['id'],_0x38fa5b[_0x43e7('0x57')][_0x43e7('0x26')],_0x38fa5b['user']['role'],_0x703a30[_0x43e7('0x6e')]['id'],_0x38fa5b[_0x43e7('0x42')]?JSON[_0x43e7('0x15')](_0x38fa5b['body']):_0x43e7('0x6f'));return respondWithRpcPromise(_0x43e7('0x70'),_0x43e7('0x71'),_0x703a30);}return null;})[_0x43e7('0x10')](function(_0x48f1dc){var _0x1d7048='SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20'+_0x48f1dc[_0x43e7('0x19')][_0x43e7('0x72')];return db[_0x43e7('0x73')][_0x43e7('0x2e')](_0x1d7048,{'type':db[_0x43e7('0x74')][_0x43e7('0x75')][_0x43e7('0x76')],'raw':!![]})['then'](function(_0x109c86){return _0x109c86;});})[_0x43e7('0x10')](function(_0x1aea4e){if(_0x1aea4e){_0x703a30[_0x43e7('0x19')]['contact']=_0x1aea4e[0x0];if(!_0x38fa5b['body']['UserId'])return;return db[_0x43e7('0x77')]['find']({'where':{'id':_0x38fa5b[_0x43e7('0x42')][_0x43e7('0x69')],'role':_0x43e7('0x78')},'attributes':['id',_0x43e7('0x26'),_0x43e7('0x79'),_0x43e7('0x7a'),_0x43e7('0x7b')],'raw':!![]});}return null;})[_0x43e7('0x10')](function(_0x363af5){if(!_0x363af5)return null;_0x703a30[_0x43e7('0x19')][_0x43e7('0x78')]=_0x363af5;return _0x703a30;})['then'](function(_0xeaef5c){if(_0xeaef5c){if(_0x38fa5b[_0x43e7('0x42')][_0x43e7('0x7c')]){_0x703a30[_0x43e7('0x19')][_0x43e7('0x7d')]=util['format']('SIP/%s',_0x38fa5b[_0x43e7('0x57')][_0x43e7('0x26')]);_0x703a30['message'][_0x43e7('0x7e')]=_0x703a30[_0x43e7('0x7e')];_0x703a30['message']['event']=_0x43e7('0x65');_0x703a30[_0x43e7('0x19')][_0x43e7('0x42')]=htmlToText[_0x43e7('0x7f')](_0x703a30[_0x43e7('0x19')]['body']);return respondWithRpcPromise('EventManager',_0x43e7('0x80'),{'event':_0x43e7('0x81'),'message':_0x703a30[_0x43e7('0x19')]},client9002)[_0x43e7('0x10')](function(){return _0x703a30;});}return _0x703a30;}return null;})['then'](respondWithResult(_0x219dc6,null))[_0x43e7('0x1b')](handleError(_0x219dc6,null));};exports[_0x43e7('0x82')]=function(_0x1ed590,_0x15ee83){var _0x5bc060={'agent':{},'channel':_0x43e7('0x66')};if(_0x1ed590[_0x43e7('0x42')]['id']){delete _0x1ed590[_0x43e7('0x42')]['id'];}_0x1ed590[_0x43e7('0x42')][_0x43e7('0x69')]=_0x1ed590['body'][_0x43e7('0x69')]||_0x1ed590[_0x43e7('0x57')]['id'];_0x5bc060['agent']['id']=_0x1ed590[_0x43e7('0x42')][_0x43e7('0x69')];return db[_0x43e7('0x28')][_0x43e7('0x40')]({'where':{'id':_0x1ed590['params']['id'],'UserId':null}})[_0x43e7('0x10')](handleEntityNotFound(_0x15ee83,null))['then'](function(_0x130b41){if(_0x130b41){_0x5bc060[_0x43e7('0x19')]=_0x130b41[_0x43e7('0x6a')]({'plain':!![]});return db[_0x43e7('0x6b')][_0x43e7('0x40')]({'where':{'id':_0x130b41[_0x43e7('0x6c')]}});}return null;})[_0x43e7('0x10')](handleEntityNotFound(_0x15ee83,null))[_0x43e7('0x10')](function(_0xa693a3){if(_0xa693a3){_0x5bc060['interaction']=_0xa693a3[_0x43e7('0x6a')]({'plain':!![]});interaction_log[_0x43e7('0x11')](_0x43e7('0x83'),_0x1ed590[_0x43e7('0x57')]['id'],_0x1ed590['user']['name'],_0x1ed590[_0x43e7('0x57')][_0x43e7('0x84')],_0x5bc060[_0x43e7('0x6e')]['id'],_0x1ed590['body']?JSON[_0x43e7('0x15')](_0x1ed590['body']):'null');return respondWithRpcPromise('RejectMessage',_0x43e7('0x85'),_0x5bc060);}return null;})['then'](function(_0x28f15e){var _0x233819=_0x43e7('0x86')+_0x28f15e[_0x43e7('0x19')][_0x43e7('0x72')];return db['sequelize']['query'](_0x233819,{'type':db[_0x43e7('0x74')][_0x43e7('0x75')]['SELECT'],'raw':!![]})[_0x43e7('0x10')](function(_0x10fd28){return _0x10fd28;});})[_0x43e7('0x10')](function(_0x3310ef){if(_0x3310ef){_0x5bc060[_0x43e7('0x19')][_0x43e7('0x87')]=_0x3310ef[0x0];if(!_0x1ed590[_0x43e7('0x42')][_0x43e7('0x69')])return;return db[_0x43e7('0x77')][_0x43e7('0x40')]({'where':{'id':_0x1ed590[_0x43e7('0x42')][_0x43e7('0x69')],'role':_0x43e7('0x78')},'attributes':['id',_0x43e7('0x26'),_0x43e7('0x79'),_0x43e7('0x7a'),_0x43e7('0x7b')],'raw':!![]});}return null;})[_0x43e7('0x10')](function(_0xec3d2a){if(!_0xec3d2a)return null;_0x5bc060[_0x43e7('0x19')][_0x43e7('0x78')]=_0xec3d2a;return _0x5bc060;})[_0x43e7('0x10')](function(_0x492c2f){if(_0x492c2f){_0x492c2f[_0x43e7('0x19')][_0x43e7('0x7d')]=util[_0x43e7('0x63')](_0x43e7('0x88'),_0x1ed590['user'][_0x43e7('0x26')]);_0x492c2f['message'][_0x43e7('0x7e')]=_0x5bc060[_0x43e7('0x7e')];_0x492c2f[_0x43e7('0x19')][_0x43e7('0x89')]=_0x43e7('0x82');_0x492c2f[_0x43e7('0x19')]['body']=htmlToText[_0x43e7('0x7f')](_0x5bc060[_0x43e7('0x19')][_0x43e7('0x42')]);respondWithRpcPromise(_0x43e7('0x80'),_0x43e7('0x80'),{'event':'rejectmessage','message':_0x492c2f['message']},client9002);return _0x5bc060;}return null;})[_0x43e7('0x10')](respondWithResult(_0x15ee83,null))['catch'](handleError(_0x15ee83,null));};exports[_0x43e7('0x8a')]=function(_0x45aef7,_0x35e743){var _0x29ef54=moment()['unix']()['toString']();var _0x52ddb7=path[_0x43e7('0x59')](config['root'],'server','files',_0x43e7('0x8b'));var _0x1e6ddb=path['join'](config[_0x43e7('0x5a')],'server',_0x43e7('0x8c'),_0x43e7('0x58'));var _0x271f55=util[_0x43e7('0x63')](_0x43e7('0x8d'),_0x29ef54);return db['MailMessage'][_0x43e7('0x40')]({'where':{'id':_0x45aef7[_0x43e7('0x43')]['id']},'attributes':['id',_0x43e7('0x42'),'from','to','cc','bcc',_0x43e7('0x8e'),_0x43e7('0x8f')],'include':_0x45aef7[_0x43e7('0x2e')][_0x43e7('0x58')]?[{'model':db['Attachment'],'as':_0x43e7('0x90')}]:undefined})[_0x43e7('0x10')](handleEntityNotFound(_0x35e743,null))[_0x43e7('0x10')](function(_0x56150e){if(_0x56150e){var _0x41a222=_0x56150e;var _0x2c410e={'from':_0x41a222[_0x43e7('0x91')],'to':_0x41a222['to'],'subject':_0x41a222[_0x43e7('0x8e')],'html':_0x41a222['body'],'headers':{'Date':moment(_0x41a222[_0x43e7('0x8f')])['format'](_0x43e7('0x92'))},'attachments':[]};if(_0x56150e['cc']){_0x2c410e[_0x43e7('0x93')]['Cc']=_0x56150e['cc'];}if(_0x56150e['bcc']){_0x2c410e['headers'][_0x43e7('0x94')]=_0x56150e[_0x43e7('0x95')];}return new BPromise(function(_0x21d001,_0x4600e5){if(_0x56150e[_0x43e7('0x90')]){for(var _0x28986d=0x0;_0x28986d<_0x56150e[_0x43e7('0x90')][_0x43e7('0x3e')];_0x28986d++){var _0x1bff0a=_0x56150e[_0x43e7('0x90')][_0x28986d];var _0x615c=path['join'](_0x1e6ddb,_0x1bff0a[_0x43e7('0x5c')]);if(fs['existsSync'](_0x615c)){_0x2c410e[_0x43e7('0x58')][_0x43e7('0x96')]({'name':_0x1bff0a[_0x43e7('0x26')],'contentType':_0x1bff0a['type'],'data':fs[_0x43e7('0x97')](_0x615c)});}}}emlformat[_0x43e7('0x98')](_0x2c410e,function(_0x119cd2,_0x352405){if(_0x119cd2)return _0x4600e5(_0x119cd2);fs['writeFileSync'](path[_0x43e7('0x59')](_0x52ddb7,_0x271f55),_0x352405);return _0x21d001(_0x352405);});});}})[_0x43e7('0x10')](function(_0x524dc2){if(_0x524dc2){return _0x35e743['download'](path['join'](_0x52ddb7,_0x271f55),_0x271f55,function(_0x124024){if(!_0x124024)fs[_0x43e7('0x99')](path[_0x43e7('0x59')](_0x52ddb7,_0x271f55));});}})[_0x43e7('0x1b')](handleError(_0x35e743,null));};
\ No newline at end of file
+var _0x1da8=['email','internal','interface','SIP/%s','channel','motionChannel','reject','fromString','EventManager','rejectmessage','unix','toString','join','server','files','message-%s.eml','from','createdAt','Attachment','Attachments','subject','decode','ddd,\x20DD\x20MMM\x20YYYY\x20HH:mm:ss\x20ZZ','headers','bcc','Bcc','existsSync','push','build','download','util','path','lodash','ioredis','html-to-text','../../components/interaction/service','../../components/parsers/qs','api','../../config/logger','../../config/environment','../../mysqldb','localhost','socket.io-emitter','redis','client','http','request','then','info','MailMessage,\x20%s,\x20%s,\x20%s','request\x20sent','stringify','error','code','message','MailMessage,\x20%s,\x20%s','catch','status','json','offset','undefined','limit','count','update','end','sendStatus','stack','name','index','map','MailMessage','rawAttributes','fieldName','type','key','model','query','keys','filters','intersection','attributes','length','hasOwnProperty','nolimit','order','sort','where','pick','filter','merge','VIRTUAL','includeAll','include','findAll','rows','params','fields','options','find','body','destroy','describe','create','direction','split','findOne','CmList','List','updatedAt','DESC','MailServerOut','Smtp','CloudProvider','getSmtpOptions','attachments','root','server/files/attachments','basename','Contacts','defaults','List\x20not\x20found','SendMail','messageId','format','YYYY-MM-DD\x20HH:mm:ss','accept','mail','UserId','user','agent','get','MailInteractionId','[MAILMESSAGE:REJECT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','role','rejectMessage','SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20','sequelize','QueryTypes','contact','User'];(function(_0x5ab7ec,_0x57a517){var _0x29b724=function(_0x2ac13e){while(--_0x2ac13e){_0x5ab7ec['push'](_0x5ab7ec['shift']());}};_0x29b724(++_0x57a517);}(_0x1da8,0x1c2));var _0x81da=function(_0x2e2d8d,_0x407eb5){_0x2e2d8d=_0x2e2d8d-0x0;var _0x31645c=_0x1da8[_0x2e2d8d];return _0x31645c;};'use strict';var emlformat=require('eml-format');var moment=require('moment');var util=require(_0x81da('0x0'));var path=require(_0x81da('0x1'));var fs=require('fs');var _=require(_0x81da('0x2'));var Redis=require(_0x81da('0x3'));var htmlToText=require(_0x81da('0x4'));var interactionService=require(_0x81da('0x5'));var qs=require(_0x81da('0x6'));var logger=require('../../config/logger')(_0x81da('0x7'));var interaction_log=require(_0x81da('0x8'))('mail-interactions');var config=require(_0x81da('0x9'));var db=require(_0x81da('0xa'))['db'];config['redis']=_['defaults'](config['redis'],{'host':_0x81da('0xb'),'port':0x18eb});var socket=require(_0x81da('0xc'))(new Redis(config[_0x81da('0xd')]));var htmlEntities=require('html-entities');require('./mailMessage.socket')['register'](socket);var jayson=require('jayson/promise');var client=jayson[_0x81da('0xe')]['http']({'port':0x232c});var client9003=jayson[_0x81da('0xe')][_0x81da('0xf')]({'port':0x232b});var client9002=jayson[_0x81da('0xe')]['http']({'port':0x232a});function respondWithRpcPromise(_0x3d5a75,_0x54bfd3,_0x49174f,_0x25120f){return new Promise(function(_0x2f560c,_0x4d90ac){var _0x35c2d8=_0x25120f||client;return _0x35c2d8[_0x81da('0x10')](_0x3d5a75,_0x49174f)[_0x81da('0x11')](function(_0x132ea0){logger[_0x81da('0x12')]('MailMessage,\x20%s,\x20%s',_0x54bfd3,'request\x20sent');logger['debug'](_0x81da('0x13'),_0x54bfd3,_0x81da('0x14'),JSON[_0x81da('0x15')](_0x132ea0));if(_0x132ea0[_0x81da('0x16')]){if(_0x132ea0['error'][_0x81da('0x17')]===0x1f4){logger['error']('MailMessage,\x20%s,\x20%s',_0x54bfd3,_0x132ea0[_0x81da('0x16')]['message']);return _0x4d90ac(_0x132ea0[_0x81da('0x16')][_0x81da('0x18')]);}logger['error'](_0x81da('0x19'),_0x54bfd3,_0x132ea0[_0x81da('0x16')][_0x81da('0x18')]);return _0x2f560c(_0x132ea0[_0x81da('0x16')][_0x81da('0x18')]);}else{logger[_0x81da('0x12')](_0x81da('0x19'),_0x54bfd3,_0x81da('0x14'));_0x2f560c(_0x132ea0['result'][_0x81da('0x18')]);}})[_0x81da('0x1a')](function(_0xe804f3){logger[_0x81da('0x16')](_0x81da('0x19'),_0x54bfd3,_0xe804f3);_0x4d90ac(_0xe804f3);});});}function respondWithResult(_0x357f85,_0x553230){_0x553230=_0x553230||0xc8;return function(_0x4f6285){if(_0x4f6285){return _0x357f85[_0x81da('0x1b')](_0x553230)[_0x81da('0x1c')](_0x4f6285);}};}function respondWithFilteredResult(_0x84118c,_0x162a95){return function(_0x17a952){if(_0x17a952){var _0x20089e=typeof _0x162a95[_0x81da('0x1d')]===_0x81da('0x1e')&&typeof _0x162a95[_0x81da('0x1f')]===_0x81da('0x1e');var _0x534f71=_0x17a952[_0x81da('0x20')];var _0x469439=_0x20089e?0x0:_0x162a95[_0x81da('0x1d')];var _0x5aedc6=_0x20089e?_0x17a952['count']:_0x162a95[_0x81da('0x1d')]+_0x162a95[_0x81da('0x1f')];var _0x222d3a;if(_0x5aedc6>=_0x534f71){_0x5aedc6=_0x534f71;_0x222d3a=0xc8;}else{_0x222d3a=0xce;}_0x84118c['status'](_0x222d3a);return _0x84118c['set']('Content-Range',_0x469439+'-'+_0x5aedc6+'/'+_0x534f71)[_0x81da('0x1c')](_0x17a952);}return null;};}function saveUpdates(_0x1dcefe){return function(_0x3e9615){if(_0x3e9615){return _0x3e9615[_0x81da('0x21')](_0x1dcefe)[_0x81da('0x11')](function(_0x1b064b){return _0x1b064b;});}return null;};}function removeEntity(_0x14970f){return function(_0x4ebda1){if(_0x4ebda1){return _0x4ebda1['destroy']()[_0x81da('0x11')](function(){_0x14970f[_0x81da('0x1b')](0xcc)[_0x81da('0x22')]();});}};}function handleEntityNotFound(_0xfc65aa){return function(_0x5f1ec1){if(!_0x5f1ec1){_0xfc65aa[_0x81da('0x23')](0x194);}return _0x5f1ec1;};}function handleError(_0x300c89,_0x138677){_0x138677=_0x138677||0x1f4;return function(_0xd63409){logger['error'](_0xd63409[_0x81da('0x24')]);if(_0xd63409[_0x81da('0x25')]){delete _0xd63409[_0x81da('0x25')];}_0x300c89[_0x81da('0x1b')](_0x138677)['send'](_0xd63409);};}exports[_0x81da('0x26')]=function(_0x52a44e,_0x1d59f0){var _0x3acbbf={},_0xb6c577={},_0x1d3167={'count':0x0,'rows':[]};var _0x27789d=_[_0x81da('0x27')](db[_0x81da('0x28')][_0x81da('0x29')],function(_0x534c58){return{'name':_0x534c58[_0x81da('0x2a')],'type':_0x534c58[_0x81da('0x2b')][_0x81da('0x2c')]};});_0xb6c577[_0x81da('0x2d')]=_[_0x81da('0x27')](_0x27789d,_0x81da('0x25'));_0xb6c577[_0x81da('0x2e')]=_[_0x81da('0x2f')](_0x52a44e['query']);_0xb6c577[_0x81da('0x30')]=_[_0x81da('0x31')](_0xb6c577[_0x81da('0x2d')],_0xb6c577[_0x81da('0x2e')]);_0x3acbbf[_0x81da('0x32')]=_['intersection'](_0xb6c577['model'],qs['fields'](_0x52a44e[_0x81da('0x2e')]['fields']));_0x3acbbf[_0x81da('0x32')]=_0x3acbbf[_0x81da('0x32')][_0x81da('0x33')]?_0x3acbbf[_0x81da('0x32')]:_0xb6c577[_0x81da('0x2d')];if(!_0x52a44e[_0x81da('0x2e')][_0x81da('0x34')](_0x81da('0x35'))){_0x3acbbf[_0x81da('0x1f')]=qs['limit'](_0x52a44e[_0x81da('0x2e')][_0x81da('0x1f')]);_0x3acbbf[_0x81da('0x1d')]=qs['offset'](_0x52a44e[_0x81da('0x2e')][_0x81da('0x1d')]);}_0x3acbbf[_0x81da('0x36')]=qs[_0x81da('0x37')](_0x52a44e[_0x81da('0x2e')][_0x81da('0x37')]);_0x3acbbf[_0x81da('0x38')]=qs[_0x81da('0x30')](_[_0x81da('0x39')](_0x52a44e['query'],_0xb6c577['filters']),_0x27789d);if(_0x52a44e[_0x81da('0x2e')][_0x81da('0x3a')]){_0x3acbbf[_0x81da('0x38')]=_[_0x81da('0x3b')](_0x3acbbf[_0x81da('0x38')],{'$or':_['map'](_0x27789d,function(_0x1a31f7){if(_0x1a31f7['type']!==_0x81da('0x3c')){var _0x521494={};_0x521494[_0x1a31f7[_0x81da('0x25')]]={'$like':'%'+_0x52a44e[_0x81da('0x2e')]['filter']+'%'};return _0x521494;}})});}_0x3acbbf=_[_0x81da('0x3b')]({},_0x3acbbf,_0x52a44e['options']);var _0x22f666={'where':_0x3acbbf[_0x81da('0x38')]};return db['MailMessage'][_0x81da('0x20')](_0x22f666)[_0x81da('0x11')](function(_0x32753c){_0x1d3167['count']=_0x32753c;if(_0x52a44e[_0x81da('0x2e')][_0x81da('0x3d')]){_0x3acbbf[_0x81da('0x3e')]=[{'all':!![]}];}return db[_0x81da('0x28')][_0x81da('0x3f')](_0x3acbbf);})[_0x81da('0x11')](function(_0x5c41ac){_0x1d3167[_0x81da('0x40')]=_0x5c41ac;return _0x1d3167;})[_0x81da('0x11')](respondWithFilteredResult(_0x1d59f0,_0x3acbbf))[_0x81da('0x1a')](handleError(_0x1d59f0,null));};exports['show']=function(_0x518d1e,_0x166cbd){var _0x11b9e3={'raw':!![],'where':{'id':_0x518d1e[_0x81da('0x41')]['id']}},_0x18c519={};_0x18c519[_0x81da('0x2d')]=_[_0x81da('0x2f')](db[_0x81da('0x28')][_0x81da('0x29')]);_0x18c519[_0x81da('0x2e')]=_[_0x81da('0x2f')](_0x518d1e[_0x81da('0x2e')]);_0x18c519['filters']=_['intersection'](_0x18c519[_0x81da('0x2d')],_0x18c519[_0x81da('0x2e')]);_0x11b9e3['attributes']=_['intersection'](_0x18c519[_0x81da('0x2d')],qs[_0x81da('0x42')](_0x518d1e[_0x81da('0x2e')][_0x81da('0x42')]));_0x11b9e3[_0x81da('0x32')]=_0x11b9e3[_0x81da('0x32')]['length']?_0x11b9e3['attributes']:_0x18c519[_0x81da('0x2d')];if(_0x518d1e['query'][_0x81da('0x3d')]){_0x11b9e3[_0x81da('0x3e')]=[{'all':!![]}];}_0x11b9e3=_['merge']({},_0x11b9e3,_0x518d1e[_0x81da('0x43')]);return db[_0x81da('0x28')][_0x81da('0x44')](_0x11b9e3)['then'](handleEntityNotFound(_0x166cbd,null))['then'](respondWithResult(_0x166cbd,null))['catch'](handleError(_0x166cbd,null));};exports[_0x81da('0x21')]=function(_0x290614,_0x1785e3){if(_0x290614[_0x81da('0x45')]['id']){delete _0x290614[_0x81da('0x45')]['id'];}return db[_0x81da('0x28')]['find']({'where':{'id':_0x290614[_0x81da('0x41')]['id']}})['then'](handleEntityNotFound(_0x1785e3,null))[_0x81da('0x11')](saveUpdates(_0x290614[_0x81da('0x45')],null))[_0x81da('0x11')](respondWithResult(_0x1785e3,null))[_0x81da('0x1a')](handleError(_0x1785e3,null));};exports[_0x81da('0x46')]=function(_0x1ab797,_0x38057f){return db['MailMessage'][_0x81da('0x44')]({'where':{'id':_0x1ab797[_0x81da('0x41')]['id']}})['then'](handleEntityNotFound(_0x38057f,null))['then'](removeEntity(_0x38057f,null))[_0x81da('0x1a')](handleError(_0x38057f,null));};exports[_0x81da('0x47')]=function(_0x5954fa,_0x54311b){return db[_0x81da('0x28')]['describe']()['then'](respondWithResult(_0x54311b,null))[_0x81da('0x1a')](handleError(_0x54311b,null));};exports[_0x81da('0x48')]=function(_0x40f5a0,_0x3a940b){return db['MailMessage']['create'](_0x40f5a0['body'])[_0x81da('0x11')](function(_0x5e9360){if(_0x5e9360){if(_0x5e9360[_0x81da('0x49')]==='out'&&!_0x5e9360['secret']){var _0x51a25f,_0x122447,_0x4db720;if(_0x40f5a0[_0x81da('0x45')]['to']){_0x122447=_0x40f5a0[_0x81da('0x45')]['to'][_0x81da('0x4a')](',')[0x0];}return db['MailAccount'][_0x81da('0x4b')]({'where':{'id':_0x5e9360['MailAccountId']},'include':[{'model':db[_0x81da('0x4c')],'as':_0x81da('0x4d'),'include':[{'model':db['CmContact'],'as':'Contacts','where':{'email':_0x122447},'limit':0x1,'order':[[_0x81da('0x4e'),_0x81da('0x4f')]]}]},{'model':db[_0x81da('0x50')],'as':_0x81da('0x51'),'raw':!![],'include':[{'model':db[_0x81da('0x52')],'as':_0x81da('0x52'),'raw':!![]}]}]})[_0x81da('0x11')](function(_0x3ad2bb){_0x51a25f=_0x3ad2bb;if(!_0x51a25f||!_0x51a25f['Smtp'])return;var _0x4ad320=_0x51a25f[_0x81da('0x53')]();if(_0x40f5a0[_0x81da('0x45')][_0x81da('0x54')]&&_0x40f5a0[_0x81da('0x45')][_0x81da('0x54')][_0x81da('0x33')]){for(var _0xe29e78=0x0;_0xe29e78<_0x40f5a0[_0x81da('0x45')][_0x81da('0x54')][_0x81da('0x33')];_0xe29e78+=0x1){_0x40f5a0[_0x81da('0x45')]['attachments'][_0xe29e78]={'filename':_0x40f5a0['body'][_0x81da('0x54')][_0xe29e78][_0x81da('0x25')],'path':path['join'](config[_0x81da('0x55')],_0x81da('0x56'),_0x40f5a0['body'][_0x81da('0x54')][_0xe29e78][_0x81da('0x57')])};}}_0x4db720={'account':_0x4ad320,'message':_0x40f5a0['body']};return;})[_0x81da('0x11')](function(){if(_0x51a25f[_0x81da('0x4d')]){if(_0x51a25f[_0x81da('0x4d')]['Contacts'][_0x81da('0x33')]){return _0x51a25f[_0x81da('0x4d')][_0x81da('0x58')][0x0];}else{return db['CmContact'][_0x81da('0x48')](_[_0x81da('0x59')](_0x40f5a0['body'],{'firstName':_0x40f5a0[_0x81da('0x45')]['to'],'email':_0x40f5a0[_0x81da('0x45')]['to'],'phone':_0x40f5a0[_0x81da('0x45')]['to'],'ListId':_0x51a25f['ListId']}));}}else{throw new Error(_0x81da('0x5a'));}})['then'](function(){if(_0x4db720){return respondWithRpcPromise(_0x81da('0x5b'),'sendMail',_0x4db720,client9003)[_0x81da('0x11')](function(_0x2d31bb){return _0x5e9360[_0x81da('0x21')]({'read':!![],'messageId':_0x2d31bb[_0x81da('0x5c')],'sentAt':moment()[_0x81da('0x5d')](_0x81da('0x5e'))});})[_0x81da('0x1a')](function(_0x27827d){logger[_0x81da('0x16')]('%s',JSON[_0x81da('0x15')](_0x27827d));return _0x5e9360;});}return _0x5e9360;});}return _0x5e9360;}})[_0x81da('0x11')](respondWithResult(_0x3a940b,0xc9))[_0x81da('0x1a')](handleError(_0x3a940b,null));};exports[_0x81da('0x5f')]=function(_0x4458f0,_0x46cc53){var _0x28416e=_0x81da('0x60');return interactionService['acceptMessage'](_0x4458f0,_0x28416e)['then'](respondWithResult(_0x46cc53,null))[_0x81da('0x1a')](handleError(_0x46cc53,null));};exports['reject']=function(_0x1354d2,_0x4f88fb){var _0x24e000={'agent':{},'channel':_0x81da('0x60')};if(_0x1354d2[_0x81da('0x45')]['id']){delete _0x1354d2[_0x81da('0x45')]['id'];}_0x1354d2[_0x81da('0x45')]['UserId']=_0x1354d2[_0x81da('0x45')][_0x81da('0x61')]||_0x1354d2[_0x81da('0x62')]['id'];_0x24e000[_0x81da('0x63')]['id']=_0x1354d2['body'][_0x81da('0x61')];return db['MailMessage'][_0x81da('0x44')]({'where':{'id':_0x1354d2[_0x81da('0x41')]['id'],'UserId':null}})[_0x81da('0x11')](handleEntityNotFound(_0x4f88fb,null))[_0x81da('0x11')](function(_0x295791){if(_0x295791){_0x24e000[_0x81da('0x18')]=_0x295791[_0x81da('0x64')]({'plain':!![]});return db['MailInteraction'][_0x81da('0x44')]({'where':{'id':_0x295791[_0x81da('0x65')]}});}return null;})['then'](handleEntityNotFound(_0x4f88fb,null))['then'](function(_0x2a6706){if(_0x2a6706){_0x24e000['interaction']=_0x2a6706[_0x81da('0x64')]({'plain':!![]});interaction_log[_0x81da('0x12')](_0x81da('0x66'),_0x1354d2[_0x81da('0x62')]['id'],_0x1354d2['user'][_0x81da('0x25')],_0x1354d2[_0x81da('0x62')][_0x81da('0x67')],_0x24e000['interaction']['id'],_0x1354d2[_0x81da('0x45')]?JSON[_0x81da('0x15')](_0x1354d2[_0x81da('0x45')]):'null');return respondWithRpcPromise('RejectMessage',_0x81da('0x68'),_0x24e000);}return null;})[_0x81da('0x11')](function(_0x583002){var _0x44fac3=_0x81da('0x69')+_0x583002[_0x81da('0x18')]['ContactId'];return db[_0x81da('0x6a')][_0x81da('0x2e')](_0x44fac3,{'type':db['Sequelize'][_0x81da('0x6b')]['SELECT'],'raw':!![]})['then'](function(_0x3dd52f){return _0x3dd52f;});})[_0x81da('0x11')](function(_0x4c6c63){if(_0x4c6c63){_0x24e000[_0x81da('0x18')][_0x81da('0x6c')]=_0x4c6c63[0x0];if(!_0x1354d2['body']['UserId'])return;return db[_0x81da('0x6d')][_0x81da('0x44')]({'where':{'id':_0x1354d2[_0x81da('0x45')]['UserId'],'role':_0x81da('0x63')},'attributes':['id',_0x81da('0x25'),'fullname',_0x81da('0x6e'),_0x81da('0x6f')],'raw':!![]});}return null;})[_0x81da('0x11')](function(_0x46a81c){if(!_0x46a81c)return null;_0x24e000[_0x81da('0x18')]['agent']=_0x46a81c;return _0x24e000;})['then'](function(_0x5003fa){if(_0x5003fa){_0x5003fa[_0x81da('0x18')][_0x81da('0x70')]=util[_0x81da('0x5d')](_0x81da('0x71'),_0x1354d2[_0x81da('0x62')][_0x81da('0x25')]);_0x5003fa['message'][_0x81da('0x72')]=_0x24e000[_0x81da('0x72')];_0x5003fa['message'][_0x81da('0x73')]=_0x24e000[_0x81da('0x72')];_0x5003fa[_0x81da('0x18')]['event']=_0x81da('0x74');_0x5003fa[_0x81da('0x18')][_0x81da('0x45')]=htmlToText[_0x81da('0x75')](_0x24e000[_0x81da('0x18')][_0x81da('0x45')]);respondWithRpcPromise(_0x81da('0x76'),_0x81da('0x76'),{'event':_0x81da('0x77'),'message':_0x5003fa['message']},client9002);return _0x24e000;}return null;})[_0x81da('0x11')](respondWithResult(_0x4f88fb,null))['catch'](handleError(_0x4f88fb,null));};exports['download']=function(_0x2b8ae8,_0x225c24){var _0x37ac71=moment()[_0x81da('0x78')]()[_0x81da('0x79')]();var _0x2c27f9=path[_0x81da('0x7a')](config['root'],_0x81da('0x7b'),_0x81da('0x7c'),'tmp');var _0x158667=path['join'](config[_0x81da('0x55')],_0x81da('0x7b'),_0x81da('0x7c'),_0x81da('0x54'));var _0x3f89a5=util[_0x81da('0x5d')](_0x81da('0x7d'),_0x37ac71);return db[_0x81da('0x28')][_0x81da('0x44')]({'where':{'id':_0x2b8ae8[_0x81da('0x41')]['id']},'attributes':['id','body',_0x81da('0x7e'),'to','cc','bcc','subject',_0x81da('0x7f')],'include':_0x2b8ae8[_0x81da('0x2e')][_0x81da('0x54')]?[{'model':db[_0x81da('0x80')],'as':_0x81da('0x81')}]:undefined})[_0x81da('0x11')](handleEntityNotFound(_0x225c24,null))[_0x81da('0x11')](function(_0x3a1acd){if(_0x3a1acd){var _0x99b3a=_0x3a1acd;var _0x46b8fc={'from':_0x99b3a[_0x81da('0x7e')],'to':_0x99b3a['to'],'subject':_0x99b3a[_0x81da('0x82')],'html':htmlEntities[_0x81da('0x83')](_0x99b3a[_0x81da('0x45')]),'headers':{'Date':moment(_0x99b3a[_0x81da('0x7f')])[_0x81da('0x5d')](_0x81da('0x84'))},'attachments':[]};if(_0x3a1acd['cc']){_0x46b8fc[_0x81da('0x85')]['Cc']=_0x3a1acd['cc'];}if(_0x3a1acd[_0x81da('0x86')]){_0x46b8fc[_0x81da('0x85')][_0x81da('0x87')]=_0x3a1acd[_0x81da('0x86')];}return new Promise(function(_0x682f69,_0x5c061a){if(_0x3a1acd[_0x81da('0x81')]){for(var _0x2fc4fd=0x0;_0x2fc4fd<_0x3a1acd[_0x81da('0x81')]['length'];_0x2fc4fd++){var _0xc19f39=_0x3a1acd[_0x81da('0x81')][_0x2fc4fd];var _0xf490bf=path[_0x81da('0x7a')](_0x158667,_0xc19f39[_0x81da('0x57')]);if(fs[_0x81da('0x88')](_0xf490bf)){_0x46b8fc[_0x81da('0x54')][_0x81da('0x89')]({'name':_0xc19f39[_0x81da('0x25')],'contentType':_0xc19f39[_0x81da('0x2b')],'data':fs['readFileSync'](_0xf490bf)});}}}emlformat[_0x81da('0x8a')](_0x46b8fc,function(_0x1a6716,_0x13d451){if(_0x1a6716)return _0x5c061a(_0x1a6716);fs['writeFileSync'](path[_0x81da('0x7a')](_0x2c27f9,_0x3f89a5),_0x13d451);return _0x682f69(_0x13d451);});});}})[_0x81da('0x11')](function(_0x43ee81){if(_0x43ee81){return _0x225c24[_0x81da('0x8b')](path[_0x81da('0x7a')](_0x2c27f9,_0x3f89a5),_0x3f89a5,function(_0x1d8d0c){if(!_0x1d8d0c)fs['unlinkSync'](path['join'](_0x2c27f9,_0x3f89a5));});}})[_0x81da('0x1a')](handleError(_0x225c24,null));};
\ No newline at end of file