Built motion from commit 092f8824.|2.5.49
[motion2.git] / server / api / mailMessage / mailMessage.controller.js
index 39ed2fa..b79a3ba 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x58d3=['update','destroy','end','name','send','map','MailMessage','rawAttributes','type','key','model','keys','query','intersection','attributes','fields','length','hasOwnProperty','nolimit','sort','where','filters','pick','filter','merge','VIRTUAL','options','includeAll','include','findAll','rows','show','params','body','find','describe','create','out','split','MailAccount','findOne','Contacts','updatedAt','DESC','Smtp','service','host','port','secure','authentication','auth','user','pass','attachments','join','root','server/files/attachments','basename','List','CmContact','defaults','ListId','List\x20not\x20found','SendMail','sendMail','messageId','format','YYYY-MM-DD\x20HH:mm:ss','mail','read','readAt','UserId','agent','MailInteractionId','isNil','read1stAt','interaction','get','[MAILMESSAGE:ACCEPT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','null','AcceptMessage','acceptMessage','ContactId','sequelize','contact','User','fullname','email','internal','manual','interface','SIP/%s','channel','motionChannel','event','accept','EventManager','acceptmessage','reject','MailInteraction','[MAILMESSAGE:REJECT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','role','RejectMessage','rejectMessage','SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20','Sequelize','SELECT','rejectmessage','download','unix','toString','server','files','tmp','message-%s.eml','from','bcc','subject','createdAt','Attachment','Attachments','decode','ddd,\x20DD\x20MMM\x20YYYY\x20HH:mm:ss\x20ZZ','headers','existsSync','readFileSync','build','writeFileSync','unlinkSync','moment','bluebird','util','path','lodash','html-to-text','api','../../config/logger','mail-interactions','../../config/environment','../../mysqldb','redis','localhost','socket.io-emitter','html-entities','register','jayson/promise','http','client','request','then','info','debug','MailMessage,\x20%s,\x20%s,\x20%s','request\x20sent','stringify','error','MailMessage,\x20%s,\x20%s','message','result','catch','status','json','offset','undefined','limit','count','set','Content-Range'];(function(_0x3f0de6,_0x5f4605){var _0x721aa8=function(_0x5b8de9){while(--_0x5b8de9){_0x3f0de6['push'](_0x3f0de6['shift']());}};_0x721aa8(++_0x5f4605);}(_0x58d3,0x129));var _0x358d=function(_0x2506ee,_0x381ee6){_0x2506ee=_0x2506ee-0x0;var _0x15bbdd=_0x58d3[_0x2506ee];return _0x15bbdd;};'use strict';var emlformat=require('eml-format');var moment=require(_0x358d('0x0'));var BPromise=require(_0x358d('0x1'));var util=require(_0x358d('0x2'));var path=require(_0x358d('0x3'));var fs=require('fs');var _=require(_0x358d('0x4'));var Redis=require('ioredis');var htmlToText=require(_0x358d('0x5'));var qs=require('../../components/parsers/qs');var logger=require('../../config/logger')(_0x358d('0x6'));var interaction_log=require(_0x358d('0x7'))(_0x358d('0x8'));var config=require(_0x358d('0x9'));var db=require(_0x358d('0xa'))['db'];config[_0x358d('0xb')]=_['defaults'](config[_0x358d('0xb')],{'host':_0x358d('0xc'),'port':0x18eb});var socket=require(_0x358d('0xd'))(new Redis(config['redis']));var htmlEntities=require(_0x358d('0xe'));require('./mailMessage.socket')[_0x358d('0xf')](socket);var jayson=require(_0x358d('0x10'));var client=jayson['client'][_0x358d('0x11')]({'port':0x232c});var client9003=jayson[_0x358d('0x12')][_0x358d('0x11')]({'port':0x232b});var client9002=jayson[_0x358d('0x12')][_0x358d('0x11')]({'port':0x232a});function respondWithRpcPromise(_0x5c88c4,_0x1c83a8,_0x5f5d70,_0x49a2a6){return new BPromise(function(_0x8a40a7,_0x404839){var _0x4197d9=_0x49a2a6||client;return _0x4197d9[_0x358d('0x13')](_0x5c88c4,_0x5f5d70)[_0x358d('0x14')](function(_0x49e417){logger[_0x358d('0x15')]('MailMessage,\x20%s,\x20%s',_0x1c83a8,'request\x20sent');logger[_0x358d('0x16')](_0x358d('0x17'),_0x1c83a8,_0x358d('0x18'),JSON[_0x358d('0x19')](_0x49e417));if(_0x49e417[_0x358d('0x1a')]){if(_0x49e417[_0x358d('0x1a')]['code']===0x1f4){logger['error'](_0x358d('0x1b'),_0x1c83a8,_0x49e417['error'][_0x358d('0x1c')]);return _0x404839(_0x49e417[_0x358d('0x1a')][_0x358d('0x1c')]);}logger[_0x358d('0x1a')]('MailMessage,\x20%s,\x20%s',_0x1c83a8,_0x49e417[_0x358d('0x1a')][_0x358d('0x1c')]);return _0x8a40a7(_0x49e417[_0x358d('0x1a')][_0x358d('0x1c')]);}else{logger[_0x358d('0x15')](_0x358d('0x1b'),_0x1c83a8,'request\x20sent');_0x8a40a7(_0x49e417[_0x358d('0x1d')][_0x358d('0x1c')]);}})[_0x358d('0x1e')](function(_0x2f078c){logger['error'](_0x358d('0x1b'),_0x1c83a8,_0x2f078c);_0x404839(_0x2f078c);});});}function respondWithResult(_0x1d76f4,_0x351f8b){_0x351f8b=_0x351f8b||0xc8;return function(_0x5cd566){if(_0x5cd566){return _0x1d76f4[_0x358d('0x1f')](_0x351f8b)[_0x358d('0x20')](_0x5cd566);}};}function respondWithFilteredResult(_0x100f9b,_0x453af2){return function(_0x291557){if(_0x291557){var _0x193a45=typeof _0x453af2[_0x358d('0x21')]===_0x358d('0x22')&&typeof _0x453af2[_0x358d('0x23')]===_0x358d('0x22');var _0xeda81f=_0x291557[_0x358d('0x24')];var _0x5c0c60=_0x193a45?0x0:_0x453af2[_0x358d('0x21')];var _0x42d8ec=_0x193a45?_0x291557[_0x358d('0x24')]:_0x453af2[_0x358d('0x21')]+_0x453af2['limit'];var _0x416358;if(_0x42d8ec>=_0xeda81f){_0x42d8ec=_0xeda81f;_0x416358=0xc8;}else{_0x416358=0xce;}_0x100f9b[_0x358d('0x1f')](_0x416358);return _0x100f9b[_0x358d('0x25')](_0x358d('0x26'),_0x5c0c60+'-'+_0x42d8ec+'/'+_0xeda81f)[_0x358d('0x20')](_0x291557);}return null;};}function saveUpdates(_0x2944f5){return function(_0x213e21){if(_0x213e21){return _0x213e21[_0x358d('0x27')](_0x2944f5)[_0x358d('0x14')](function(_0x3a9329){return _0x3a9329;});}return null;};}function removeEntity(_0x294b47){return function(_0x2db77c){if(_0x2db77c){return _0x2db77c[_0x358d('0x28')]()['then'](function(){_0x294b47[_0x358d('0x1f')](0xcc)[_0x358d('0x29')]();});}};}function handleEntityNotFound(_0x394d13){return function(_0x10f882){if(!_0x10f882){_0x394d13['sendStatus'](0x194);}return _0x10f882;};}function handleError(_0x3a4346,_0x3d27e6){_0x3d27e6=_0x3d27e6||0x1f4;return function(_0x306189){logger[_0x358d('0x1a')](_0x306189['stack']);if(_0x306189[_0x358d('0x2a')]){delete _0x306189[_0x358d('0x2a')];}_0x3a4346[_0x358d('0x1f')](_0x3d27e6)[_0x358d('0x2b')](_0x306189);};}exports['index']=function(_0x35d101,_0x401a05){var _0x58283e={},_0x23a6b4={},_0x295954={'count':0x0,'rows':[]};var _0x5d1b3d=_[_0x358d('0x2c')](db[_0x358d('0x2d')][_0x358d('0x2e')],function(_0x110b3a){return{'name':_0x110b3a['fieldName'],'type':_0x110b3a[_0x358d('0x2f')][_0x358d('0x30')]};});_0x23a6b4[_0x358d('0x31')]=_[_0x358d('0x2c')](_0x5d1b3d,_0x358d('0x2a'));_0x23a6b4['query']=_[_0x358d('0x32')](_0x35d101[_0x358d('0x33')]);_0x23a6b4['filters']=_[_0x358d('0x34')](_0x23a6b4['model'],_0x23a6b4[_0x358d('0x33')]);_0x58283e[_0x358d('0x35')]=_[_0x358d('0x34')](_0x23a6b4[_0x358d('0x31')],qs['fields'](_0x35d101[_0x358d('0x33')][_0x358d('0x36')]));_0x58283e[_0x358d('0x35')]=_0x58283e['attributes'][_0x358d('0x37')]?_0x58283e[_0x358d('0x35')]:_0x23a6b4[_0x358d('0x31')];if(!_0x35d101['query'][_0x358d('0x38')](_0x358d('0x39'))){_0x58283e['limit']=qs[_0x358d('0x23')](_0x35d101[_0x358d('0x33')][_0x358d('0x23')]);_0x58283e[_0x358d('0x21')]=qs[_0x358d('0x21')](_0x35d101[_0x358d('0x33')][_0x358d('0x21')]);}_0x58283e['order']=qs[_0x358d('0x3a')](_0x35d101[_0x358d('0x33')][_0x358d('0x3a')]);_0x58283e[_0x358d('0x3b')]=qs[_0x358d('0x3c')](_[_0x358d('0x3d')](_0x35d101[_0x358d('0x33')],_0x23a6b4[_0x358d('0x3c')]),_0x5d1b3d);if(_0x35d101[_0x358d('0x33')][_0x358d('0x3e')]){_0x58283e[_0x358d('0x3b')]=_[_0x358d('0x3f')](_0x58283e[_0x358d('0x3b')],{'$or':_[_0x358d('0x2c')](_0x5d1b3d,function(_0x95f1fd){if(_0x95f1fd[_0x358d('0x2f')]!==_0x358d('0x40')){var _0x24a3c6={};_0x24a3c6[_0x95f1fd[_0x358d('0x2a')]]={'$like':'%'+_0x35d101[_0x358d('0x33')][_0x358d('0x3e')]+'%'};return _0x24a3c6;}})});}_0x58283e=_[_0x358d('0x3f')]({},_0x58283e,_0x35d101[_0x358d('0x41')]);var _0x2b188a={'where':_0x58283e[_0x358d('0x3b')]};return db[_0x358d('0x2d')]['count'](_0x2b188a)['then'](function(_0x19442a){_0x295954[_0x358d('0x24')]=_0x19442a;if(_0x35d101[_0x358d('0x33')][_0x358d('0x42')]){_0x58283e[_0x358d('0x43')]=[{'all':!![]}];}return db[_0x358d('0x2d')][_0x358d('0x44')](_0x58283e);})['then'](function(_0x176c38){_0x295954[_0x358d('0x45')]=_0x176c38;return _0x295954;})[_0x358d('0x14')](respondWithFilteredResult(_0x401a05,_0x58283e))[_0x358d('0x1e')](handleError(_0x401a05,null));};exports[_0x358d('0x46')]=function(_0x541591,_0x375dd0){var _0x13fc56={'raw':!![],'where':{'id':_0x541591[_0x358d('0x47')]['id']}},_0x29fb14={};_0x29fb14[_0x358d('0x31')]=_[_0x358d('0x32')](db['MailMessage'][_0x358d('0x2e')]);_0x29fb14['query']=_[_0x358d('0x32')](_0x541591[_0x358d('0x33')]);_0x29fb14['filters']=_[_0x358d('0x34')](_0x29fb14[_0x358d('0x31')],_0x29fb14[_0x358d('0x33')]);_0x13fc56[_0x358d('0x35')]=_[_0x358d('0x34')](_0x29fb14['model'],qs['fields'](_0x541591['query'][_0x358d('0x36')]));_0x13fc56[_0x358d('0x35')]=_0x13fc56[_0x358d('0x35')][_0x358d('0x37')]?_0x13fc56['attributes']:_0x29fb14[_0x358d('0x31')];if(_0x541591['query'][_0x358d('0x42')]){_0x13fc56[_0x358d('0x43')]=[{'all':!![]}];}_0x13fc56=_[_0x358d('0x3f')]({},_0x13fc56,_0x541591[_0x358d('0x41')]);return db['MailMessage']['find'](_0x13fc56)[_0x358d('0x14')](handleEntityNotFound(_0x375dd0,null))['then'](respondWithResult(_0x375dd0,null))[_0x358d('0x1e')](handleError(_0x375dd0,null));};exports['update']=function(_0x248c3d,_0x5eaa3c){if(_0x248c3d[_0x358d('0x48')]['id']){delete _0x248c3d[_0x358d('0x48')]['id'];}return db[_0x358d('0x2d')][_0x358d('0x49')]({'where':{'id':_0x248c3d[_0x358d('0x47')]['id']}})[_0x358d('0x14')](handleEntityNotFound(_0x5eaa3c,null))[_0x358d('0x14')](saveUpdates(_0x248c3d[_0x358d('0x48')],null))[_0x358d('0x14')](respondWithResult(_0x5eaa3c,null))[_0x358d('0x1e')](handleError(_0x5eaa3c,null));};exports[_0x358d('0x28')]=function(_0x2c07bf,_0x43ed5c){return db[_0x358d('0x2d')][_0x358d('0x49')]({'where':{'id':_0x2c07bf[_0x358d('0x47')]['id']}})[_0x358d('0x14')](handleEntityNotFound(_0x43ed5c,null))[_0x358d('0x14')](removeEntity(_0x43ed5c,null))[_0x358d('0x1e')](handleError(_0x43ed5c,null));};exports[_0x358d('0x4a')]=function(_0x3275c9,_0x5dff53){return db['MailMessage'][_0x358d('0x4a')]()[_0x358d('0x14')](respondWithResult(_0x5dff53,null))[_0x358d('0x1e')](handleError(_0x5dff53,null));};exports[_0x358d('0x4b')]=function(_0x1510dd,_0x581842){return db[_0x358d('0x2d')]['create'](_0x1510dd[_0x358d('0x48')])[_0x358d('0x14')](function(_0x2e92ec){if(_0x2e92ec){if(_0x2e92ec['direction']===_0x358d('0x4c')&&!_0x2e92ec['secret']){var _0x27a96c,_0x36cf87,_0x35ba75;if(_0x1510dd[_0x358d('0x48')]['to']){_0x36cf87=_0x1510dd[_0x358d('0x48')]['to'][_0x358d('0x4d')](',')[0x0];}return db[_0x358d('0x4e')][_0x358d('0x4f')]({'where':{'id':_0x2e92ec['MailAccountId']},'include':[{'model':db['CmList'],'as':'List','include':[{'model':db['CmContact'],'as':_0x358d('0x50'),'where':{'email':_0x36cf87},'limit':0x1,'order':[[_0x358d('0x51'),_0x358d('0x52')]]}]},{'model':db['MailServerOut'],'as':_0x358d('0x53'),'raw':!![]}]})[_0x358d('0x14')](function(_0x553e96){_0x27a96c=_0x553e96;if(_0x27a96c&&_0x27a96c['Smtp']){var _0x1ab239={'tls':{'rejectUnauthorized':![]}};if(_['isNil'](_0x27a96c[_0x358d('0x53')][_0x358d('0x54')])){_0x1ab239[_0x358d('0x55')]=_0x27a96c['Smtp']['host'];_0x1ab239[_0x358d('0x56')]=_0x27a96c[_0x358d('0x53')]['port'];_0x1ab239[_0x358d('0x57')]=_0x27a96c[_0x358d('0x53')]['secure'];if(_0x27a96c[_0x358d('0x53')][_0x358d('0x58')]){_0x1ab239[_0x358d('0x59')]={'user':_0x27a96c[_0x358d('0x53')][_0x358d('0x5a')],'pass':_0x27a96c[_0x358d('0x53')]['pass']};}}else{_0x1ab239[_0x358d('0x54')]=_0x27a96c[_0x358d('0x53')][_0x358d('0x54')];_0x1ab239['auth']={'user':_0x27a96c[_0x358d('0x53')][_0x358d('0x5a')],'pass':_0x27a96c[_0x358d('0x53')][_0x358d('0x5b')]};_0x1ab239[_0x358d('0x57')]=_0x27a96c['Smtp'][_0x358d('0x57')];}if(_0x1510dd[_0x358d('0x48')][_0x358d('0x5c')]&&_0x1510dd[_0x358d('0x48')]['attachments'][_0x358d('0x37')]){for(var _0x1c98bd=0x0;_0x1c98bd<_0x1510dd[_0x358d('0x48')][_0x358d('0x5c')][_0x358d('0x37')];_0x1c98bd+=0x1){_0x1510dd[_0x358d('0x48')]['attachments'][_0x1c98bd]={'filename':_0x1510dd[_0x358d('0x48')]['attachments'][_0x1c98bd]['name'],'path':path[_0x358d('0x5d')](config[_0x358d('0x5e')],_0x358d('0x5f'),_0x1510dd['body'][_0x358d('0x5c')][_0x1c98bd][_0x358d('0x60')])};}}_0x35ba75={'account':_0x1ab239,'message':_0x1510dd[_0x358d('0x48')]};return;}})[_0x358d('0x14')](function(){if(_0x27a96c[_0x358d('0x61')]){if(_0x27a96c['List'][_0x358d('0x50')][_0x358d('0x37')]){return _0x27a96c[_0x358d('0x61')][_0x358d('0x50')][0x0];}else{return db[_0x358d('0x62')][_0x358d('0x4b')](_[_0x358d('0x63')](_0x1510dd[_0x358d('0x48')],{'firstName':_0x1510dd[_0x358d('0x48')]['to'],'email':_0x1510dd[_0x358d('0x48')]['to'],'phone':_0x1510dd[_0x358d('0x48')]['to'],'ListId':_0x27a96c[_0x358d('0x64')]}));}}else{throw new Error(_0x358d('0x65'));}})['then'](function(){if(_0x35ba75){return respondWithRpcPromise(_0x358d('0x66'),_0x358d('0x67'),_0x35ba75,client9003)[_0x358d('0x14')](function(_0x34e4e6){return _0x2e92ec['update']({'read':!![],'messageId':_0x34e4e6[_0x358d('0x68')],'sentAt':moment()[_0x358d('0x69')](_0x358d('0x6a'))});})[_0x358d('0x1e')](function(_0x5520f0){logger['error']('%s',JSON[_0x358d('0x19')](_0x5520f0));return _0x2e92ec;});}return _0x2e92ec;});}return _0x2e92ec;}})[_0x358d('0x14')](respondWithResult(_0x581842,0xc9))[_0x358d('0x1e')](handleError(_0x581842,null));};exports['accept']=function(_0x564bd8,_0x23060a){var _0x2e70e4={'agent':{},'channel':_0x358d('0x6b')};if(_0x564bd8['body']['id']){delete _0x564bd8[_0x358d('0x48')]['id'];}_0x564bd8[_0x358d('0x48')][_0x358d('0x6c')]=!![];_0x564bd8[_0x358d('0x48')][_0x358d('0x6d')]=moment()[_0x358d('0x69')]('YYYY-MM-DD\x20HH:mm:ss');_0x564bd8['body'][_0x358d('0x6e')]=_0x564bd8[_0x358d('0x48')][_0x358d('0x6e')]||_0x564bd8['user']['id'];_0x2e70e4[_0x358d('0x6f')]['id']=_0x564bd8[_0x358d('0x48')][_0x358d('0x6e')];return db[_0x358d('0x2d')][_0x358d('0x49')]({'where':{'id':_0x564bd8[_0x358d('0x47')]['id'],'UserId':null}})[_0x358d('0x14')](handleEntityNotFound(_0x23060a,null))[_0x358d('0x14')](saveUpdates(_0x564bd8[_0x358d('0x48')],null))[_0x358d('0x14')](function(_0x8de3c0){if(_0x8de3c0){_0x2e70e4['message']=_0x8de3c0['get']({'plain':!![]});return db['MailInteraction'][_0x358d('0x49')]({'where':{'id':_0x8de3c0[_0x358d('0x70')]}});}return null;})[_0x358d('0x14')](handleEntityNotFound(_0x23060a,null))['then'](function(_0x50436f){if(_0x50436f){return _0x50436f['update']({'UserId':_0x564bd8['body']['UserId'],'read1stAt':_[_0x358d('0x71')](_0x50436f[_0x358d('0x72')])?moment()[_0x358d('0x69')](_0x358d('0x6a')):undefined});}return null;})['then'](function(_0x271fb5){if(_0x271fb5){_0x2e70e4[_0x358d('0x73')]=_0x271fb5[_0x358d('0x74')]({'plain':!![]});interaction_log[_0x358d('0x15')](_0x358d('0x75'),_0x564bd8[_0x358d('0x5a')]['id'],_0x564bd8[_0x358d('0x5a')][_0x358d('0x2a')],_0x564bd8[_0x358d('0x5a')]['role'],_0x2e70e4['interaction']['id'],_0x564bd8['body']?JSON[_0x358d('0x19')](_0x564bd8[_0x358d('0x48')]):_0x358d('0x76'));return respondWithRpcPromise(_0x358d('0x77'),_0x358d('0x78'),_0x2e70e4);}return null;})['then'](function(_0x313e4c){var _0x858e16='SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20'+_0x313e4c[_0x358d('0x1c')][_0x358d('0x79')];return db[_0x358d('0x7a')][_0x358d('0x33')](_0x858e16,{'type':db['Sequelize']['QueryTypes']['SELECT'],'raw':!![]})['then'](function(_0x5580b1){return _0x5580b1;});})[_0x358d('0x14')](function(_0x4392bb){if(_0x4392bb){_0x2e70e4['message'][_0x358d('0x7b')]=_0x4392bb[0x0];if(!_0x564bd8[_0x358d('0x48')][_0x358d('0x6e')])return;return db[_0x358d('0x7c')]['find']({'where':{'id':_0x564bd8[_0x358d('0x48')][_0x358d('0x6e')],'role':_0x358d('0x6f')},'attributes':['id',_0x358d('0x2a'),_0x358d('0x7d'),_0x358d('0x7e'),_0x358d('0x7f')],'raw':!![]});}return null;})['then'](function(_0x583971){if(!_0x583971)return null;_0x2e70e4[_0x358d('0x1c')][_0x358d('0x6f')]=_0x583971;return _0x2e70e4;})[_0x358d('0x14')](function(_0x50c2ad){if(_0x50c2ad){if(_0x564bd8[_0x358d('0x48')][_0x358d('0x80')]){_0x2e70e4[_0x358d('0x1c')][_0x358d('0x81')]=util[_0x358d('0x69')](_0x358d('0x82'),_0x564bd8[_0x358d('0x5a')]['name']);_0x2e70e4[_0x358d('0x1c')][_0x358d('0x83')]=_0x2e70e4['channel'];_0x2e70e4[_0x358d('0x1c')][_0x358d('0x84')]=_0x2e70e4[_0x358d('0x83')];_0x2e70e4['message'][_0x358d('0x85')]=_0x358d('0x86');_0x2e70e4[_0x358d('0x1c')][_0x358d('0x48')]=htmlToText['fromString'](_0x2e70e4[_0x358d('0x1c')][_0x358d('0x48')]);return respondWithRpcPromise(_0x358d('0x87'),_0x358d('0x87'),{'event':_0x358d('0x88'),'message':_0x2e70e4[_0x358d('0x1c')]},client9002)[_0x358d('0x14')](function(){return _0x2e70e4;});}return _0x2e70e4;}return null;})['then'](respondWithResult(_0x23060a,null))[_0x358d('0x1e')](handleError(_0x23060a,null));};exports[_0x358d('0x89')]=function(_0x1fe273,_0x2711a9){var _0x2bf478={'agent':{},'channel':_0x358d('0x6b')};if(_0x1fe273[_0x358d('0x48')]['id']){delete _0x1fe273[_0x358d('0x48')]['id'];}_0x1fe273['body'][_0x358d('0x6e')]=_0x1fe273[_0x358d('0x48')][_0x358d('0x6e')]||_0x1fe273[_0x358d('0x5a')]['id'];_0x2bf478[_0x358d('0x6f')]['id']=_0x1fe273[_0x358d('0x48')][_0x358d('0x6e')];return db[_0x358d('0x2d')][_0x358d('0x49')]({'where':{'id':_0x1fe273['params']['id'],'UserId':null}})[_0x358d('0x14')](handleEntityNotFound(_0x2711a9,null))[_0x358d('0x14')](function(_0x1d3f9e){if(_0x1d3f9e){_0x2bf478[_0x358d('0x1c')]=_0x1d3f9e[_0x358d('0x74')]({'plain':!![]});return db[_0x358d('0x8a')][_0x358d('0x49')]({'where':{'id':_0x1d3f9e[_0x358d('0x70')]}});}return null;})['then'](handleEntityNotFound(_0x2711a9,null))[_0x358d('0x14')](function(_0x4b0ff2){if(_0x4b0ff2){_0x2bf478['interaction']=_0x4b0ff2[_0x358d('0x74')]({'plain':!![]});interaction_log[_0x358d('0x15')](_0x358d('0x8b'),_0x1fe273[_0x358d('0x5a')]['id'],_0x1fe273[_0x358d('0x5a')][_0x358d('0x2a')],_0x1fe273[_0x358d('0x5a')][_0x358d('0x8c')],_0x2bf478[_0x358d('0x73')]['id'],_0x1fe273['body']?JSON[_0x358d('0x19')](_0x1fe273[_0x358d('0x48')]):_0x358d('0x76'));return respondWithRpcPromise(_0x358d('0x8d'),_0x358d('0x8e'),_0x2bf478);}return null;})['then'](function(_0x1ee578){var _0x2ba43d=_0x358d('0x8f')+_0x1ee578[_0x358d('0x1c')][_0x358d('0x79')];return db[_0x358d('0x7a')]['query'](_0x2ba43d,{'type':db[_0x358d('0x90')]['QueryTypes'][_0x358d('0x91')],'raw':!![]})['then'](function(_0x5d9f8c){return _0x5d9f8c;});})[_0x358d('0x14')](function(_0x584423){if(_0x584423){_0x2bf478[_0x358d('0x1c')][_0x358d('0x7b')]=_0x584423[0x0];if(!_0x1fe273[_0x358d('0x48')][_0x358d('0x6e')])return;return db['User'][_0x358d('0x49')]({'where':{'id':_0x1fe273[_0x358d('0x48')][_0x358d('0x6e')],'role':'agent'},'attributes':['id','name',_0x358d('0x7d'),_0x358d('0x7e'),_0x358d('0x7f')],'raw':!![]});}return null;})['then'](function(_0x5dc3c2){if(!_0x5dc3c2)return null;_0x2bf478[_0x358d('0x1c')]['agent']=_0x5dc3c2;return _0x2bf478;})[_0x358d('0x14')](function(_0x23e75d){if(_0x23e75d){_0x23e75d['message'][_0x358d('0x81')]=util[_0x358d('0x69')](_0x358d('0x82'),_0x1fe273['user'][_0x358d('0x2a')]);_0x23e75d[_0x358d('0x1c')][_0x358d('0x83')]=_0x2bf478[_0x358d('0x83')];_0x23e75d[_0x358d('0x1c')][_0x358d('0x84')]=_0x2bf478[_0x358d('0x83')];_0x23e75d[_0x358d('0x1c')][_0x358d('0x85')]=_0x358d('0x89');_0x23e75d[_0x358d('0x1c')][_0x358d('0x48')]=htmlToText['fromString'](_0x2bf478[_0x358d('0x1c')][_0x358d('0x48')]);respondWithRpcPromise(_0x358d('0x87'),'EventManager',{'event':_0x358d('0x92'),'message':_0x23e75d[_0x358d('0x1c')]},client9002);return _0x2bf478;}return null;})['then'](respondWithResult(_0x2711a9,null))['catch'](handleError(_0x2711a9,null));};exports[_0x358d('0x93')]=function(_0x334358,_0x21c8a2){var _0x118ae4=moment()[_0x358d('0x94')]()[_0x358d('0x95')]();var _0x107fae=path[_0x358d('0x5d')](config['root'],_0x358d('0x96'),_0x358d('0x97'),_0x358d('0x98'));var _0x118f5b=path[_0x358d('0x5d')](config[_0x358d('0x5e')],_0x358d('0x96'),_0x358d('0x97'),_0x358d('0x5c'));var _0x4f3d56=util[_0x358d('0x69')](_0x358d('0x99'),_0x118ae4);return db[_0x358d('0x2d')][_0x358d('0x49')]({'where':{'id':_0x334358[_0x358d('0x47')]['id']},'attributes':['id',_0x358d('0x48'),_0x358d('0x9a'),'to','cc',_0x358d('0x9b'),_0x358d('0x9c'),_0x358d('0x9d')],'include':_0x334358[_0x358d('0x33')][_0x358d('0x5c')]?[{'model':db[_0x358d('0x9e')],'as':_0x358d('0x9f')}]:undefined})[_0x358d('0x14')](handleEntityNotFound(_0x21c8a2,null))[_0x358d('0x14')](function(_0x2a6ee5){if(_0x2a6ee5){var _0x45be33=_0x2a6ee5;var _0x3b5d5b={'from':_0x45be33['from'],'to':_0x45be33['to'],'subject':_0x45be33[_0x358d('0x9c')],'html':htmlEntities[_0x358d('0xa0')](_0x45be33['body']),'headers':{'Date':moment(_0x45be33['createdAt'])['format'](_0x358d('0xa1'))},'attachments':[]};if(_0x2a6ee5['cc']){_0x3b5d5b[_0x358d('0xa2')]['Cc']=_0x2a6ee5['cc'];}if(_0x2a6ee5[_0x358d('0x9b')]){_0x3b5d5b['headers']['Bcc']=_0x2a6ee5[_0x358d('0x9b')];}return new BPromise(function(_0x3f56c9,_0xb78c5){if(_0x2a6ee5[_0x358d('0x9f')]){for(var _0x614917=0x0;_0x614917<_0x2a6ee5[_0x358d('0x9f')]['length'];_0x614917++){var _0x4a7c23=_0x2a6ee5['Attachments'][_0x614917];var _0x57d6f3=path[_0x358d('0x5d')](_0x118f5b,_0x4a7c23[_0x358d('0x60')]);if(fs[_0x358d('0xa3')](_0x57d6f3)){_0x3b5d5b['attachments']['push']({'name':_0x4a7c23[_0x358d('0x2a')],'contentType':_0x4a7c23['type'],'data':fs[_0x358d('0xa4')](_0x57d6f3)});}}}emlformat[_0x358d('0xa5')](_0x3b5d5b,function(_0x33c453,_0x4f3c31){if(_0x33c453)return _0xb78c5(_0x33c453);fs[_0x358d('0xa6')](path[_0x358d('0x5d')](_0x107fae,_0x4f3d56),_0x4f3c31);return _0x3f56c9(_0x4f3c31);});});}})[_0x358d('0x14')](function(_0x11043d){if(_0x11043d){return _0x21c8a2['download'](path[_0x358d('0x5d')](_0x107fae,_0x4f3d56),_0x4f3d56,function(_0x3859c8){if(!_0x3859c8)fs[_0x358d('0xa7')](path[_0x358d('0x5d')](_0x107fae,_0x4f3d56));});}})['catch'](handleError(_0x21c8a2,null));};
\ No newline at end of file
+var _0xd068=['type','VIRTUAL','options','includeAll','include','params','keys','find','describe','create','body','direction','out','secret','MailAccount','findOne','MailAccountId','Contacts','updatedAt','DESC','MailServerOut','Smtp','CloudProvider','getSmtpOptions','attachments','join','root','server/files/attachments','basename','List','CmContact','defaults','ListId','List\x20not\x20found','SendMail','sendMail','messageId','format','accept','read','UserId','user','get','MailInteractionId','read1stAt','YYYY-MM-DD\x20HH:mm:ss','interaction','[MAILMESSAGE:ACCEPT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','role','AcceptMessage','acceptMessage','sequelize','Sequelize','contact','User','fullname','email','internal','agent','manual','interface','SIP/%s','channel','motionChannel','fromString','EventManager','acceptmessage','reject','mail','MailInteraction','[MAILMESSAGE:REJECT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','null','RejectMessage','rejectMessage','SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20','ContactId','SELECT','event','rejectmessage','toString','server','files','tmp','message-%s.eml','from','createdAt','Attachment','decode','ddd,\x20DD\x20MMM\x20YYYY\x20HH:mm:ss\x20ZZ','headers','bcc','Attachments','existsSync','push','build','writeFileSync','eml-format','moment','bluebird','util','path','lodash','ioredis','html-to-text','../../components/parsers/qs','../../config/logger','mail-interactions','../../config/environment','redis','localhost','socket.io-emitter','./mailMessage.socket','register','jayson/promise','client','http','info','MailMessage,\x20%s,\x20%s','request\x20sent','MailMessage,\x20%s,\x20%s,\x20%s','stringify','error','code','message','result','catch','status','json','count','offset','set','Content-Range','update','then','destroy','end','sendStatus','name','send','map','MailMessage','rawAttributes','fieldName','model','query','filters','intersection','attributes','fields','length','nolimit','limit','order','sort','where','pick','filter','merge'];(function(_0x28e178,_0x2f91a3){var _0x1abf49=function(_0xc4a41c){while(--_0xc4a41c){_0x28e178['push'](_0x28e178['shift']());}};_0x1abf49(++_0x2f91a3);}(_0xd068,0x19c));var _0x8d06=function(_0x175792,_0x4d8d4c){_0x175792=_0x175792-0x0;var _0x453af5=_0xd068[_0x175792];return _0x453af5;};'use strict';var emlformat=require(_0x8d06('0x0'));var moment=require(_0x8d06('0x1'));var BPromise=require(_0x8d06('0x2'));var util=require(_0x8d06('0x3'));var path=require(_0x8d06('0x4'));var fs=require('fs');var _=require(_0x8d06('0x5'));var Redis=require(_0x8d06('0x6'));var htmlToText=require(_0x8d06('0x7'));var qs=require(_0x8d06('0x8'));var logger=require('../../config/logger')('api');var interaction_log=require(_0x8d06('0x9'))(_0x8d06('0xa'));var config=require(_0x8d06('0xb'));var db=require('../../mysqldb')['db'];config['redis']=_['defaults'](config[_0x8d06('0xc')],{'host':_0x8d06('0xd'),'port':0x18eb});var socket=require(_0x8d06('0xe'))(new Redis(config['redis']));var htmlEntities=require('html-entities');require(_0x8d06('0xf'))[_0x8d06('0x10')](socket);var jayson=require(_0x8d06('0x11'));var client=jayson[_0x8d06('0x12')]['http']({'port':0x232c});var client9003=jayson[_0x8d06('0x12')]['http']({'port':0x232b});var client9002=jayson[_0x8d06('0x12')][_0x8d06('0x13')]({'port':0x232a});function respondWithRpcPromise(_0x23c9ea,_0x47ef49,_0x325e7e,_0x256e74){return new BPromise(function(_0x125686,_0x479e3f){var _0x1bb995=_0x256e74||client;return _0x1bb995['request'](_0x23c9ea,_0x325e7e)['then'](function(_0x288f1d){logger[_0x8d06('0x14')](_0x8d06('0x15'),_0x47ef49,_0x8d06('0x16'));logger['debug'](_0x8d06('0x17'),_0x47ef49,_0x8d06('0x16'),JSON[_0x8d06('0x18')](_0x288f1d));if(_0x288f1d[_0x8d06('0x19')]){if(_0x288f1d[_0x8d06('0x19')][_0x8d06('0x1a')]===0x1f4){logger[_0x8d06('0x19')](_0x8d06('0x15'),_0x47ef49,_0x288f1d[_0x8d06('0x19')][_0x8d06('0x1b')]);return _0x479e3f(_0x288f1d[_0x8d06('0x19')]['message']);}logger[_0x8d06('0x19')](_0x8d06('0x15'),_0x47ef49,_0x288f1d[_0x8d06('0x19')][_0x8d06('0x1b')]);return _0x125686(_0x288f1d[_0x8d06('0x19')][_0x8d06('0x1b')]);}else{logger['info'](_0x8d06('0x15'),_0x47ef49,_0x8d06('0x16'));_0x125686(_0x288f1d[_0x8d06('0x1c')]['message']);}})[_0x8d06('0x1d')](function(_0x3a1c47){logger[_0x8d06('0x19')](_0x8d06('0x15'),_0x47ef49,_0x3a1c47);_0x479e3f(_0x3a1c47);});});}function respondWithResult(_0x24d6b7,_0x54e39d){_0x54e39d=_0x54e39d||0xc8;return function(_0xc40561){if(_0xc40561){return _0x24d6b7[_0x8d06('0x1e')](_0x54e39d)[_0x8d06('0x1f')](_0xc40561);}};}function respondWithFilteredResult(_0xb4640e,_0x1cb70b){return function(_0x2cc92d){if(_0x2cc92d){var _0x19a938=typeof _0x1cb70b['offset']==='undefined'&&typeof _0x1cb70b['limit']==='undefined';var _0x4cc56e=_0x2cc92d[_0x8d06('0x20')];var _0x536a92=_0x19a938?0x0:_0x1cb70b[_0x8d06('0x21')];var _0x1ffd07=_0x19a938?_0x2cc92d['count']:_0x1cb70b[_0x8d06('0x21')]+_0x1cb70b['limit'];var _0x23e17e;if(_0x1ffd07>=_0x4cc56e){_0x1ffd07=_0x4cc56e;_0x23e17e=0xc8;}else{_0x23e17e=0xce;}_0xb4640e[_0x8d06('0x1e')](_0x23e17e);return _0xb4640e[_0x8d06('0x22')](_0x8d06('0x23'),_0x536a92+'-'+_0x1ffd07+'/'+_0x4cc56e)['json'](_0x2cc92d);}return null;};}function saveUpdates(_0x226d38){return function(_0x525d3f){if(_0x525d3f){return _0x525d3f[_0x8d06('0x24')](_0x226d38)[_0x8d06('0x25')](function(_0x312b56){return _0x312b56;});}return null;};}function removeEntity(_0x5b6d56){return function(_0x369b7f){if(_0x369b7f){return _0x369b7f[_0x8d06('0x26')]()[_0x8d06('0x25')](function(){_0x5b6d56[_0x8d06('0x1e')](0xcc)[_0x8d06('0x27')]();});}};}function handleEntityNotFound(_0x56f568){return function(_0x2f4142){if(!_0x2f4142){_0x56f568[_0x8d06('0x28')](0x194);}return _0x2f4142;};}function handleError(_0x7acb11,_0x366bdb){_0x366bdb=_0x366bdb||0x1f4;return function(_0x5e1067){logger[_0x8d06('0x19')](_0x5e1067['stack']);if(_0x5e1067[_0x8d06('0x29')]){delete _0x5e1067['name'];}_0x7acb11['status'](_0x366bdb)[_0x8d06('0x2a')](_0x5e1067);};}exports['index']=function(_0xf4aa38,_0xfb304d){var _0x263b02={},_0x37f971={},_0xc1d315={'count':0x0,'rows':[]};var _0x1b7609=_[_0x8d06('0x2b')](db[_0x8d06('0x2c')][_0x8d06('0x2d')],function(_0x25f6ac){return{'name':_0x25f6ac[_0x8d06('0x2e')],'type':_0x25f6ac['type']['key']};});_0x37f971[_0x8d06('0x2f')]=_[_0x8d06('0x2b')](_0x1b7609,'name');_0x37f971[_0x8d06('0x30')]=_['keys'](_0xf4aa38['query']);_0x37f971[_0x8d06('0x31')]=_[_0x8d06('0x32')](_0x37f971[_0x8d06('0x2f')],_0x37f971[_0x8d06('0x30')]);_0x263b02[_0x8d06('0x33')]=_['intersection'](_0x37f971[_0x8d06('0x2f')],qs[_0x8d06('0x34')](_0xf4aa38[_0x8d06('0x30')][_0x8d06('0x34')]));_0x263b02[_0x8d06('0x33')]=_0x263b02[_0x8d06('0x33')][_0x8d06('0x35')]?_0x263b02[_0x8d06('0x33')]:_0x37f971[_0x8d06('0x2f')];if(!_0xf4aa38[_0x8d06('0x30')]['hasOwnProperty'](_0x8d06('0x36'))){_0x263b02[_0x8d06('0x37')]=qs[_0x8d06('0x37')](_0xf4aa38[_0x8d06('0x30')][_0x8d06('0x37')]);_0x263b02[_0x8d06('0x21')]=qs[_0x8d06('0x21')](_0xf4aa38['query'][_0x8d06('0x21')]);}_0x263b02[_0x8d06('0x38')]=qs[_0x8d06('0x39')](_0xf4aa38[_0x8d06('0x30')]['sort']);_0x263b02[_0x8d06('0x3a')]=qs[_0x8d06('0x31')](_[_0x8d06('0x3b')](_0xf4aa38[_0x8d06('0x30')],_0x37f971[_0x8d06('0x31')]),_0x1b7609);if(_0xf4aa38[_0x8d06('0x30')][_0x8d06('0x3c')]){_0x263b02['where']=_[_0x8d06('0x3d')](_0x263b02[_0x8d06('0x3a')],{'$or':_[_0x8d06('0x2b')](_0x1b7609,function(_0x55afd2){if(_0x55afd2[_0x8d06('0x3e')]!==_0x8d06('0x3f')){var _0x93aba3={};_0x93aba3[_0x55afd2['name']]={'$like':'%'+_0xf4aa38['query'][_0x8d06('0x3c')]+'%'};return _0x93aba3;}})});}_0x263b02=_[_0x8d06('0x3d')]({},_0x263b02,_0xf4aa38[_0x8d06('0x40')]);var _0x4e9890={'where':_0x263b02['where']};return db[_0x8d06('0x2c')][_0x8d06('0x20')](_0x4e9890)[_0x8d06('0x25')](function(_0xa86468){_0xc1d315[_0x8d06('0x20')]=_0xa86468;if(_0xf4aa38[_0x8d06('0x30')][_0x8d06('0x41')]){_0x263b02[_0x8d06('0x42')]=[{'all':!![]}];}return db[_0x8d06('0x2c')]['findAll'](_0x263b02);})[_0x8d06('0x25')](function(_0x58321f){_0xc1d315['rows']=_0x58321f;return _0xc1d315;})[_0x8d06('0x25')](respondWithFilteredResult(_0xfb304d,_0x263b02))[_0x8d06('0x1d')](handleError(_0xfb304d,null));};exports['show']=function(_0x395205,_0x2c1f67){var _0x7abde8={'raw':!![],'where':{'id':_0x395205[_0x8d06('0x43')]['id']}},_0xd6c70a={};_0xd6c70a[_0x8d06('0x2f')]=_[_0x8d06('0x44')](db[_0x8d06('0x2c')][_0x8d06('0x2d')]);_0xd6c70a[_0x8d06('0x30')]=_[_0x8d06('0x44')](_0x395205[_0x8d06('0x30')]);_0xd6c70a[_0x8d06('0x31')]=_['intersection'](_0xd6c70a[_0x8d06('0x2f')],_0xd6c70a[_0x8d06('0x30')]);_0x7abde8[_0x8d06('0x33')]=_[_0x8d06('0x32')](_0xd6c70a[_0x8d06('0x2f')],qs[_0x8d06('0x34')](_0x395205['query'][_0x8d06('0x34')]));_0x7abde8[_0x8d06('0x33')]=_0x7abde8[_0x8d06('0x33')][_0x8d06('0x35')]?_0x7abde8[_0x8d06('0x33')]:_0xd6c70a[_0x8d06('0x2f')];if(_0x395205[_0x8d06('0x30')][_0x8d06('0x41')]){_0x7abde8['include']=[{'all':!![]}];}_0x7abde8=_[_0x8d06('0x3d')]({},_0x7abde8,_0x395205[_0x8d06('0x40')]);return db[_0x8d06('0x2c')][_0x8d06('0x45')](_0x7abde8)[_0x8d06('0x25')](handleEntityNotFound(_0x2c1f67,null))[_0x8d06('0x25')](respondWithResult(_0x2c1f67,null))[_0x8d06('0x1d')](handleError(_0x2c1f67,null));};exports['update']=function(_0x24a18a,_0x3d307b){if(_0x24a18a['body']['id']){delete _0x24a18a['body']['id'];}return db[_0x8d06('0x2c')][_0x8d06('0x45')]({'where':{'id':_0x24a18a[_0x8d06('0x43')]['id']}})['then'](handleEntityNotFound(_0x3d307b,null))[_0x8d06('0x25')](saveUpdates(_0x24a18a['body'],null))['then'](respondWithResult(_0x3d307b,null))['catch'](handleError(_0x3d307b,null));};exports[_0x8d06('0x26')]=function(_0x5074ee,_0x3e9424){return db[_0x8d06('0x2c')][_0x8d06('0x45')]({'where':{'id':_0x5074ee[_0x8d06('0x43')]['id']}})[_0x8d06('0x25')](handleEntityNotFound(_0x3e9424,null))['then'](removeEntity(_0x3e9424,null))[_0x8d06('0x1d')](handleError(_0x3e9424,null));};exports['describe']=function(_0x3c0609,_0xc8faab){return db[_0x8d06('0x2c')][_0x8d06('0x46')]()[_0x8d06('0x25')](respondWithResult(_0xc8faab,null))[_0x8d06('0x1d')](handleError(_0xc8faab,null));};exports['create']=function(_0x14885f,_0x40d266){return db[_0x8d06('0x2c')][_0x8d06('0x47')](_0x14885f[_0x8d06('0x48')])[_0x8d06('0x25')](function(_0x42f612){if(_0x42f612){if(_0x42f612[_0x8d06('0x49')]===_0x8d06('0x4a')&&!_0x42f612[_0x8d06('0x4b')]){var _0x273d23,_0x24abda,_0x59fdf8;if(_0x14885f[_0x8d06('0x48')]['to']){_0x24abda=_0x14885f[_0x8d06('0x48')]['to']['split'](',')[0x0];}return db[_0x8d06('0x4c')][_0x8d06('0x4d')]({'where':{'id':_0x42f612[_0x8d06('0x4e')]},'include':[{'model':db['CmList'],'as':'List','include':[{'model':db['CmContact'],'as':_0x8d06('0x4f'),'where':{'email':_0x24abda},'limit':0x1,'order':[[_0x8d06('0x50'),_0x8d06('0x51')]]}]},{'model':db[_0x8d06('0x52')],'as':_0x8d06('0x53'),'raw':!![],'include':[{'model':db[_0x8d06('0x54')],'as':_0x8d06('0x54'),'raw':!![]}]}]})[_0x8d06('0x25')](function(_0x2232be){_0x273d23=_0x2232be;if(!_0x273d23||!_0x273d23[_0x8d06('0x53')])return;var _0x482986=_0x273d23[_0x8d06('0x55')]();if(_0x14885f[_0x8d06('0x48')][_0x8d06('0x56')]&&_0x14885f[_0x8d06('0x48')]['attachments'][_0x8d06('0x35')]){for(var _0x5199b7=0x0;_0x5199b7<_0x14885f[_0x8d06('0x48')]['attachments'][_0x8d06('0x35')];_0x5199b7+=0x1){_0x14885f[_0x8d06('0x48')]['attachments'][_0x5199b7]={'filename':_0x14885f['body'][_0x8d06('0x56')][_0x5199b7][_0x8d06('0x29')],'path':path[_0x8d06('0x57')](config[_0x8d06('0x58')],_0x8d06('0x59'),_0x14885f[_0x8d06('0x48')]['attachments'][_0x5199b7][_0x8d06('0x5a')])};}}_0x59fdf8={'account':_0x482986,'message':_0x14885f[_0x8d06('0x48')]};return;})[_0x8d06('0x25')](function(){if(_0x273d23[_0x8d06('0x5b')]){if(_0x273d23[_0x8d06('0x5b')][_0x8d06('0x4f')][_0x8d06('0x35')]){return _0x273d23[_0x8d06('0x5b')][_0x8d06('0x4f')][0x0];}else{return db[_0x8d06('0x5c')][_0x8d06('0x47')](_[_0x8d06('0x5d')](_0x14885f[_0x8d06('0x48')],{'firstName':_0x14885f['body']['to'],'email':_0x14885f[_0x8d06('0x48')]['to'],'phone':_0x14885f[_0x8d06('0x48')]['to'],'ListId':_0x273d23[_0x8d06('0x5e')]}));}}else{throw new Error(_0x8d06('0x5f'));}})[_0x8d06('0x25')](function(){if(_0x59fdf8){return respondWithRpcPromise(_0x8d06('0x60'),_0x8d06('0x61'),_0x59fdf8,client9003)[_0x8d06('0x25')](function(_0x1e9938){return _0x42f612['update']({'read':!![],'messageId':_0x1e9938[_0x8d06('0x62')],'sentAt':moment()[_0x8d06('0x63')]('YYYY-MM-DD\x20HH:mm:ss')});})[_0x8d06('0x1d')](function(_0x111e85){logger['error']('%s',JSON[_0x8d06('0x18')](_0x111e85));return _0x42f612;});}return _0x42f612;});}return _0x42f612;}})[_0x8d06('0x25')](respondWithResult(_0x40d266,0xc9))[_0x8d06('0x1d')](handleError(_0x40d266,null));};exports[_0x8d06('0x64')]=function(_0x43ebc7,_0x5624bb){var _0x4d6a29={'agent':{},'channel':'mail'};if(_0x43ebc7['body']['id']){delete _0x43ebc7['body']['id'];}_0x43ebc7[_0x8d06('0x48')][_0x8d06('0x65')]=!![];_0x43ebc7[_0x8d06('0x48')]['readAt']=moment()[_0x8d06('0x63')]('YYYY-MM-DD\x20HH:mm:ss');_0x43ebc7[_0x8d06('0x48')][_0x8d06('0x66')]=_0x43ebc7[_0x8d06('0x48')]['UserId']||_0x43ebc7[_0x8d06('0x67')]['id'];_0x4d6a29['agent']['id']=_0x43ebc7[_0x8d06('0x48')]['UserId'];return db[_0x8d06('0x2c')][_0x8d06('0x45')]({'where':{'id':_0x43ebc7['params']['id'],'UserId':null}})[_0x8d06('0x25')](handleEntityNotFound(_0x5624bb,null))[_0x8d06('0x25')](saveUpdates(_0x43ebc7[_0x8d06('0x48')],null))[_0x8d06('0x25')](function(_0x342a9b){if(_0x342a9b){_0x4d6a29['message']=_0x342a9b[_0x8d06('0x68')]({'plain':!![]});return db['MailInteraction']['find']({'where':{'id':_0x342a9b[_0x8d06('0x69')]}});}return null;})['then'](handleEntityNotFound(_0x5624bb,null))[_0x8d06('0x25')](function(_0x3c112e){if(_0x3c112e){return _0x3c112e[_0x8d06('0x24')]({'UserId':_0x43ebc7[_0x8d06('0x48')][_0x8d06('0x66')],'read1stAt':_['isNil'](_0x3c112e[_0x8d06('0x6a')])?moment()[_0x8d06('0x63')](_0x8d06('0x6b')):undefined});}return null;})['then'](function(_0x4e4d97){if(_0x4e4d97){_0x4d6a29[_0x8d06('0x6c')]=_0x4e4d97[_0x8d06('0x68')]({'plain':!![]});interaction_log['info'](_0x8d06('0x6d'),_0x43ebc7[_0x8d06('0x67')]['id'],_0x43ebc7[_0x8d06('0x67')][_0x8d06('0x29')],_0x43ebc7[_0x8d06('0x67')][_0x8d06('0x6e')],_0x4d6a29[_0x8d06('0x6c')]['id'],_0x43ebc7[_0x8d06('0x48')]?JSON['stringify'](_0x43ebc7[_0x8d06('0x48')]):'null');return respondWithRpcPromise(_0x8d06('0x6f'),_0x8d06('0x70'),_0x4d6a29);}return null;})[_0x8d06('0x25')](function(_0x3feaad){var _0x344e84='SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20'+_0x3feaad[_0x8d06('0x1b')]['ContactId'];return db[_0x8d06('0x71')][_0x8d06('0x30')](_0x344e84,{'type':db[_0x8d06('0x72')]['QueryTypes']['SELECT'],'raw':!![]})[_0x8d06('0x25')](function(_0x407bfa){return _0x407bfa;});})['then'](function(_0x2b6a94){if(_0x2b6a94){_0x4d6a29[_0x8d06('0x1b')][_0x8d06('0x73')]=_0x2b6a94[0x0];if(!_0x43ebc7['body'][_0x8d06('0x66')])return;return db[_0x8d06('0x74')][_0x8d06('0x45')]({'where':{'id':_0x43ebc7['body']['UserId'],'role':'agent'},'attributes':['id','name',_0x8d06('0x75'),_0x8d06('0x76'),_0x8d06('0x77')],'raw':!![]});}return null;})['then'](function(_0x552efb){if(!_0x552efb)return null;_0x4d6a29[_0x8d06('0x1b')][_0x8d06('0x78')]=_0x552efb;return _0x4d6a29;})['then'](function(_0x17d605){if(_0x17d605){if(_0x43ebc7['body'][_0x8d06('0x79')]){_0x4d6a29[_0x8d06('0x1b')][_0x8d06('0x7a')]=util[_0x8d06('0x63')](_0x8d06('0x7b'),_0x43ebc7['user']['name']);_0x4d6a29[_0x8d06('0x1b')][_0x8d06('0x7c')]=_0x4d6a29[_0x8d06('0x7c')];_0x4d6a29[_0x8d06('0x1b')][_0x8d06('0x7d')]=_0x4d6a29[_0x8d06('0x7c')];_0x4d6a29[_0x8d06('0x1b')]['event']=_0x8d06('0x64');_0x4d6a29[_0x8d06('0x1b')][_0x8d06('0x48')]=htmlToText[_0x8d06('0x7e')](_0x4d6a29[_0x8d06('0x1b')][_0x8d06('0x48')]);return respondWithRpcPromise(_0x8d06('0x7f'),_0x8d06('0x7f'),{'event':_0x8d06('0x80'),'message':_0x4d6a29[_0x8d06('0x1b')]},client9002)['then'](function(){return _0x4d6a29;});}return _0x4d6a29;}return null;})[_0x8d06('0x25')](respondWithResult(_0x5624bb,null))[_0x8d06('0x1d')](handleError(_0x5624bb,null));};exports[_0x8d06('0x81')]=function(_0x27238a,_0x4d9dd5){var _0xc0b839={'agent':{},'channel':_0x8d06('0x82')};if(_0x27238a['body']['id']){delete _0x27238a[_0x8d06('0x48')]['id'];}_0x27238a[_0x8d06('0x48')][_0x8d06('0x66')]=_0x27238a['body'][_0x8d06('0x66')]||_0x27238a[_0x8d06('0x67')]['id'];_0xc0b839[_0x8d06('0x78')]['id']=_0x27238a[_0x8d06('0x48')]['UserId'];return db[_0x8d06('0x2c')][_0x8d06('0x45')]({'where':{'id':_0x27238a['params']['id'],'UserId':null}})['then'](handleEntityNotFound(_0x4d9dd5,null))['then'](function(_0x29e98c){if(_0x29e98c){_0xc0b839[_0x8d06('0x1b')]=_0x29e98c['get']({'plain':!![]});return db[_0x8d06('0x83')][_0x8d06('0x45')]({'where':{'id':_0x29e98c['MailInteractionId']}});}return null;})[_0x8d06('0x25')](handleEntityNotFound(_0x4d9dd5,null))['then'](function(_0x5b2e43){if(_0x5b2e43){_0xc0b839[_0x8d06('0x6c')]=_0x5b2e43[_0x8d06('0x68')]({'plain':!![]});interaction_log[_0x8d06('0x14')](_0x8d06('0x84'),_0x27238a[_0x8d06('0x67')]['id'],_0x27238a[_0x8d06('0x67')][_0x8d06('0x29')],_0x27238a[_0x8d06('0x67')][_0x8d06('0x6e')],_0xc0b839[_0x8d06('0x6c')]['id'],_0x27238a[_0x8d06('0x48')]?JSON[_0x8d06('0x18')](_0x27238a[_0x8d06('0x48')]):_0x8d06('0x85'));return respondWithRpcPromise(_0x8d06('0x86'),_0x8d06('0x87'),_0xc0b839);}return null;})['then'](function(_0x2b0a9b){var _0x2eac10=_0x8d06('0x88')+_0x2b0a9b[_0x8d06('0x1b')][_0x8d06('0x89')];return db[_0x8d06('0x71')][_0x8d06('0x30')](_0x2eac10,{'type':db[_0x8d06('0x72')]['QueryTypes'][_0x8d06('0x8a')],'raw':!![]})[_0x8d06('0x25')](function(_0x42702f){return _0x42702f;});})[_0x8d06('0x25')](function(_0x4dea38){if(_0x4dea38){_0xc0b839[_0x8d06('0x1b')][_0x8d06('0x73')]=_0x4dea38[0x0];if(!_0x27238a['body'][_0x8d06('0x66')])return;return db['User'][_0x8d06('0x45')]({'where':{'id':_0x27238a['body']['UserId'],'role':_0x8d06('0x78')},'attributes':['id',_0x8d06('0x29'),_0x8d06('0x75'),'email','internal'],'raw':!![]});}return null;})[_0x8d06('0x25')](function(_0xaac528){if(!_0xaac528)return null;_0xc0b839[_0x8d06('0x1b')]['agent']=_0xaac528;return _0xc0b839;})[_0x8d06('0x25')](function(_0x3054f3){if(_0x3054f3){_0x3054f3[_0x8d06('0x1b')]['interface']=util[_0x8d06('0x63')](_0x8d06('0x7b'),_0x27238a[_0x8d06('0x67')]['name']);_0x3054f3['message']['channel']=_0xc0b839[_0x8d06('0x7c')];_0x3054f3[_0x8d06('0x1b')][_0x8d06('0x7d')]=_0xc0b839[_0x8d06('0x7c')];_0x3054f3[_0x8d06('0x1b')][_0x8d06('0x8b')]=_0x8d06('0x81');_0x3054f3[_0x8d06('0x1b')][_0x8d06('0x48')]=htmlToText[_0x8d06('0x7e')](_0xc0b839[_0x8d06('0x1b')][_0x8d06('0x48')]);respondWithRpcPromise('EventManager',_0x8d06('0x7f'),{'event':_0x8d06('0x8c'),'message':_0x3054f3[_0x8d06('0x1b')]},client9002);return _0xc0b839;}return null;})['then'](respondWithResult(_0x4d9dd5,null))['catch'](handleError(_0x4d9dd5,null));};exports['download']=function(_0x470143,_0x400291){var _0x77162b=moment()['unix']()[_0x8d06('0x8d')]();var _0x1f9c66=path[_0x8d06('0x57')](config[_0x8d06('0x58')],_0x8d06('0x8e'),_0x8d06('0x8f'),_0x8d06('0x90'));var _0x52e2df=path[_0x8d06('0x57')](config[_0x8d06('0x58')],_0x8d06('0x8e'),_0x8d06('0x8f'),_0x8d06('0x56'));var _0x24e42d=util[_0x8d06('0x63')](_0x8d06('0x91'),_0x77162b);return db[_0x8d06('0x2c')]['find']({'where':{'id':_0x470143['params']['id']},'attributes':['id',_0x8d06('0x48'),_0x8d06('0x92'),'to','cc','bcc','subject',_0x8d06('0x93')],'include':_0x470143[_0x8d06('0x30')][_0x8d06('0x56')]?[{'model':db[_0x8d06('0x94')],'as':'Attachments'}]:undefined})[_0x8d06('0x25')](handleEntityNotFound(_0x400291,null))[_0x8d06('0x25')](function(_0x5f30c5){if(_0x5f30c5){var _0x54b5ef=_0x5f30c5;var _0x40963f={'from':_0x54b5ef[_0x8d06('0x92')],'to':_0x54b5ef['to'],'subject':_0x54b5ef['subject'],'html':htmlEntities[_0x8d06('0x95')](_0x54b5ef[_0x8d06('0x48')]),'headers':{'Date':moment(_0x54b5ef[_0x8d06('0x93')])['format'](_0x8d06('0x96'))},'attachments':[]};if(_0x5f30c5['cc']){_0x40963f[_0x8d06('0x97')]['Cc']=_0x5f30c5['cc'];}if(_0x5f30c5[_0x8d06('0x98')]){_0x40963f[_0x8d06('0x97')]['Bcc']=_0x5f30c5[_0x8d06('0x98')];}return new BPromise(function(_0x2b163c,_0x3836d5){if(_0x5f30c5['Attachments']){for(var _0xbe4f81=0x0;_0xbe4f81<_0x5f30c5['Attachments']['length'];_0xbe4f81++){var _0x5a885a=_0x5f30c5[_0x8d06('0x99')][_0xbe4f81];var _0x33c3fb=path[_0x8d06('0x57')](_0x52e2df,_0x5a885a[_0x8d06('0x5a')]);if(fs[_0x8d06('0x9a')](_0x33c3fb)){_0x40963f[_0x8d06('0x56')][_0x8d06('0x9b')]({'name':_0x5a885a[_0x8d06('0x29')],'contentType':_0x5a885a[_0x8d06('0x3e')],'data':fs['readFileSync'](_0x33c3fb)});}}}emlformat[_0x8d06('0x9c')](_0x40963f,function(_0x4ce0fc,_0x3a7795){if(_0x4ce0fc)return _0x3836d5(_0x4ce0fc);fs[_0x8d06('0x9d')](path[_0x8d06('0x57')](_0x1f9c66,_0x24e42d),_0x3a7795);return _0x2b163c(_0x3a7795);});});}})['then'](function(_0x2539cd){if(_0x2539cd){return _0x400291['download'](path[_0x8d06('0x57')](_0x1f9c66,_0x24e42d),_0x24e42d,function(_0x3d711b){if(!_0x3d711b)fs['unlinkSync'](path[_0x8d06('0x57')](_0x1f9c66,_0x24e42d));});}})[_0x8d06('0x1d')](handleError(_0x400291,null));};
\ No newline at end of file