Built motion from commit e1760111.|2.6.18
[motion2.git] / server / api / mailMessage / mailMessage.controller.js
index efcc5b0..f6d7cae 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x6995=['messageId','format','accept','read','readAt','UserId','user','get','MailInteraction','MailInteractionId','isNil','read1stAt','YYYY-MM-DD\x20HH:mm:ss','interaction','[MAILMESSAGE:ACCEPT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','null','AcceptMessage','acceptMessage','SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20','sequelize','SELECT','contact','User','agent','fullname','email','internal','manual','interface','SIP/%s','channel','motionChannel','event','fromString','EventManager','acceptmessage','mail','[MAILMESSAGE:REJECT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','rejectMessage','ContactId','Sequelize','QueryTypes','reject','rejectmessage','unix','toString','server','files','tmp','message-%s.eml','bcc','subject','createdAt','from','ddd,\x20DD\x20MMM\x20YYYY\x20HH:mm:ss\x20ZZ','headers','Bcc','Attachments','readFileSync','build','writeFileSync','download','unlinkSync','eml-format','util','path','lodash','ioredis','html-to-text','../../components/parsers/qs','../../config/logger','mail-interactions','../../config/environment','../../mysqldb','defaults','redis','html-entities','register','jayson/promise','http','client','request','then','MailMessage,\x20%s,\x20%s','request\x20sent','stringify','error','code','message','info','catch','json','offset','limit','undefined','count','status','set','Content-Range','update','destroy','end','sendStatus','stack','name','send','index','MailMessage','fieldName','type','key','model','map','query','keys','intersection','attributes','fields','length','hasOwnProperty','nolimit','sort','where','pick','filters','filter','VIRTUAL','options','includeAll','rows','params','merge','find','body','describe','create','direction','secret','split','MailAccount','findOne','MailAccountId','CmList','List','Contacts','updatedAt','DESC','MailServerOut','Smtp','getSmtpOptions','join','root','server/files/attachments','attachments','basename','CmContact','ListId','SendMail'];(function(_0x28239a,_0x339e0f){var _0x548615=function(_0x482977){while(--_0x482977){_0x28239a['push'](_0x28239a['shift']());}};_0x548615(++_0x339e0f);}(_0x6995,0x17b));var _0x5699=function(_0x2641f9,_0x26715f){_0x2641f9=_0x2641f9-0x0;var _0x585741=_0x6995[_0x2641f9];return _0x585741;};'use strict';var emlformat=require(_0x5699('0x0'));var moment=require('moment');var BPromise=require('bluebird');var util=require(_0x5699('0x1'));var path=require(_0x5699('0x2'));var fs=require('fs');var _=require(_0x5699('0x3'));var Redis=require(_0x5699('0x4'));var htmlToText=require(_0x5699('0x5'));var qs=require(_0x5699('0x6'));var logger=require(_0x5699('0x7'))('api');var interaction_log=require(_0x5699('0x7'))(_0x5699('0x8'));var config=require(_0x5699('0x9'));var db=require(_0x5699('0xa'))['db'];config['redis']=_[_0x5699('0xb')](config[_0x5699('0xc')],{'host':'localhost','port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0x5699('0xc')]));var htmlEntities=require(_0x5699('0xd'));require('./mailMessage.socket')[_0x5699('0xe')](socket);var jayson=require(_0x5699('0xf'));var client=jayson['client'][_0x5699('0x10')]({'port':0x232c});var client9003=jayson['client']['http']({'port':0x232b});var client9002=jayson[_0x5699('0x11')]['http']({'port':0x232a});function respondWithRpcPromise(_0x1b5cea,_0x4a1f49,_0x2cd385,_0x3b0fab){return new BPromise(function(_0x46828f,_0x3412a4){var _0x2c353c=_0x3b0fab||client;return _0x2c353c[_0x5699('0x12')](_0x1b5cea,_0x2cd385)[_0x5699('0x13')](function(_0x59a38f){logger['info'](_0x5699('0x14'),_0x4a1f49,_0x5699('0x15'));logger['debug']('MailMessage,\x20%s,\x20%s,\x20%s',_0x4a1f49,'request\x20sent',JSON[_0x5699('0x16')](_0x59a38f));if(_0x59a38f[_0x5699('0x17')]){if(_0x59a38f[_0x5699('0x17')][_0x5699('0x18')]===0x1f4){logger['error']('MailMessage,\x20%s,\x20%s',_0x4a1f49,_0x59a38f[_0x5699('0x17')][_0x5699('0x19')]);return _0x3412a4(_0x59a38f[_0x5699('0x17')]['message']);}logger[_0x5699('0x17')]('MailMessage,\x20%s,\x20%s',_0x4a1f49,_0x59a38f['error'][_0x5699('0x19')]);return _0x46828f(_0x59a38f[_0x5699('0x17')][_0x5699('0x19')]);}else{logger[_0x5699('0x1a')](_0x5699('0x14'),_0x4a1f49,'request\x20sent');_0x46828f(_0x59a38f['result'][_0x5699('0x19')]);}})[_0x5699('0x1b')](function(_0x28b593){logger['error'](_0x5699('0x14'),_0x4a1f49,_0x28b593);_0x3412a4(_0x28b593);});});}function respondWithResult(_0xfda909,_0x5dfaa4){_0x5dfaa4=_0x5dfaa4||0xc8;return function(_0x548926){if(_0x548926){return _0xfda909['status'](_0x5dfaa4)[_0x5699('0x1c')](_0x548926);}};}function respondWithFilteredResult(_0x5c22b5,_0x106bb7){return function(_0x5f4efa){if(_0x5f4efa){var _0x56b234=typeof _0x106bb7[_0x5699('0x1d')]==='undefined'&&typeof _0x106bb7[_0x5699('0x1e')]===_0x5699('0x1f');var _0x56a559=_0x5f4efa[_0x5699('0x20')];var _0x308a08=_0x56b234?0x0:_0x106bb7[_0x5699('0x1d')];var _0x944852=_0x56b234?_0x5f4efa['count']:_0x106bb7[_0x5699('0x1d')]+_0x106bb7[_0x5699('0x1e')];var _0x1fc1bd;if(_0x944852>=_0x56a559){_0x944852=_0x56a559;_0x1fc1bd=0xc8;}else{_0x1fc1bd=0xce;}_0x5c22b5[_0x5699('0x21')](_0x1fc1bd);return _0x5c22b5[_0x5699('0x22')](_0x5699('0x23'),_0x308a08+'-'+_0x944852+'/'+_0x56a559)[_0x5699('0x1c')](_0x5f4efa);}return null;};}function saveUpdates(_0x13bf6d){return function(_0x1eaf5d){if(_0x1eaf5d){return _0x1eaf5d[_0x5699('0x24')](_0x13bf6d)[_0x5699('0x13')](function(_0x5ceea8){return _0x5ceea8;});}return null;};}function removeEntity(_0xd9cf04){return function(_0x2d45b9){if(_0x2d45b9){return _0x2d45b9[_0x5699('0x25')]()[_0x5699('0x13')](function(){_0xd9cf04[_0x5699('0x21')](0xcc)[_0x5699('0x26')]();});}};}function handleEntityNotFound(_0x185787){return function(_0x6c1199){if(!_0x6c1199){_0x185787[_0x5699('0x27')](0x194);}return _0x6c1199;};}function handleError(_0x19ad47,_0x3cd22a){_0x3cd22a=_0x3cd22a||0x1f4;return function(_0x5a25b5){logger[_0x5699('0x17')](_0x5a25b5[_0x5699('0x28')]);if(_0x5a25b5[_0x5699('0x29')]){delete _0x5a25b5[_0x5699('0x29')];}_0x19ad47[_0x5699('0x21')](_0x3cd22a)[_0x5699('0x2a')](_0x5a25b5);};}exports[_0x5699('0x2b')]=function(_0xec1385,_0x351814){var _0x347937={},_0x51b715={},_0x155abb={'count':0x0,'rows':[]};var _0x20b76d=_['map'](db[_0x5699('0x2c')]['rawAttributes'],function(_0x14df6d){return{'name':_0x14df6d[_0x5699('0x2d')],'type':_0x14df6d[_0x5699('0x2e')][_0x5699('0x2f')]};});_0x51b715[_0x5699('0x30')]=_[_0x5699('0x31')](_0x20b76d,_0x5699('0x29'));_0x51b715[_0x5699('0x32')]=_[_0x5699('0x33')](_0xec1385[_0x5699('0x32')]);_0x51b715['filters']=_[_0x5699('0x34')](_0x51b715[_0x5699('0x30')],_0x51b715['query']);_0x347937[_0x5699('0x35')]=_[_0x5699('0x34')](_0x51b715[_0x5699('0x30')],qs[_0x5699('0x36')](_0xec1385[_0x5699('0x32')][_0x5699('0x36')]));_0x347937['attributes']=_0x347937[_0x5699('0x35')][_0x5699('0x37')]?_0x347937[_0x5699('0x35')]:_0x51b715[_0x5699('0x30')];if(!_0xec1385[_0x5699('0x32')][_0x5699('0x38')](_0x5699('0x39'))){_0x347937[_0x5699('0x1e')]=qs['limit'](_0xec1385[_0x5699('0x32')][_0x5699('0x1e')]);_0x347937['offset']=qs[_0x5699('0x1d')](_0xec1385[_0x5699('0x32')][_0x5699('0x1d')]);}_0x347937['order']=qs[_0x5699('0x3a')](_0xec1385[_0x5699('0x32')][_0x5699('0x3a')]);_0x347937[_0x5699('0x3b')]=qs['filters'](_[_0x5699('0x3c')](_0xec1385[_0x5699('0x32')],_0x51b715[_0x5699('0x3d')]),_0x20b76d);if(_0xec1385['query'][_0x5699('0x3e')]){_0x347937[_0x5699('0x3b')]=_['merge'](_0x347937[_0x5699('0x3b')],{'$or':_['map'](_0x20b76d,function(_0x1037ce){if(_0x1037ce[_0x5699('0x2e')]!==_0x5699('0x3f')){var _0x4c8fe6={};_0x4c8fe6[_0x1037ce[_0x5699('0x29')]]={'$like':'%'+_0xec1385[_0x5699('0x32')][_0x5699('0x3e')]+'%'};return _0x4c8fe6;}})});}_0x347937=_['merge']({},_0x347937,_0xec1385[_0x5699('0x40')]);var _0x533648={'where':_0x347937[_0x5699('0x3b')]};return db[_0x5699('0x2c')][_0x5699('0x20')](_0x533648)[_0x5699('0x13')](function(_0x4706c9){_0x155abb[_0x5699('0x20')]=_0x4706c9;if(_0xec1385['query'][_0x5699('0x41')]){_0x347937['include']=[{'all':!![]}];}return db['MailMessage']['findAll'](_0x347937);})['then'](function(_0x67e0f1){_0x155abb[_0x5699('0x42')]=_0x67e0f1;return _0x155abb;})[_0x5699('0x13')](respondWithFilteredResult(_0x351814,_0x347937))[_0x5699('0x1b')](handleError(_0x351814,null));};exports['show']=function(_0x1e8e31,_0x14ffa5){var _0x55fd55={'raw':!![],'where':{'id':_0x1e8e31[_0x5699('0x43')]['id']}},_0x3340fb={};_0x3340fb['model']=_['keys'](db['MailMessage']['rawAttributes']);_0x3340fb[_0x5699('0x32')]=_[_0x5699('0x33')](_0x1e8e31['query']);_0x3340fb[_0x5699('0x3d')]=_[_0x5699('0x34')](_0x3340fb[_0x5699('0x30')],_0x3340fb[_0x5699('0x32')]);_0x55fd55[_0x5699('0x35')]=_[_0x5699('0x34')](_0x3340fb[_0x5699('0x30')],qs['fields'](_0x1e8e31[_0x5699('0x32')][_0x5699('0x36')]));_0x55fd55['attributes']=_0x55fd55[_0x5699('0x35')][_0x5699('0x37')]?_0x55fd55[_0x5699('0x35')]:_0x3340fb[_0x5699('0x30')];if(_0x1e8e31['query'][_0x5699('0x41')]){_0x55fd55['include']=[{'all':!![]}];}_0x55fd55=_[_0x5699('0x44')]({},_0x55fd55,_0x1e8e31[_0x5699('0x40')]);return db[_0x5699('0x2c')][_0x5699('0x45')](_0x55fd55)[_0x5699('0x13')](handleEntityNotFound(_0x14ffa5,null))[_0x5699('0x13')](respondWithResult(_0x14ffa5,null))[_0x5699('0x1b')](handleError(_0x14ffa5,null));};exports['update']=function(_0x382989,_0x5f3a69){if(_0x382989[_0x5699('0x46')]['id']){delete _0x382989['body']['id'];}return db[_0x5699('0x2c')][_0x5699('0x45')]({'where':{'id':_0x382989[_0x5699('0x43')]['id']}})[_0x5699('0x13')](handleEntityNotFound(_0x5f3a69,null))['then'](saveUpdates(_0x382989[_0x5699('0x46')],null))[_0x5699('0x13')](respondWithResult(_0x5f3a69,null))['catch'](handleError(_0x5f3a69,null));};exports['destroy']=function(_0x2b8dbd,_0x19652a){return db[_0x5699('0x2c')][_0x5699('0x45')]({'where':{'id':_0x2b8dbd[_0x5699('0x43')]['id']}})[_0x5699('0x13')](handleEntityNotFound(_0x19652a,null))[_0x5699('0x13')](removeEntity(_0x19652a,null))[_0x5699('0x1b')](handleError(_0x19652a,null));};exports[_0x5699('0x47')]=function(_0x575821,_0x3e02dc){return db[_0x5699('0x2c')][_0x5699('0x47')]()[_0x5699('0x13')](respondWithResult(_0x3e02dc,null))['catch'](handleError(_0x3e02dc,null));};exports[_0x5699('0x48')]=function(_0x3dbd90,_0x31f58f){return db['MailMessage'][_0x5699('0x48')](_0x3dbd90[_0x5699('0x46')])['then'](function(_0x2f2cf7){if(_0x2f2cf7){if(_0x2f2cf7[_0x5699('0x49')]==='out'&&!_0x2f2cf7[_0x5699('0x4a')]){var _0x3e06a2,_0x69a482,_0x7ffd;if(_0x3dbd90[_0x5699('0x46')]['to']){_0x69a482=_0x3dbd90['body']['to'][_0x5699('0x4b')](',')[0x0];}return db[_0x5699('0x4c')][_0x5699('0x4d')]({'where':{'id':_0x2f2cf7[_0x5699('0x4e')]},'include':[{'model':db[_0x5699('0x4f')],'as':_0x5699('0x50'),'include':[{'model':db['CmContact'],'as':_0x5699('0x51'),'where':{'email':_0x69a482},'limit':0x1,'order':[[_0x5699('0x52'),_0x5699('0x53')]]}]},{'model':db[_0x5699('0x54')],'as':'Smtp','raw':!![],'include':[{'model':db['CloudProvider'],'as':'CloudProvider','raw':!![]}]}]})['then'](function(_0x48d75c){_0x3e06a2=_0x48d75c;if(!_0x3e06a2||!_0x3e06a2[_0x5699('0x55')])return;var _0x42b4bc=_0x3e06a2[_0x5699('0x56')]();if(_0x3dbd90[_0x5699('0x46')]['attachments']&&_0x3dbd90[_0x5699('0x46')]['attachments'][_0x5699('0x37')]){for(var _0x134568=0x0;_0x134568<_0x3dbd90['body']['attachments'][_0x5699('0x37')];_0x134568+=0x1){_0x3dbd90['body']['attachments'][_0x134568]={'filename':_0x3dbd90[_0x5699('0x46')]['attachments'][_0x134568][_0x5699('0x29')],'path':path[_0x5699('0x57')](config[_0x5699('0x58')],_0x5699('0x59'),_0x3dbd90[_0x5699('0x46')][_0x5699('0x5a')][_0x134568][_0x5699('0x5b')])};}}_0x7ffd={'account':_0x42b4bc,'message':_0x3dbd90[_0x5699('0x46')]};return;})[_0x5699('0x13')](function(){if(_0x3e06a2['List']){if(_0x3e06a2['List'][_0x5699('0x51')][_0x5699('0x37')]){return _0x3e06a2['List'][_0x5699('0x51')][0x0];}else{return db[_0x5699('0x5c')][_0x5699('0x48')](_['defaults'](_0x3dbd90['body'],{'firstName':_0x3dbd90[_0x5699('0x46')]['to'],'email':_0x3dbd90['body']['to'],'phone':_0x3dbd90[_0x5699('0x46')]['to'],'ListId':_0x3e06a2[_0x5699('0x5d')]}));}}else{throw new Error('List\x20not\x20found');}})[_0x5699('0x13')](function(){if(_0x7ffd){return respondWithRpcPromise(_0x5699('0x5e'),'sendMail',_0x7ffd,client9003)[_0x5699('0x13')](function(_0x2fd1ea){return _0x2f2cf7[_0x5699('0x24')]({'read':!![],'messageId':_0x2fd1ea[_0x5699('0x5f')],'sentAt':moment()[_0x5699('0x60')]('YYYY-MM-DD\x20HH:mm:ss')});})['catch'](function(_0x13419e){logger['error']('%s',JSON[_0x5699('0x16')](_0x13419e));return _0x2f2cf7;});}return _0x2f2cf7;});}return _0x2f2cf7;}})[_0x5699('0x13')](respondWithResult(_0x31f58f,0xc9))['catch'](handleError(_0x31f58f,null));};exports[_0x5699('0x61')]=function(_0x2daca9,_0x13e73b){var _0x5898e0={'agent':{},'channel':'mail'};if(_0x2daca9['body']['id']){delete _0x2daca9['body']['id'];}_0x2daca9[_0x5699('0x46')][_0x5699('0x62')]=!![];_0x2daca9[_0x5699('0x46')][_0x5699('0x63')]=moment()[_0x5699('0x60')]('YYYY-MM-DD\x20HH:mm:ss');_0x2daca9[_0x5699('0x46')][_0x5699('0x64')]=_0x2daca9[_0x5699('0x46')][_0x5699('0x64')]||_0x2daca9[_0x5699('0x65')]['id'];_0x5898e0['agent']['id']=_0x2daca9[_0x5699('0x46')][_0x5699('0x64')];return db['MailMessage']['find']({'where':{'id':_0x2daca9[_0x5699('0x43')]['id'],'UserId':null}})['then'](handleEntityNotFound(_0x13e73b,null))[_0x5699('0x13')](saveUpdates(_0x2daca9['body'],null))[_0x5699('0x13')](function(_0x69a988){if(_0x69a988){_0x5898e0[_0x5699('0x19')]=_0x69a988[_0x5699('0x66')]({'plain':!![]});return db[_0x5699('0x67')]['find']({'where':{'id':_0x69a988[_0x5699('0x68')]}});}return null;})[_0x5699('0x13')](handleEntityNotFound(_0x13e73b,null))[_0x5699('0x13')](function(_0x47794b){if(_0x47794b){return _0x47794b['update']({'UserId':_0x2daca9[_0x5699('0x46')][_0x5699('0x64')],'read1stAt':_[_0x5699('0x69')](_0x47794b[_0x5699('0x6a')])?moment()[_0x5699('0x60')](_0x5699('0x6b')):undefined});}return null;})['then'](function(_0x3d9fca){if(_0x3d9fca){_0x5898e0[_0x5699('0x6c')]=_0x3d9fca[_0x5699('0x66')]({'plain':!![]});interaction_log['info'](_0x5699('0x6d'),_0x2daca9[_0x5699('0x65')]['id'],_0x2daca9['user']['name'],_0x2daca9[_0x5699('0x65')]['role'],_0x5898e0[_0x5699('0x6c')]['id'],_0x2daca9[_0x5699('0x46')]?JSON[_0x5699('0x16')](_0x2daca9[_0x5699('0x46')]):_0x5699('0x6e'));return respondWithRpcPromise(_0x5699('0x6f'),_0x5699('0x70'),_0x5898e0);}return null;})[_0x5699('0x13')](function(_0x58ab0e){var _0xf4ef18=_0x5699('0x71')+_0x58ab0e[_0x5699('0x19')]['ContactId'];return db[_0x5699('0x72')][_0x5699('0x32')](_0xf4ef18,{'type':db['Sequelize']['QueryTypes'][_0x5699('0x73')],'raw':!![]})['then'](function(_0xffdae2){return _0xffdae2;});})[_0x5699('0x13')](function(_0x5dc27b){if(_0x5dc27b){_0x5898e0[_0x5699('0x19')][_0x5699('0x74')]=_0x5dc27b[0x0];if(!_0x2daca9[_0x5699('0x46')][_0x5699('0x64')])return;return db[_0x5699('0x75')]['find']({'where':{'id':_0x2daca9[_0x5699('0x46')][_0x5699('0x64')],'role':_0x5699('0x76')},'attributes':['id',_0x5699('0x29'),_0x5699('0x77'),_0x5699('0x78'),_0x5699('0x79')],'raw':!![]});}return null;})[_0x5699('0x13')](function(_0x150b80){if(!_0x150b80)return null;_0x5898e0['message'][_0x5699('0x76')]=_0x150b80;return _0x5898e0;})[_0x5699('0x13')](function(_0x164950){if(_0x164950){if(_0x2daca9[_0x5699('0x46')][_0x5699('0x7a')]){_0x5898e0[_0x5699('0x19')][_0x5699('0x7b')]=util[_0x5699('0x60')](_0x5699('0x7c'),_0x2daca9[_0x5699('0x65')][_0x5699('0x29')]);_0x5898e0[_0x5699('0x19')][_0x5699('0x7d')]=_0x5898e0[_0x5699('0x7d')];_0x5898e0[_0x5699('0x19')][_0x5699('0x7e')]=_0x5898e0['channel'];_0x5898e0[_0x5699('0x19')][_0x5699('0x7f')]=_0x5699('0x61');_0x5898e0[_0x5699('0x19')]['body']=htmlToText[_0x5699('0x80')](_0x5898e0[_0x5699('0x19')][_0x5699('0x46')]);return respondWithRpcPromise('EventManager',_0x5699('0x81'),{'event':_0x5699('0x82'),'message':_0x5898e0[_0x5699('0x19')]},client9002)[_0x5699('0x13')](function(){return _0x5898e0;});}return _0x5898e0;}return null;})[_0x5699('0x13')](respondWithResult(_0x13e73b,null))[_0x5699('0x1b')](handleError(_0x13e73b,null));};exports['reject']=function(_0x1706b8,_0x27ab58){var _0x4ae1c6={'agent':{},'channel':_0x5699('0x83')};if(_0x1706b8[_0x5699('0x46')]['id']){delete _0x1706b8[_0x5699('0x46')]['id'];}_0x1706b8[_0x5699('0x46')]['UserId']=_0x1706b8['body'][_0x5699('0x64')]||_0x1706b8[_0x5699('0x65')]['id'];_0x4ae1c6[_0x5699('0x76')]['id']=_0x1706b8[_0x5699('0x46')][_0x5699('0x64')];return db[_0x5699('0x2c')]['find']({'where':{'id':_0x1706b8['params']['id'],'UserId':null}})[_0x5699('0x13')](handleEntityNotFound(_0x27ab58,null))[_0x5699('0x13')](function(_0x491f94){if(_0x491f94){_0x4ae1c6[_0x5699('0x19')]=_0x491f94[_0x5699('0x66')]({'plain':!![]});return db[_0x5699('0x67')][_0x5699('0x45')]({'where':{'id':_0x491f94['MailInteractionId']}});}return null;})[_0x5699('0x13')](handleEntityNotFound(_0x27ab58,null))[_0x5699('0x13')](function(_0xfbaa93){if(_0xfbaa93){_0x4ae1c6['interaction']=_0xfbaa93[_0x5699('0x66')]({'plain':!![]});interaction_log[_0x5699('0x1a')](_0x5699('0x84'),_0x1706b8[_0x5699('0x65')]['id'],_0x1706b8[_0x5699('0x65')][_0x5699('0x29')],_0x1706b8[_0x5699('0x65')]['role'],_0x4ae1c6['interaction']['id'],_0x1706b8[_0x5699('0x46')]?JSON[_0x5699('0x16')](_0x1706b8['body']):_0x5699('0x6e'));return respondWithRpcPromise('RejectMessage',_0x5699('0x85'),_0x4ae1c6);}return null;})[_0x5699('0x13')](function(_0x718d37){var _0xf868db=_0x5699('0x71')+_0x718d37[_0x5699('0x19')][_0x5699('0x86')];return db[_0x5699('0x72')][_0x5699('0x32')](_0xf868db,{'type':db[_0x5699('0x87')][_0x5699('0x88')]['SELECT'],'raw':!![]})[_0x5699('0x13')](function(_0x37c0a1){return _0x37c0a1;});})[_0x5699('0x13')](function(_0x49ff47){if(_0x49ff47){_0x4ae1c6[_0x5699('0x19')][_0x5699('0x74')]=_0x49ff47[0x0];if(!_0x1706b8[_0x5699('0x46')][_0x5699('0x64')])return;return db[_0x5699('0x75')][_0x5699('0x45')]({'where':{'id':_0x1706b8[_0x5699('0x46')]['UserId'],'role':_0x5699('0x76')},'attributes':['id',_0x5699('0x29'),_0x5699('0x77'),_0x5699('0x78'),_0x5699('0x79')],'raw':!![]});}return null;})['then'](function(_0x22d207){if(!_0x22d207)return null;_0x4ae1c6[_0x5699('0x19')]['agent']=_0x22d207;return _0x4ae1c6;})[_0x5699('0x13')](function(_0x5dc465){if(_0x5dc465){_0x5dc465[_0x5699('0x19')][_0x5699('0x7b')]=util['format'](_0x5699('0x7c'),_0x1706b8[_0x5699('0x65')]['name']);_0x5dc465[_0x5699('0x19')][_0x5699('0x7d')]=_0x4ae1c6['channel'];_0x5dc465['message'][_0x5699('0x7e')]=_0x4ae1c6['channel'];_0x5dc465[_0x5699('0x19')][_0x5699('0x7f')]=_0x5699('0x89');_0x5dc465[_0x5699('0x19')]['body']=htmlToText[_0x5699('0x80')](_0x4ae1c6[_0x5699('0x19')]['body']);respondWithRpcPromise(_0x5699('0x81'),_0x5699('0x81'),{'event':_0x5699('0x8a'),'message':_0x5dc465['message']},client9002);return _0x4ae1c6;}return null;})['then'](respondWithResult(_0x27ab58,null))['catch'](handleError(_0x27ab58,null));};exports['download']=function(_0x242b6d,_0x2271e6){var _0x505781=moment()[_0x5699('0x8b')]()[_0x5699('0x8c')]();var _0x54c4d3=path[_0x5699('0x57')](config['root'],_0x5699('0x8d'),_0x5699('0x8e'),_0x5699('0x8f'));var _0x460945=path[_0x5699('0x57')](config['root'],_0x5699('0x8d'),_0x5699('0x8e'),'attachments');var _0x5e1e85=util[_0x5699('0x60')](_0x5699('0x90'),_0x505781);return db['MailMessage'][_0x5699('0x45')]({'where':{'id':_0x242b6d[_0x5699('0x43')]['id']},'attributes':['id',_0x5699('0x46'),'from','to','cc',_0x5699('0x91'),_0x5699('0x92'),_0x5699('0x93')],'include':_0x242b6d[_0x5699('0x32')][_0x5699('0x5a')]?[{'model':db['Attachment'],'as':'Attachments'}]:undefined})[_0x5699('0x13')](handleEntityNotFound(_0x2271e6,null))[_0x5699('0x13')](function(_0x128e36){if(_0x128e36){var _0x1e786b=_0x128e36;var _0x2da379={'from':_0x1e786b[_0x5699('0x94')],'to':_0x1e786b['to'],'subject':_0x1e786b[_0x5699('0x92')],'html':htmlEntities['decode'](_0x1e786b['body']),'headers':{'Date':moment(_0x1e786b[_0x5699('0x93')])[_0x5699('0x60')](_0x5699('0x95'))},'attachments':[]};if(_0x128e36['cc']){_0x2da379[_0x5699('0x96')]['Cc']=_0x128e36['cc'];}if(_0x128e36[_0x5699('0x91')]){_0x2da379[_0x5699('0x96')][_0x5699('0x97')]=_0x128e36['bcc'];}return new BPromise(function(_0x1bdff6,_0x1699ff){if(_0x128e36[_0x5699('0x98')]){for(var _0x50f669=0x0;_0x50f669<_0x128e36[_0x5699('0x98')][_0x5699('0x37')];_0x50f669++){var _0x3d02f9=_0x128e36[_0x5699('0x98')][_0x50f669];var _0x402279=path[_0x5699('0x57')](_0x460945,_0x3d02f9[_0x5699('0x5b')]);if(fs['existsSync'](_0x402279)){_0x2da379[_0x5699('0x5a')]['push']({'name':_0x3d02f9[_0x5699('0x29')],'contentType':_0x3d02f9['type'],'data':fs[_0x5699('0x99')](_0x402279)});}}}emlformat[_0x5699('0x9a')](_0x2da379,function(_0x53e299,_0x1ad8b5){if(_0x53e299)return _0x1699ff(_0x53e299);fs[_0x5699('0x9b')](path[_0x5699('0x57')](_0x54c4d3,_0x5e1e85),_0x1ad8b5);return _0x1bdff6(_0x1ad8b5);});});}})[_0x5699('0x13')](function(_0x4ed74d){if(_0x4ed74d){return _0x2271e6[_0x5699('0x9c')](path['join'](_0x54c4d3,_0x5e1e85),_0x5e1e85,function(_0x3c24f7){if(!_0x3c24f7)fs[_0x5699('0x9d')](path[_0x5699('0x57')](_0x54c4d3,_0x5e1e85));});}})[_0x5699('0x1b')](handleError(_0x2271e6,null));};
\ No newline at end of file
+var _0x8ced=['unlinkSync','moment','bluebird','util','path','lodash','ioredis','html-to-text','../../config/logger','../../config/environment','../../mysqldb','redis','defaults','localhost','socket.io-emitter','html-entities','./mailMessage.socket','jayson/promise','client','http','MailMessage,\x20%s,\x20%s','request\x20sent','debug','MailMessage,\x20%s,\x20%s,\x20%s','error','code','message','result','catch','status','json','offset','undefined','limit','count','set','Content-Range','update','destroy','then','sendStatus','stack','name','send','index','map','rawAttributes','fieldName','key','model','query','filters','intersection','attributes','fields','nolimit','order','sort','where','pick','filter','type','VIRTUAL','options','MailMessage','includeAll','rows','show','params','length','merge','body','find','describe','create','direction','out','secret','MailAccount','findOne','MailAccountId','CmList','List','CmContact','Contacts','updatedAt','DESC','MailServerOut','Smtp','CloudProvider','getSmtpOptions','attachments','join','root','server/files/attachments','ListId','List\x20not\x20found','SendMail','sendMail','messageId','stringify','accept','readAt','format','YYYY-MM-DD\x20HH:mm:ss','UserId','user','agent','MailInteractionId','isNil','interaction','info','[MAILMESSAGE:ACCEPT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','role','null','acceptMessage','SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20','ContactId','sequelize','Sequelize','QueryTypes','SELECT','contact','fullname','email','manual','interface','SIP/%s','channel','motionChannel','event','fromString','EventManager','acceptmessage','reject','mail','MailInteraction','get','[MAILMESSAGE:REJECT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','rejectMessage','User','rejectmessage','unix','toString','server','files','tmp','bcc','subject','createdAt','Attachment','Attachments','from','decode','ddd,\x20DD\x20MMM\x20YYYY\x20HH:mm:ss\x20ZZ','headers','Bcc','basename','existsSync','push','build','writeFileSync'];(function(_0x422a42,_0x2edb42){var _0x3ca02b=function(_0xb5e642){while(--_0xb5e642){_0x422a42['push'](_0x422a42['shift']());}};_0x3ca02b(++_0x2edb42);}(_0x8ced,0xa3));var _0xd8ce=function(_0x358806,_0x322b66){_0x358806=_0x358806-0x0;var _0x19fdcb=_0x8ced[_0x358806];return _0x19fdcb;};'use strict';var emlformat=require('eml-format');var moment=require(_0xd8ce('0x0'));var BPromise=require(_0xd8ce('0x1'));var util=require(_0xd8ce('0x2'));var path=require(_0xd8ce('0x3'));var fs=require('fs');var _=require(_0xd8ce('0x4'));var Redis=require(_0xd8ce('0x5'));var htmlToText=require(_0xd8ce('0x6'));var qs=require('../../components/parsers/qs');var logger=require(_0xd8ce('0x7'))('api');var interaction_log=require(_0xd8ce('0x7'))('mail-interactions');var config=require(_0xd8ce('0x8'));var db=require(_0xd8ce('0x9'))['db'];config[_0xd8ce('0xa')]=_[_0xd8ce('0xb')](config[_0xd8ce('0xa')],{'host':_0xd8ce('0xc'),'port':0x18eb});var socket=require(_0xd8ce('0xd'))(new Redis(config[_0xd8ce('0xa')]));var htmlEntities=require(_0xd8ce('0xe'));require(_0xd8ce('0xf'))['register'](socket);var jayson=require(_0xd8ce('0x10'));var client=jayson[_0xd8ce('0x11')]['http']({'port':0x232c});var client9003=jayson['client']['http']({'port':0x232b});var client9002=jayson[_0xd8ce('0x11')][_0xd8ce('0x12')]({'port':0x232a});function respondWithRpcPromise(_0x46d3ee,_0x2d86de,_0x115945,_0x5095b2){return new BPromise(function(_0x4dfd06,_0x5da91f){var _0x12c805=_0x5095b2||client;return _0x12c805['request'](_0x46d3ee,_0x115945)['then'](function(_0x4d60d5){logger['info'](_0xd8ce('0x13'),_0x2d86de,_0xd8ce('0x14'));logger[_0xd8ce('0x15')](_0xd8ce('0x16'),_0x2d86de,_0xd8ce('0x14'),JSON['stringify'](_0x4d60d5));if(_0x4d60d5['error']){if(_0x4d60d5[_0xd8ce('0x17')][_0xd8ce('0x18')]===0x1f4){logger[_0xd8ce('0x17')](_0xd8ce('0x13'),_0x2d86de,_0x4d60d5[_0xd8ce('0x17')][_0xd8ce('0x19')]);return _0x5da91f(_0x4d60d5[_0xd8ce('0x17')][_0xd8ce('0x19')]);}logger[_0xd8ce('0x17')](_0xd8ce('0x13'),_0x2d86de,_0x4d60d5[_0xd8ce('0x17')][_0xd8ce('0x19')]);return _0x4dfd06(_0x4d60d5[_0xd8ce('0x17')][_0xd8ce('0x19')]);}else{logger['info'](_0xd8ce('0x13'),_0x2d86de,_0xd8ce('0x14'));_0x4dfd06(_0x4d60d5[_0xd8ce('0x1a')][_0xd8ce('0x19')]);}})[_0xd8ce('0x1b')](function(_0x4e771f){logger['error'](_0xd8ce('0x13'),_0x2d86de,_0x4e771f);_0x5da91f(_0x4e771f);});});}function respondWithResult(_0x42e4d6,_0x4d502d){_0x4d502d=_0x4d502d||0xc8;return function(_0x13a119){if(_0x13a119){return _0x42e4d6[_0xd8ce('0x1c')](_0x4d502d)[_0xd8ce('0x1d')](_0x13a119);}};}function respondWithFilteredResult(_0x5de385,_0x1c6bba){return function(_0x257582){if(_0x257582){var _0x14f26c=typeof _0x1c6bba[_0xd8ce('0x1e')]===_0xd8ce('0x1f')&&typeof _0x1c6bba[_0xd8ce('0x20')]===_0xd8ce('0x1f');var _0xc4b9e7=_0x257582['count'];var _0x3d4bed=_0x14f26c?0x0:_0x1c6bba['offset'];var _0xfd092d=_0x14f26c?_0x257582[_0xd8ce('0x21')]:_0x1c6bba[_0xd8ce('0x1e')]+_0x1c6bba[_0xd8ce('0x20')];var _0x11aa68;if(_0xfd092d>=_0xc4b9e7){_0xfd092d=_0xc4b9e7;_0x11aa68=0xc8;}else{_0x11aa68=0xce;}_0x5de385[_0xd8ce('0x1c')](_0x11aa68);return _0x5de385[_0xd8ce('0x22')](_0xd8ce('0x23'),_0x3d4bed+'-'+_0xfd092d+'/'+_0xc4b9e7)[_0xd8ce('0x1d')](_0x257582);}return null;};}function saveUpdates(_0x1705d3){return function(_0x2f4fbb){if(_0x2f4fbb){return _0x2f4fbb[_0xd8ce('0x24')](_0x1705d3)['then'](function(_0x39c5b1){return _0x39c5b1;});}return null;};}function removeEntity(_0x42e3f5){return function(_0x1145f3){if(_0x1145f3){return _0x1145f3[_0xd8ce('0x25')]()[_0xd8ce('0x26')](function(){_0x42e3f5[_0xd8ce('0x1c')](0xcc)['end']();});}};}function handleEntityNotFound(_0x2dd4eb){return function(_0xbc0cf2){if(!_0xbc0cf2){_0x2dd4eb[_0xd8ce('0x27')](0x194);}return _0xbc0cf2;};}function handleError(_0x5ae252,_0x162f1d){_0x162f1d=_0x162f1d||0x1f4;return function(_0x4e9457){logger[_0xd8ce('0x17')](_0x4e9457[_0xd8ce('0x28')]);if(_0x4e9457['name']){delete _0x4e9457[_0xd8ce('0x29')];}_0x5ae252[_0xd8ce('0x1c')](_0x162f1d)[_0xd8ce('0x2a')](_0x4e9457);};}exports[_0xd8ce('0x2b')]=function(_0x252829,_0x200eda){var _0x489735={},_0x2d902d={},_0x5a1d7b={'count':0x0,'rows':[]};var _0x1cda89=_[_0xd8ce('0x2c')](db['MailMessage'][_0xd8ce('0x2d')],function(_0x25aaba){return{'name':_0x25aaba[_0xd8ce('0x2e')],'type':_0x25aaba['type'][_0xd8ce('0x2f')]};});_0x2d902d[_0xd8ce('0x30')]=_[_0xd8ce('0x2c')](_0x1cda89,'name');_0x2d902d[_0xd8ce('0x31')]=_['keys'](_0x252829[_0xd8ce('0x31')]);_0x2d902d[_0xd8ce('0x32')]=_[_0xd8ce('0x33')](_0x2d902d[_0xd8ce('0x30')],_0x2d902d[_0xd8ce('0x31')]);_0x489735[_0xd8ce('0x34')]=_['intersection'](_0x2d902d[_0xd8ce('0x30')],qs['fields'](_0x252829[_0xd8ce('0x31')][_0xd8ce('0x35')]));_0x489735[_0xd8ce('0x34')]=_0x489735['attributes']['length']?_0x489735[_0xd8ce('0x34')]:_0x2d902d[_0xd8ce('0x30')];if(!_0x252829[_0xd8ce('0x31')]['hasOwnProperty'](_0xd8ce('0x36'))){_0x489735['limit']=qs['limit'](_0x252829[_0xd8ce('0x31')][_0xd8ce('0x20')]);_0x489735[_0xd8ce('0x1e')]=qs[_0xd8ce('0x1e')](_0x252829[_0xd8ce('0x31')]['offset']);}_0x489735[_0xd8ce('0x37')]=qs[_0xd8ce('0x38')](_0x252829[_0xd8ce('0x31')][_0xd8ce('0x38')]);_0x489735[_0xd8ce('0x39')]=qs['filters'](_[_0xd8ce('0x3a')](_0x252829[_0xd8ce('0x31')],_0x2d902d[_0xd8ce('0x32')]),_0x1cda89);if(_0x252829['query'][_0xd8ce('0x3b')]){_0x489735['where']=_['merge'](_0x489735[_0xd8ce('0x39')],{'$or':_[_0xd8ce('0x2c')](_0x1cda89,function(_0x1ce3be){if(_0x1ce3be[_0xd8ce('0x3c')]!==_0xd8ce('0x3d')){var _0x39ca13={};_0x39ca13[_0x1ce3be[_0xd8ce('0x29')]]={'$like':'%'+_0x252829['query'][_0xd8ce('0x3b')]+'%'};return _0x39ca13;}})});}_0x489735=_['merge']({},_0x489735,_0x252829[_0xd8ce('0x3e')]);var _0x33fa79={'where':_0x489735[_0xd8ce('0x39')]};return db[_0xd8ce('0x3f')][_0xd8ce('0x21')](_0x33fa79)[_0xd8ce('0x26')](function(_0x18d882){_0x5a1d7b[_0xd8ce('0x21')]=_0x18d882;if(_0x252829[_0xd8ce('0x31')][_0xd8ce('0x40')]){_0x489735['include']=[{'all':!![]}];}return db[_0xd8ce('0x3f')]['findAll'](_0x489735);})[_0xd8ce('0x26')](function(_0x6d80f9){_0x5a1d7b[_0xd8ce('0x41')]=_0x6d80f9;return _0x5a1d7b;})[_0xd8ce('0x26')](respondWithFilteredResult(_0x200eda,_0x489735))[_0xd8ce('0x1b')](handleError(_0x200eda,null));};exports[_0xd8ce('0x42')]=function(_0x20fb5b,_0x19ae9b){var _0x3c64ef={'raw':!![],'where':{'id':_0x20fb5b[_0xd8ce('0x43')]['id']}},_0x28a961={};_0x28a961['model']=_['keys'](db[_0xd8ce('0x3f')][_0xd8ce('0x2d')]);_0x28a961[_0xd8ce('0x31')]=_['keys'](_0x20fb5b[_0xd8ce('0x31')]);_0x28a961[_0xd8ce('0x32')]=_['intersection'](_0x28a961[_0xd8ce('0x30')],_0x28a961[_0xd8ce('0x31')]);_0x3c64ef[_0xd8ce('0x34')]=_[_0xd8ce('0x33')](_0x28a961[_0xd8ce('0x30')],qs[_0xd8ce('0x35')](_0x20fb5b[_0xd8ce('0x31')]['fields']));_0x3c64ef[_0xd8ce('0x34')]=_0x3c64ef['attributes'][_0xd8ce('0x44')]?_0x3c64ef[_0xd8ce('0x34')]:_0x28a961[_0xd8ce('0x30')];if(_0x20fb5b[_0xd8ce('0x31')]['includeAll']){_0x3c64ef['include']=[{'all':!![]}];}_0x3c64ef=_[_0xd8ce('0x45')]({},_0x3c64ef,_0x20fb5b[_0xd8ce('0x3e')]);return db[_0xd8ce('0x3f')]['find'](_0x3c64ef)['then'](handleEntityNotFound(_0x19ae9b,null))['then'](respondWithResult(_0x19ae9b,null))[_0xd8ce('0x1b')](handleError(_0x19ae9b,null));};exports[_0xd8ce('0x24')]=function(_0x3b9782,_0x21289a){if(_0x3b9782[_0xd8ce('0x46')]['id']){delete _0x3b9782['body']['id'];}return db['MailMessage'][_0xd8ce('0x47')]({'where':{'id':_0x3b9782[_0xd8ce('0x43')]['id']}})[_0xd8ce('0x26')](handleEntityNotFound(_0x21289a,null))[_0xd8ce('0x26')](saveUpdates(_0x3b9782[_0xd8ce('0x46')],null))['then'](respondWithResult(_0x21289a,null))[_0xd8ce('0x1b')](handleError(_0x21289a,null));};exports[_0xd8ce('0x25')]=function(_0x5f3419,_0xf43477){return db[_0xd8ce('0x3f')][_0xd8ce('0x47')]({'where':{'id':_0x5f3419[_0xd8ce('0x43')]['id']}})[_0xd8ce('0x26')](handleEntityNotFound(_0xf43477,null))[_0xd8ce('0x26')](removeEntity(_0xf43477,null))[_0xd8ce('0x1b')](handleError(_0xf43477,null));};exports[_0xd8ce('0x48')]=function(_0x2f8592,_0x15c469){return db[_0xd8ce('0x3f')]['describe']()[_0xd8ce('0x26')](respondWithResult(_0x15c469,null))[_0xd8ce('0x1b')](handleError(_0x15c469,null));};exports[_0xd8ce('0x49')]=function(_0x230751,_0x32e355){return db[_0xd8ce('0x3f')][_0xd8ce('0x49')](_0x230751['body'])[_0xd8ce('0x26')](function(_0x58a1dd){if(_0x58a1dd){if(_0x58a1dd[_0xd8ce('0x4a')]===_0xd8ce('0x4b')&&!_0x58a1dd[_0xd8ce('0x4c')]){var _0x5cf0f0,_0x2db625,_0x5c9e70;if(_0x230751[_0xd8ce('0x46')]['to']){_0x2db625=_0x230751[_0xd8ce('0x46')]['to']['split'](',')[0x0];}return db[_0xd8ce('0x4d')][_0xd8ce('0x4e')]({'where':{'id':_0x58a1dd[_0xd8ce('0x4f')]},'include':[{'model':db[_0xd8ce('0x50')],'as':_0xd8ce('0x51'),'include':[{'model':db[_0xd8ce('0x52')],'as':_0xd8ce('0x53'),'where':{'email':_0x2db625},'limit':0x1,'order':[[_0xd8ce('0x54'),_0xd8ce('0x55')]]}]},{'model':db[_0xd8ce('0x56')],'as':_0xd8ce('0x57'),'raw':!![],'include':[{'model':db[_0xd8ce('0x58')],'as':_0xd8ce('0x58'),'raw':!![]}]}]})[_0xd8ce('0x26')](function(_0xff45b3){_0x5cf0f0=_0xff45b3;if(!_0x5cf0f0||!_0x5cf0f0[_0xd8ce('0x57')])return;var _0x450eb9=_0x5cf0f0[_0xd8ce('0x59')]();if(_0x230751['body'][_0xd8ce('0x5a')]&&_0x230751[_0xd8ce('0x46')][_0xd8ce('0x5a')][_0xd8ce('0x44')]){for(var _0x32edc7=0x0;_0x32edc7<_0x230751[_0xd8ce('0x46')][_0xd8ce('0x5a')][_0xd8ce('0x44')];_0x32edc7+=0x1){_0x230751[_0xd8ce('0x46')]['attachments'][_0x32edc7]={'filename':_0x230751[_0xd8ce('0x46')][_0xd8ce('0x5a')][_0x32edc7][_0xd8ce('0x29')],'path':path[_0xd8ce('0x5b')](config[_0xd8ce('0x5c')],_0xd8ce('0x5d'),_0x230751[_0xd8ce('0x46')][_0xd8ce('0x5a')][_0x32edc7]['basename'])};}}_0x5c9e70={'account':_0x450eb9,'message':_0x230751[_0xd8ce('0x46')]};return;})[_0xd8ce('0x26')](function(){if(_0x5cf0f0[_0xd8ce('0x51')]){if(_0x5cf0f0[_0xd8ce('0x51')]['Contacts'][_0xd8ce('0x44')]){return _0x5cf0f0[_0xd8ce('0x51')][_0xd8ce('0x53')][0x0];}else{return db[_0xd8ce('0x52')][_0xd8ce('0x49')](_[_0xd8ce('0xb')](_0x230751['body'],{'firstName':_0x230751['body']['to'],'email':_0x230751['body']['to'],'phone':_0x230751[_0xd8ce('0x46')]['to'],'ListId':_0x5cf0f0[_0xd8ce('0x5e')]}));}}else{throw new Error(_0xd8ce('0x5f'));}})[_0xd8ce('0x26')](function(){if(_0x5c9e70){return respondWithRpcPromise(_0xd8ce('0x60'),_0xd8ce('0x61'),_0x5c9e70,client9003)[_0xd8ce('0x26')](function(_0x344d42){return _0x58a1dd[_0xd8ce('0x24')]({'read':!![],'messageId':_0x344d42[_0xd8ce('0x62')],'sentAt':moment()['format']('YYYY-MM-DD\x20HH:mm:ss')});})[_0xd8ce('0x1b')](function(_0x349c01){logger[_0xd8ce('0x17')]('%s',JSON[_0xd8ce('0x63')](_0x349c01));return _0x58a1dd;});}return _0x58a1dd;});}return _0x58a1dd;}})[_0xd8ce('0x26')](respondWithResult(_0x32e355,0xc9))['catch'](handleError(_0x32e355,null));};exports[_0xd8ce('0x64')]=function(_0x332fe0,_0x21a8b6){var _0x431e51={'agent':{},'channel':'mail'};if(_0x332fe0[_0xd8ce('0x46')]['id']){delete _0x332fe0[_0xd8ce('0x46')]['id'];}_0x332fe0['body']['read']=!![];_0x332fe0[_0xd8ce('0x46')][_0xd8ce('0x65')]=moment()[_0xd8ce('0x66')](_0xd8ce('0x67'));_0x332fe0[_0xd8ce('0x46')][_0xd8ce('0x68')]=_0x332fe0[_0xd8ce('0x46')]['UserId']||_0x332fe0[_0xd8ce('0x69')]['id'];_0x431e51[_0xd8ce('0x6a')]['id']=_0x332fe0[_0xd8ce('0x46')][_0xd8ce('0x68')];return db['MailMessage'][_0xd8ce('0x47')]({'where':{'id':_0x332fe0['params']['id'],'UserId':null}})[_0xd8ce('0x26')](handleEntityNotFound(_0x21a8b6,null))[_0xd8ce('0x26')](saveUpdates(_0x332fe0[_0xd8ce('0x46')],null))[_0xd8ce('0x26')](function(_0x90147e){if(_0x90147e){_0x431e51['message']=_0x90147e['get']({'plain':!![]});return db['MailInteraction'][_0xd8ce('0x47')]({'where':{'id':_0x90147e[_0xd8ce('0x6b')]}});}return null;})[_0xd8ce('0x26')](handleEntityNotFound(_0x21a8b6,null))[_0xd8ce('0x26')](function(_0x4320da){if(_0x4320da){return _0x4320da['update']({'UserId':_0x332fe0[_0xd8ce('0x46')][_0xd8ce('0x68')],'read1stAt':_[_0xd8ce('0x6c')](_0x4320da['read1stAt'])?moment()[_0xd8ce('0x66')](_0xd8ce('0x67')):undefined});}return null;})['then'](function(_0x43b84c){if(_0x43b84c){_0x431e51[_0xd8ce('0x6d')]=_0x43b84c['get']({'plain':!![]});interaction_log[_0xd8ce('0x6e')](_0xd8ce('0x6f'),_0x332fe0[_0xd8ce('0x69')]['id'],_0x332fe0[_0xd8ce('0x69')][_0xd8ce('0x29')],_0x332fe0['user'][_0xd8ce('0x70')],_0x431e51['interaction']['id'],_0x332fe0['body']?JSON[_0xd8ce('0x63')](_0x332fe0[_0xd8ce('0x46')]):_0xd8ce('0x71'));return respondWithRpcPromise('AcceptMessage',_0xd8ce('0x72'),_0x431e51);}return null;})[_0xd8ce('0x26')](function(_0x27b659){var _0x4df767=_0xd8ce('0x73')+_0x27b659[_0xd8ce('0x19')][_0xd8ce('0x74')];return db[_0xd8ce('0x75')][_0xd8ce('0x31')](_0x4df767,{'type':db[_0xd8ce('0x76')][_0xd8ce('0x77')][_0xd8ce('0x78')],'raw':!![]})[_0xd8ce('0x26')](function(_0x517601){return _0x517601;});})['then'](function(_0x43e9b0){if(_0x43e9b0){_0x431e51['message'][_0xd8ce('0x79')]=_0x43e9b0[0x0];if(!_0x332fe0[_0xd8ce('0x46')][_0xd8ce('0x68')])return;return db['User'][_0xd8ce('0x47')]({'where':{'id':_0x332fe0[_0xd8ce('0x46')]['UserId'],'role':_0xd8ce('0x6a')},'attributes':['id','name',_0xd8ce('0x7a'),_0xd8ce('0x7b'),'internal'],'raw':!![]});}return null;})[_0xd8ce('0x26')](function(_0x21d4fa){if(!_0x21d4fa)return null;_0x431e51[_0xd8ce('0x19')][_0xd8ce('0x6a')]=_0x21d4fa;return _0x431e51;})[_0xd8ce('0x26')](function(_0x5ab3b2){if(_0x5ab3b2){if(_0x332fe0['body'][_0xd8ce('0x7c')]){_0x431e51[_0xd8ce('0x19')][_0xd8ce('0x7d')]=util[_0xd8ce('0x66')](_0xd8ce('0x7e'),_0x332fe0[_0xd8ce('0x69')][_0xd8ce('0x29')]);_0x431e51[_0xd8ce('0x19')][_0xd8ce('0x7f')]=_0x431e51[_0xd8ce('0x7f')];_0x431e51[_0xd8ce('0x19')][_0xd8ce('0x80')]=_0x431e51[_0xd8ce('0x7f')];_0x431e51['message'][_0xd8ce('0x81')]='accept';_0x431e51[_0xd8ce('0x19')][_0xd8ce('0x46')]=htmlToText[_0xd8ce('0x82')](_0x431e51[_0xd8ce('0x19')][_0xd8ce('0x46')]);return respondWithRpcPromise(_0xd8ce('0x83'),_0xd8ce('0x83'),{'event':_0xd8ce('0x84'),'message':_0x431e51['message']},client9002)['then'](function(){return _0x431e51;});}return _0x431e51;}return null;})[_0xd8ce('0x26')](respondWithResult(_0x21a8b6,null))[_0xd8ce('0x1b')](handleError(_0x21a8b6,null));};exports[_0xd8ce('0x85')]=function(_0x508471,_0x130e92){var _0x17c295={'agent':{},'channel':_0xd8ce('0x86')};if(_0x508471[_0xd8ce('0x46')]['id']){delete _0x508471[_0xd8ce('0x46')]['id'];}_0x508471['body'][_0xd8ce('0x68')]=_0x508471[_0xd8ce('0x46')]['UserId']||_0x508471[_0xd8ce('0x69')]['id'];_0x17c295['agent']['id']=_0x508471[_0xd8ce('0x46')]['UserId'];return db[_0xd8ce('0x3f')][_0xd8ce('0x47')]({'where':{'id':_0x508471[_0xd8ce('0x43')]['id'],'UserId':null}})['then'](handleEntityNotFound(_0x130e92,null))[_0xd8ce('0x26')](function(_0x298b94){if(_0x298b94){_0x17c295[_0xd8ce('0x19')]=_0x298b94['get']({'plain':!![]});return db[_0xd8ce('0x87')][_0xd8ce('0x47')]({'where':{'id':_0x298b94[_0xd8ce('0x6b')]}});}return null;})[_0xd8ce('0x26')](handleEntityNotFound(_0x130e92,null))['then'](function(_0x2f235d){if(_0x2f235d){_0x17c295[_0xd8ce('0x6d')]=_0x2f235d[_0xd8ce('0x88')]({'plain':!![]});interaction_log[_0xd8ce('0x6e')](_0xd8ce('0x89'),_0x508471[_0xd8ce('0x69')]['id'],_0x508471[_0xd8ce('0x69')][_0xd8ce('0x29')],_0x508471['user'][_0xd8ce('0x70')],_0x17c295[_0xd8ce('0x6d')]['id'],_0x508471['body']?JSON[_0xd8ce('0x63')](_0x508471[_0xd8ce('0x46')]):_0xd8ce('0x71'));return respondWithRpcPromise('RejectMessage',_0xd8ce('0x8a'),_0x17c295);}return null;})[_0xd8ce('0x26')](function(_0x2c3f44){var _0x4e6315=_0xd8ce('0x73')+_0x2c3f44['message'][_0xd8ce('0x74')];return db['sequelize']['query'](_0x4e6315,{'type':db[_0xd8ce('0x76')][_0xd8ce('0x77')][_0xd8ce('0x78')],'raw':!![]})[_0xd8ce('0x26')](function(_0x2a9565){return _0x2a9565;});})[_0xd8ce('0x26')](function(_0x5fde2d){if(_0x5fde2d){_0x17c295[_0xd8ce('0x19')]['contact']=_0x5fde2d[0x0];if(!_0x508471[_0xd8ce('0x46')][_0xd8ce('0x68')])return;return db[_0xd8ce('0x8b')]['find']({'where':{'id':_0x508471[_0xd8ce('0x46')][_0xd8ce('0x68')],'role':'agent'},'attributes':['id',_0xd8ce('0x29'),'fullname',_0xd8ce('0x7b'),'internal'],'raw':!![]});}return null;})[_0xd8ce('0x26')](function(_0xca7a82){if(!_0xca7a82)return null;_0x17c295['message'][_0xd8ce('0x6a')]=_0xca7a82;return _0x17c295;})['then'](function(_0x44612d){if(_0x44612d){_0x44612d[_0xd8ce('0x19')][_0xd8ce('0x7d')]=util[_0xd8ce('0x66')](_0xd8ce('0x7e'),_0x508471[_0xd8ce('0x69')][_0xd8ce('0x29')]);_0x44612d[_0xd8ce('0x19')][_0xd8ce('0x7f')]=_0x17c295['channel'];_0x44612d[_0xd8ce('0x19')][_0xd8ce('0x80')]=_0x17c295[_0xd8ce('0x7f')];_0x44612d[_0xd8ce('0x19')]['event']='reject';_0x44612d[_0xd8ce('0x19')][_0xd8ce('0x46')]=htmlToText[_0xd8ce('0x82')](_0x17c295[_0xd8ce('0x19')][_0xd8ce('0x46')]);respondWithRpcPromise(_0xd8ce('0x83'),_0xd8ce('0x83'),{'event':_0xd8ce('0x8c'),'message':_0x44612d[_0xd8ce('0x19')]},client9002);return _0x17c295;}return null;})[_0xd8ce('0x26')](respondWithResult(_0x130e92,null))['catch'](handleError(_0x130e92,null));};exports['download']=function(_0x3cf42e,_0x1f3aad){var _0x128727=moment()[_0xd8ce('0x8d')]()[_0xd8ce('0x8e')]();var _0xdc556a=path[_0xd8ce('0x5b')](config['root'],_0xd8ce('0x8f'),_0xd8ce('0x90'),_0xd8ce('0x91'));var _0x5ea432=path['join'](config[_0xd8ce('0x5c')],'server',_0xd8ce('0x90'),_0xd8ce('0x5a'));var _0x37951c=util[_0xd8ce('0x66')]('message-%s.eml',_0x128727);return db['MailMessage'][_0xd8ce('0x47')]({'where':{'id':_0x3cf42e['params']['id']},'attributes':['id',_0xd8ce('0x46'),'from','to','cc',_0xd8ce('0x92'),_0xd8ce('0x93'),_0xd8ce('0x94')],'include':_0x3cf42e[_0xd8ce('0x31')][_0xd8ce('0x5a')]?[{'model':db[_0xd8ce('0x95')],'as':_0xd8ce('0x96')}]:undefined})[_0xd8ce('0x26')](handleEntityNotFound(_0x1f3aad,null))[_0xd8ce('0x26')](function(_0x21c6b4){if(_0x21c6b4){var _0x599092=_0x21c6b4;var _0x32be10={'from':_0x599092[_0xd8ce('0x97')],'to':_0x599092['to'],'subject':_0x599092['subject'],'html':htmlEntities[_0xd8ce('0x98')](_0x599092[_0xd8ce('0x46')]),'headers':{'Date':moment(_0x599092[_0xd8ce('0x94')])[_0xd8ce('0x66')](_0xd8ce('0x99'))},'attachments':[]};if(_0x21c6b4['cc']){_0x32be10[_0xd8ce('0x9a')]['Cc']=_0x21c6b4['cc'];}if(_0x21c6b4[_0xd8ce('0x92')]){_0x32be10[_0xd8ce('0x9a')][_0xd8ce('0x9b')]=_0x21c6b4[_0xd8ce('0x92')];}return new BPromise(function(_0x27cb27,_0x86ec53){if(_0x21c6b4['Attachments']){for(var _0x439bb6=0x0;_0x439bb6<_0x21c6b4['Attachments'][_0xd8ce('0x44')];_0x439bb6++){var _0x43ca9d=_0x21c6b4[_0xd8ce('0x96')][_0x439bb6];var _0x108535=path[_0xd8ce('0x5b')](_0x5ea432,_0x43ca9d[_0xd8ce('0x9c')]);if(fs[_0xd8ce('0x9d')](_0x108535)){_0x32be10['attachments'][_0xd8ce('0x9e')]({'name':_0x43ca9d[_0xd8ce('0x29')],'contentType':_0x43ca9d[_0xd8ce('0x3c')],'data':fs['readFileSync'](_0x108535)});}}}emlformat[_0xd8ce('0x9f')](_0x32be10,function(_0x3718ca,_0x1b701f){if(_0x3718ca)return _0x86ec53(_0x3718ca);fs[_0xd8ce('0xa0')](path[_0xd8ce('0x5b')](_0xdc556a,_0x37951c),_0x1b701f);return _0x27cb27(_0x1b701f);});});}})[_0xd8ce('0x26')](function(_0xc1c78a){if(_0xc1c78a){return _0x1f3aad['download'](path[_0xd8ce('0x5b')](_0xdc556a,_0x37951c),_0x37951c,function(_0x4d64c3){if(!_0x4d64c3)fs[_0xd8ce('0xa1')](path['join'](_0xdc556a,_0x37951c));});}})[_0xd8ce('0x1b')](handleError(_0x1f3aad,null));};
\ No newline at end of file