Built motion from commit 0900f080.|2.5.45
[motion2.git] / server / api / mailMessage / mailMessage.controller.js
index a6cc7cf..85b079c 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x2074=['message','info','request\x20sent','result','status','json','undefined','limit','count','offset','set','Content-Range','update','destroy','end','sendStatus','name','index','map','MailMessage','fieldName','type','key','query','filters','model','attributes','fields','length','nolimit','order','sort','pick','where','merge','VIRTUAL','filter','options','include','findAll','rows','catch','show','params','keys','rawAttributes','intersection','includeAll','find','body','describe','create','direction','out','secret','MailAccount','findOne','MailAccountId','CmList','List','Contacts','updatedAt','DESC','MailServerOut','Smtp','isNil','service','host','port','secure','authentication','auth','user','pass','attachments','join','root','server/files/attachments','ListId','List\x20not\x20found','SendMail','sendMail','messageId','format','accept','mail','read','readAt','YYYY-MM-DD\x20HH:mm:ss','UserId','agent','get','MailInteractionId','interaction','AcceptMessage','acceptMessage','SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20','sequelize','contact','User','email','internal','manual','interface','SIP/%s','motionChannel','channel','event','fromString','EventManager','acceptmessage','reject','null','rejectMessage','ContactId','Sequelize','QueryTypes','fullname','rejectmessage','download','unix','toString','server','files','message-%s.eml','from','subject','createdAt','Attachments','bcc','Bcc','basename','existsSync','push','readFileSync','build','writeFileSync','moment','bluebird','util','lodash','html-to-text','../../config/logger','mail-interactions','../../mysqldb','redis','defaults','localhost','socket.io-emitter','./mailMessage.socket','jayson/promise','http','client','request','then','MailMessage,\x20%s,\x20%s','MailMessage,\x20%s,\x20%s,\x20%s','stringify','error','code'];(function(_0x3dd15e,_0x1f0015){var _0x231fd0=function(_0x4f680a){while(--_0x4f680a){_0x3dd15e['push'](_0x3dd15e['shift']());}};_0x231fd0(++_0x1f0015);}(_0x2074,0x129));var _0x4207=function(_0x57b54c,_0x54ce0d){_0x57b54c=_0x57b54c-0x0;var _0x59cc19=_0x2074[_0x57b54c];return _0x59cc19;};'use strict';var emlformat=require('eml-format');var moment=require(_0x4207('0x0'));var BPromise=require(_0x4207('0x1'));var util=require(_0x4207('0x2'));var path=require('path');var fs=require('fs');var _=require(_0x4207('0x3'));var Redis=require('ioredis');var htmlToText=require(_0x4207('0x4'));var qs=require('../../components/parsers/qs');var logger=require(_0x4207('0x5'))('api');var interaction_log=require('../../config/logger')(_0x4207('0x6'));var config=require('../../config/environment');var db=require(_0x4207('0x7'))['db'];config[_0x4207('0x8')]=_[_0x4207('0x9')](config['redis'],{'host':_0x4207('0xa'),'port':0x18eb});var socket=require(_0x4207('0xb'))(new Redis(config[_0x4207('0x8')]));require(_0x4207('0xc'))['register'](socket);var jayson=require(_0x4207('0xd'));var client=jayson['client'][_0x4207('0xe')]({'port':0x232c});var client9003=jayson[_0x4207('0xf')][_0x4207('0xe')]({'port':0x232b});var client9002=jayson[_0x4207('0xf')][_0x4207('0xe')]({'port':0x232a});function respondWithRpcPromise(_0x4f1098,_0x44c523,_0x4b7956,_0x69d2d8){return new BPromise(function(_0x3f413c,_0x4fd5c7){var _0x4e4e5b=_0x69d2d8||client;return _0x4e4e5b[_0x4207('0x10')](_0x4f1098,_0x4b7956)[_0x4207('0x11')](function(_0xff0ffe){logger['info'](_0x4207('0x12'),_0x44c523,'request\x20sent');logger['debug'](_0x4207('0x13'),_0x44c523,'request\x20sent',JSON[_0x4207('0x14')](_0xff0ffe));if(_0xff0ffe[_0x4207('0x15')]){if(_0xff0ffe[_0x4207('0x15')][_0x4207('0x16')]===0x1f4){logger[_0x4207('0x15')]('MailMessage,\x20%s,\x20%s',_0x44c523,_0xff0ffe[_0x4207('0x15')][_0x4207('0x17')]);return _0x4fd5c7(_0xff0ffe[_0x4207('0x15')][_0x4207('0x17')]);}logger[_0x4207('0x15')](_0x4207('0x12'),_0x44c523,_0xff0ffe['error'][_0x4207('0x17')]);return _0x3f413c(_0xff0ffe[_0x4207('0x15')][_0x4207('0x17')]);}else{logger[_0x4207('0x18')](_0x4207('0x12'),_0x44c523,_0x4207('0x19'));_0x3f413c(_0xff0ffe[_0x4207('0x1a')]['message']);}})['catch'](function(_0x4dec05){logger[_0x4207('0x15')]('MailMessage,\x20%s,\x20%s',_0x44c523,_0x4dec05);_0x4fd5c7(_0x4dec05);});});}function respondWithResult(_0x3e9661,_0x269b27){_0x269b27=_0x269b27||0xc8;return function(_0x2e5fb0){if(_0x2e5fb0){return _0x3e9661[_0x4207('0x1b')](_0x269b27)[_0x4207('0x1c')](_0x2e5fb0);}};}function respondWithFilteredResult(_0x5693ca,_0x28ded8){return function(_0x3a66c8){if(_0x3a66c8){var _0x4ec9cd=typeof _0x28ded8['offset']===_0x4207('0x1d')&&typeof _0x28ded8[_0x4207('0x1e')]===_0x4207('0x1d');var _0x3da74e=_0x3a66c8[_0x4207('0x1f')];var _0x1fd43e=_0x4ec9cd?0x0:_0x28ded8[_0x4207('0x20')];var _0x2d2b4d=_0x4ec9cd?_0x3a66c8[_0x4207('0x1f')]:_0x28ded8[_0x4207('0x20')]+_0x28ded8[_0x4207('0x1e')];var _0x53158f;if(_0x2d2b4d>=_0x3da74e){_0x2d2b4d=_0x3da74e;_0x53158f=0xc8;}else{_0x53158f=0xce;}_0x5693ca['status'](_0x53158f);return _0x5693ca[_0x4207('0x21')](_0x4207('0x22'),_0x1fd43e+'-'+_0x2d2b4d+'/'+_0x3da74e)[_0x4207('0x1c')](_0x3a66c8);}return null;};}function saveUpdates(_0x537f9e){return function(_0x39bd53){if(_0x39bd53){return _0x39bd53[_0x4207('0x23')](_0x537f9e)[_0x4207('0x11')](function(_0x3aa807){return _0x3aa807;});}return null;};}function removeEntity(_0x1eae61){return function(_0x944abf){if(_0x944abf){return _0x944abf[_0x4207('0x24')]()[_0x4207('0x11')](function(){_0x1eae61[_0x4207('0x1b')](0xcc)[_0x4207('0x25')]();});}};}function handleEntityNotFound(_0x445d8f){return function(_0x9c0f3f){if(!_0x9c0f3f){_0x445d8f[_0x4207('0x26')](0x194);}return _0x9c0f3f;};}function handleError(_0x4e4866,_0x4d988d){_0x4d988d=_0x4d988d||0x1f4;return function(_0x3b4ee1){logger['error'](_0x3b4ee1['stack']);if(_0x3b4ee1[_0x4207('0x27')]){delete _0x3b4ee1['name'];}_0x4e4866[_0x4207('0x1b')](_0x4d988d)['send'](_0x3b4ee1);};}exports[_0x4207('0x28')]=function(_0x3df0c9,_0x7b48b7){var _0x5c849b={},_0x239f96={},_0x1d8d46={'count':0x0,'rows':[]};var _0x47634e=_[_0x4207('0x29')](db[_0x4207('0x2a')]['rawAttributes'],function(_0x1bf11c){return{'name':_0x1bf11c[_0x4207('0x2b')],'type':_0x1bf11c[_0x4207('0x2c')][_0x4207('0x2d')]};});_0x239f96['model']=_[_0x4207('0x29')](_0x47634e,_0x4207('0x27'));_0x239f96[_0x4207('0x2e')]=_['keys'](_0x3df0c9[_0x4207('0x2e')]);_0x239f96[_0x4207('0x2f')]=_['intersection'](_0x239f96[_0x4207('0x30')],_0x239f96[_0x4207('0x2e')]);_0x5c849b[_0x4207('0x31')]=_['intersection'](_0x239f96[_0x4207('0x30')],qs['fields'](_0x3df0c9[_0x4207('0x2e')][_0x4207('0x32')]));_0x5c849b[_0x4207('0x31')]=_0x5c849b[_0x4207('0x31')][_0x4207('0x33')]?_0x5c849b[_0x4207('0x31')]:_0x239f96[_0x4207('0x30')];if(!_0x3df0c9[_0x4207('0x2e')]['hasOwnProperty'](_0x4207('0x34'))){_0x5c849b['limit']=qs[_0x4207('0x1e')](_0x3df0c9[_0x4207('0x2e')][_0x4207('0x1e')]);_0x5c849b[_0x4207('0x20')]=qs[_0x4207('0x20')](_0x3df0c9[_0x4207('0x2e')][_0x4207('0x20')]);}_0x5c849b[_0x4207('0x35')]=qs['sort'](_0x3df0c9[_0x4207('0x2e')][_0x4207('0x36')]);_0x5c849b['where']=qs[_0x4207('0x2f')](_[_0x4207('0x37')](_0x3df0c9[_0x4207('0x2e')],_0x239f96[_0x4207('0x2f')]),_0x47634e);if(_0x3df0c9[_0x4207('0x2e')]['filter']){_0x5c849b[_0x4207('0x38')]=_[_0x4207('0x39')](_0x5c849b[_0x4207('0x38')],{'$or':_[_0x4207('0x29')](_0x47634e,function(_0x696d3a){if(_0x696d3a[_0x4207('0x2c')]!==_0x4207('0x3a')){var _0x2850cb={};_0x2850cb[_0x696d3a[_0x4207('0x27')]]={'$like':'%'+_0x3df0c9[_0x4207('0x2e')][_0x4207('0x3b')]+'%'};return _0x2850cb;}})});}_0x5c849b=_[_0x4207('0x39')]({},_0x5c849b,_0x3df0c9[_0x4207('0x3c')]);var _0x4bba8e={'where':_0x5c849b[_0x4207('0x38')]};return db['MailMessage'][_0x4207('0x1f')](_0x4bba8e)['then'](function(_0x581178){_0x1d8d46[_0x4207('0x1f')]=_0x581178;if(_0x3df0c9[_0x4207('0x2e')]['includeAll']){_0x5c849b[_0x4207('0x3d')]=[{'all':!![]}];}return db['MailMessage'][_0x4207('0x3e')](_0x5c849b);})[_0x4207('0x11')](function(_0x118f0e){_0x1d8d46[_0x4207('0x3f')]=_0x118f0e;return _0x1d8d46;})[_0x4207('0x11')](respondWithFilteredResult(_0x7b48b7,_0x5c849b))[_0x4207('0x40')](handleError(_0x7b48b7,null));};exports[_0x4207('0x41')]=function(_0x13e2c6,_0xf5caaa){var _0x4af8c6={'raw':!![],'where':{'id':_0x13e2c6[_0x4207('0x42')]['id']}},_0x4232b4={};_0x4232b4[_0x4207('0x30')]=_[_0x4207('0x43')](db[_0x4207('0x2a')][_0x4207('0x44')]);_0x4232b4[_0x4207('0x2e')]=_[_0x4207('0x43')](_0x13e2c6['query']);_0x4232b4[_0x4207('0x2f')]=_[_0x4207('0x45')](_0x4232b4[_0x4207('0x30')],_0x4232b4['query']);_0x4af8c6['attributes']=_['intersection'](_0x4232b4[_0x4207('0x30')],qs[_0x4207('0x32')](_0x13e2c6[_0x4207('0x2e')][_0x4207('0x32')]));_0x4af8c6[_0x4207('0x31')]=_0x4af8c6[_0x4207('0x31')][_0x4207('0x33')]?_0x4af8c6[_0x4207('0x31')]:_0x4232b4[_0x4207('0x30')];if(_0x13e2c6[_0x4207('0x2e')][_0x4207('0x46')]){_0x4af8c6['include']=[{'all':!![]}];}_0x4af8c6=_[_0x4207('0x39')]({},_0x4af8c6,_0x13e2c6[_0x4207('0x3c')]);return db[_0x4207('0x2a')][_0x4207('0x47')](_0x4af8c6)[_0x4207('0x11')](handleEntityNotFound(_0xf5caaa,null))[_0x4207('0x11')](respondWithResult(_0xf5caaa,null))['catch'](handleError(_0xf5caaa,null));};exports[_0x4207('0x23')]=function(_0x4b2bf1,_0x1e6853){if(_0x4b2bf1[_0x4207('0x48')]['id']){delete _0x4b2bf1[_0x4207('0x48')]['id'];}return db[_0x4207('0x2a')][_0x4207('0x47')]({'where':{'id':_0x4b2bf1[_0x4207('0x42')]['id']}})[_0x4207('0x11')](handleEntityNotFound(_0x1e6853,null))['then'](saveUpdates(_0x4b2bf1[_0x4207('0x48')],null))[_0x4207('0x11')](respondWithResult(_0x1e6853,null))['catch'](handleError(_0x1e6853,null));};exports[_0x4207('0x24')]=function(_0x11845f,_0x4aa269){return db[_0x4207('0x2a')]['find']({'where':{'id':_0x11845f[_0x4207('0x42')]['id']}})['then'](handleEntityNotFound(_0x4aa269,null))[_0x4207('0x11')](removeEntity(_0x4aa269,null))[_0x4207('0x40')](handleError(_0x4aa269,null));};exports[_0x4207('0x49')]=function(_0x27e41d,_0x5b3bd9){return db['MailMessage'][_0x4207('0x49')]()['then'](respondWithResult(_0x5b3bd9,null))[_0x4207('0x40')](handleError(_0x5b3bd9,null));};exports[_0x4207('0x4a')]=function(_0x3c0f6a,_0xc7cfe6){return db[_0x4207('0x2a')][_0x4207('0x4a')](_0x3c0f6a[_0x4207('0x48')])['then'](function(_0x504205){if(_0x504205){if(_0x504205[_0x4207('0x4b')]===_0x4207('0x4c')&&!_0x504205[_0x4207('0x4d')]){var _0x1bce5f,_0x10392c,_0x41997e;if(_0x3c0f6a[_0x4207('0x48')]['to']){_0x10392c=_0x3c0f6a[_0x4207('0x48')]['to']['split'](',')[0x0];}return db[_0x4207('0x4e')][_0x4207('0x4f')]({'where':{'id':_0x504205[_0x4207('0x50')]},'include':[{'model':db[_0x4207('0x51')],'as':_0x4207('0x52'),'include':[{'model':db['CmContact'],'as':_0x4207('0x53'),'where':{'email':_0x10392c},'limit':0x1,'order':[[_0x4207('0x54'),_0x4207('0x55')]]}]},{'model':db[_0x4207('0x56')],'as':_0x4207('0x57'),'raw':!![]}]})['then'](function(_0x299f09){_0x1bce5f=_0x299f09;if(_0x1bce5f&&_0x1bce5f[_0x4207('0x57')]){var _0x27efe4={'tls':{'rejectUnauthorized':![]}};if(_[_0x4207('0x58')](_0x1bce5f['Smtp'][_0x4207('0x59')])){_0x27efe4[_0x4207('0x5a')]=_0x1bce5f['Smtp'][_0x4207('0x5a')];_0x27efe4['port']=_0x1bce5f[_0x4207('0x57')][_0x4207('0x5b')];_0x27efe4[_0x4207('0x5c')]=_0x1bce5f[_0x4207('0x57')][_0x4207('0x5c')];if(_0x1bce5f['Smtp'][_0x4207('0x5d')]){_0x27efe4[_0x4207('0x5e')]={'user':_0x1bce5f[_0x4207('0x57')]['user'],'pass':_0x1bce5f[_0x4207('0x57')]['pass']};}}else{_0x27efe4['service']=_0x1bce5f[_0x4207('0x57')][_0x4207('0x59')];_0x27efe4[_0x4207('0x5e')]={'user':_0x1bce5f['Smtp'][_0x4207('0x5f')],'pass':_0x1bce5f[_0x4207('0x57')][_0x4207('0x60')]};_0x27efe4[_0x4207('0x5c')]=_0x1bce5f['Smtp']['secure'];}if(_0x3c0f6a[_0x4207('0x48')][_0x4207('0x61')]&&_0x3c0f6a[_0x4207('0x48')][_0x4207('0x61')]['length']){for(var _0x4230a1=0x0;_0x4230a1<_0x3c0f6a[_0x4207('0x48')][_0x4207('0x61')]['length'];_0x4230a1+=0x1){_0x3c0f6a[_0x4207('0x48')]['attachments'][_0x4230a1]={'filename':_0x3c0f6a[_0x4207('0x48')]['attachments'][_0x4230a1][_0x4207('0x27')],'path':path[_0x4207('0x62')](config[_0x4207('0x63')],_0x4207('0x64'),_0x3c0f6a[_0x4207('0x48')]['attachments'][_0x4230a1]['basename'])};}}_0x41997e={'account':_0x27efe4,'message':_0x3c0f6a[_0x4207('0x48')]};return;}})[_0x4207('0x11')](function(){if(_0x1bce5f[_0x4207('0x52')]){if(_0x1bce5f[_0x4207('0x52')]['Contacts'][_0x4207('0x33')]){return _0x1bce5f[_0x4207('0x52')][_0x4207('0x53')][0x0];}else{return db['CmContact'][_0x4207('0x4a')](_['defaults'](_0x3c0f6a[_0x4207('0x48')],{'firstName':_0x3c0f6a[_0x4207('0x48')]['to'],'email':_0x3c0f6a[_0x4207('0x48')]['to'],'phone':_0x3c0f6a[_0x4207('0x48')]['to'],'ListId':_0x1bce5f[_0x4207('0x65')]}));}}else{throw new Error(_0x4207('0x66'));}})['then'](function(){if(_0x41997e){return respondWithRpcPromise(_0x4207('0x67'),_0x4207('0x68'),_0x41997e,client9003)['then'](function(_0x2f8023){return _0x504205['update']({'read':!![],'messageId':_0x2f8023[_0x4207('0x69')],'sentAt':moment()[_0x4207('0x6a')]('YYYY-MM-DD\x20HH:mm:ss')});})[_0x4207('0x40')](function(_0x793270){logger[_0x4207('0x15')]('%s',JSON[_0x4207('0x14')](_0x793270));return _0x504205;});}return _0x504205;});}return _0x504205;}})[_0x4207('0x11')](respondWithResult(_0xc7cfe6,0xc9))[_0x4207('0x40')](handleError(_0xc7cfe6,null));};exports[_0x4207('0x6b')]=function(_0x5619e6,_0x131817){var _0x3d121a={'agent':{},'channel':_0x4207('0x6c')};if(_0x5619e6[_0x4207('0x48')]['id']){delete _0x5619e6[_0x4207('0x48')]['id'];}_0x5619e6[_0x4207('0x48')][_0x4207('0x6d')]=!![];_0x5619e6[_0x4207('0x48')][_0x4207('0x6e')]=moment()['format'](_0x4207('0x6f'));_0x5619e6[_0x4207('0x48')][_0x4207('0x70')]=_0x5619e6[_0x4207('0x48')][_0x4207('0x70')]||_0x5619e6[_0x4207('0x5f')]['id'];_0x3d121a[_0x4207('0x71')]['id']=_0x5619e6[_0x4207('0x48')][_0x4207('0x70')];return db[_0x4207('0x2a')][_0x4207('0x47')]({'where':{'id':_0x5619e6['params']['id'],'UserId':null}})[_0x4207('0x11')](handleEntityNotFound(_0x131817,null))[_0x4207('0x11')](saveUpdates(_0x5619e6[_0x4207('0x48')],null))['then'](function(_0x3b5c0e){if(_0x3b5c0e){_0x3d121a['message']=_0x3b5c0e[_0x4207('0x72')]({'plain':!![]});return db['MailInteraction']['find']({'where':{'id':_0x3b5c0e[_0x4207('0x73')]}});}return null;})['then'](handleEntityNotFound(_0x131817,null))[_0x4207('0x11')](function(_0x12ed5c){if(_0x12ed5c){return _0x12ed5c[_0x4207('0x23')]({'UserId':_0x5619e6['body'][_0x4207('0x70')],'read1stAt':_[_0x4207('0x58')](_0x12ed5c['read1stAt'])?moment()[_0x4207('0x6a')](_0x4207('0x6f')):undefined});}return null;})['then'](function(_0x33a404){if(_0x33a404){_0x3d121a[_0x4207('0x74')]=_0x33a404[_0x4207('0x72')]({'plain':!![]});interaction_log[_0x4207('0x18')]('[MAILMESSAGE:ACCEPT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s',_0x5619e6[_0x4207('0x5f')]['id'],_0x5619e6[_0x4207('0x5f')][_0x4207('0x27')],_0x5619e6[_0x4207('0x5f')]['role'],_0x3d121a['interaction']['id'],_0x5619e6[_0x4207('0x48')]?JSON[_0x4207('0x14')](_0x5619e6[_0x4207('0x48')]):'null');return respondWithRpcPromise(_0x4207('0x75'),_0x4207('0x76'),_0x3d121a);}return null;})[_0x4207('0x11')](function(_0x32c570){var _0x366188=_0x4207('0x77')+_0x32c570[_0x4207('0x17')]['ContactId'];return db[_0x4207('0x78')]['query'](_0x366188,{'type':db['Sequelize']['QueryTypes']['SELECT'],'raw':!![]})[_0x4207('0x11')](function(_0x3f5f4e){return _0x3f5f4e;});})[_0x4207('0x11')](function(_0x54b4f4){if(_0x54b4f4){_0x3d121a[_0x4207('0x17')][_0x4207('0x79')]=_0x54b4f4[0x0];if(!_0x5619e6[_0x4207('0x48')][_0x4207('0x70')])return;return db[_0x4207('0x7a')][_0x4207('0x47')]({'where':{'id':_0x5619e6['body'][_0x4207('0x70')],'role':_0x4207('0x71')},'attributes':['id',_0x4207('0x27'),'fullname',_0x4207('0x7b'),_0x4207('0x7c')],'raw':!![]});}return null;})[_0x4207('0x11')](function(_0x2b3c1a){if(!_0x2b3c1a)return null;_0x3d121a[_0x4207('0x17')][_0x4207('0x71')]=_0x2b3c1a;return _0x3d121a;})[_0x4207('0x11')](function(_0x4305ea){if(_0x4305ea){if(_0x5619e6[_0x4207('0x48')][_0x4207('0x7d')]){_0x3d121a[_0x4207('0x17')][_0x4207('0x7e')]=util[_0x4207('0x6a')](_0x4207('0x7f'),_0x5619e6[_0x4207('0x5f')][_0x4207('0x27')]);_0x3d121a[_0x4207('0x17')]['channel']=_0x3d121a['channel'];_0x3d121a[_0x4207('0x17')][_0x4207('0x80')]=_0x3d121a[_0x4207('0x81')];_0x3d121a[_0x4207('0x17')][_0x4207('0x82')]=_0x4207('0x6b');_0x3d121a['message'][_0x4207('0x48')]=htmlToText[_0x4207('0x83')](_0x3d121a['message']['body']);return respondWithRpcPromise(_0x4207('0x84'),_0x4207('0x84'),{'event':_0x4207('0x85'),'message':_0x3d121a[_0x4207('0x17')]},client9002)[_0x4207('0x11')](function(){return _0x3d121a;});}return _0x3d121a;}return null;})['then'](respondWithResult(_0x131817,null))['catch'](handleError(_0x131817,null));};exports[_0x4207('0x86')]=function(_0x1c8c0c,_0xaef6d7){var _0x296f87={'agent':{},'channel':_0x4207('0x6c')};if(_0x1c8c0c[_0x4207('0x48')]['id']){delete _0x1c8c0c[_0x4207('0x48')]['id'];}_0x1c8c0c[_0x4207('0x48')]['UserId']=_0x1c8c0c[_0x4207('0x48')][_0x4207('0x70')]||_0x1c8c0c['user']['id'];_0x296f87[_0x4207('0x71')]['id']=_0x1c8c0c['body'][_0x4207('0x70')];return db[_0x4207('0x2a')]['find']({'where':{'id':_0x1c8c0c[_0x4207('0x42')]['id'],'UserId':null}})[_0x4207('0x11')](handleEntityNotFound(_0xaef6d7,null))['then'](function(_0x411f27){if(_0x411f27){_0x296f87[_0x4207('0x17')]=_0x411f27[_0x4207('0x72')]({'plain':!![]});return db['MailInteraction']['find']({'where':{'id':_0x411f27[_0x4207('0x73')]}});}return null;})[_0x4207('0x11')](handleEntityNotFound(_0xaef6d7,null))[_0x4207('0x11')](function(_0xd19903){if(_0xd19903){_0x296f87[_0x4207('0x74')]=_0xd19903[_0x4207('0x72')]({'plain':!![]});interaction_log['info']('[MAILMESSAGE:REJECT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s',_0x1c8c0c[_0x4207('0x5f')]['id'],_0x1c8c0c[_0x4207('0x5f')][_0x4207('0x27')],_0x1c8c0c[_0x4207('0x5f')]['role'],_0x296f87[_0x4207('0x74')]['id'],_0x1c8c0c[_0x4207('0x48')]?JSON[_0x4207('0x14')](_0x1c8c0c[_0x4207('0x48')]):_0x4207('0x87'));return respondWithRpcPromise('RejectMessage',_0x4207('0x88'),_0x296f87);}return null;})[_0x4207('0x11')](function(_0x317cc6){var _0x48da2f=_0x4207('0x77')+_0x317cc6[_0x4207('0x17')][_0x4207('0x89')];return db[_0x4207('0x78')]['query'](_0x48da2f,{'type':db[_0x4207('0x8a')][_0x4207('0x8b')]['SELECT'],'raw':!![]})[_0x4207('0x11')](function(_0x4af879){return _0x4af879;});})[_0x4207('0x11')](function(_0x4b4a28){if(_0x4b4a28){_0x296f87[_0x4207('0x17')][_0x4207('0x79')]=_0x4b4a28[0x0];if(!_0x1c8c0c[_0x4207('0x48')][_0x4207('0x70')])return;return db[_0x4207('0x7a')][_0x4207('0x47')]({'where':{'id':_0x1c8c0c[_0x4207('0x48')][_0x4207('0x70')],'role':'agent'},'attributes':['id',_0x4207('0x27'),_0x4207('0x8c'),_0x4207('0x7b'),_0x4207('0x7c')],'raw':!![]});}return null;})[_0x4207('0x11')](function(_0x3897bc){if(!_0x3897bc)return null;_0x296f87[_0x4207('0x17')][_0x4207('0x71')]=_0x3897bc;return _0x296f87;})['then'](function(_0x106fa7){if(_0x106fa7){_0x106fa7['message'][_0x4207('0x7e')]=util[_0x4207('0x6a')](_0x4207('0x7f'),_0x1c8c0c[_0x4207('0x5f')][_0x4207('0x27')]);_0x106fa7['message']['channel']=_0x296f87['channel'];_0x106fa7['message'][_0x4207('0x80')]=_0x296f87['channel'];_0x106fa7['message']['event']=_0x4207('0x86');_0x106fa7[_0x4207('0x17')]['body']=htmlToText['fromString'](_0x296f87[_0x4207('0x17')][_0x4207('0x48')]);respondWithRpcPromise('EventManager',_0x4207('0x84'),{'event':_0x4207('0x8d'),'message':_0x106fa7[_0x4207('0x17')]},client9002);return _0x296f87;}return null;})[_0x4207('0x11')](respondWithResult(_0xaef6d7,null))[_0x4207('0x40')](handleError(_0xaef6d7,null));};exports[_0x4207('0x8e')]=function(_0xeaafb3,_0x10a04d){var _0xe99ef8=moment()[_0x4207('0x8f')]()[_0x4207('0x90')]();var _0x266f73=path['join'](config['root'],_0x4207('0x91'),_0x4207('0x92'),'tmp');var _0x2c99f3=path['join'](config[_0x4207('0x63')],_0x4207('0x91'),'files',_0x4207('0x61'));var _0x2d19cd=util[_0x4207('0x6a')](_0x4207('0x93'),_0xe99ef8);return db[_0x4207('0x2a')][_0x4207('0x47')]({'where':{'id':_0xeaafb3['params']['id']},'attributes':['id',_0x4207('0x48'),_0x4207('0x94'),'to','cc','bcc',_0x4207('0x95'),_0x4207('0x96')],'include':_0xeaafb3[_0x4207('0x2e')][_0x4207('0x61')]?[{'model':db['Attachment'],'as':_0x4207('0x97')}]:undefined})[_0x4207('0x11')](handleEntityNotFound(_0x10a04d,null))[_0x4207('0x11')](function(_0x1a1194){if(_0x1a1194){var _0x598668=_0x1a1194;var _0x3b186c={'from':_0x598668[_0x4207('0x94')],'to':_0x598668['to'],'subject':_0x598668[_0x4207('0x95')],'html':_0x598668[_0x4207('0x48')],'headers':{'Date':moment(_0x598668[_0x4207('0x96')])[_0x4207('0x6a')]('ddd,\x20DD\x20MMM\x20YYYY\x20HH:mm:ss\x20ZZ')},'attachments':[]};if(_0x1a1194['cc']){_0x3b186c['headers']['Cc']=_0x1a1194['cc'];}if(_0x1a1194[_0x4207('0x98')]){_0x3b186c['headers'][_0x4207('0x99')]=_0x1a1194['bcc'];}return new BPromise(function(_0x4eb38e,_0xea8ea2){if(_0x1a1194[_0x4207('0x97')]){for(var _0xdca567=0x0;_0xdca567<_0x1a1194[_0x4207('0x97')][_0x4207('0x33')];_0xdca567++){var _0x197a2f=_0x1a1194[_0x4207('0x97')][_0xdca567];var _0x525798=path['join'](_0x2c99f3,_0x197a2f[_0x4207('0x9a')]);if(fs[_0x4207('0x9b')](_0x525798)){_0x3b186c[_0x4207('0x61')][_0x4207('0x9c')]({'name':_0x197a2f[_0x4207('0x27')],'contentType':_0x197a2f['type'],'data':fs[_0x4207('0x9d')](_0x525798)});}}}emlformat[_0x4207('0x9e')](_0x3b186c,function(_0x52bd96,_0xe1e28b){if(_0x52bd96)return _0xea8ea2(_0x52bd96);fs[_0x4207('0x9f')](path['join'](_0x266f73,_0x2d19cd),_0xe1e28b);return _0x4eb38e(_0xe1e28b);});});}})[_0x4207('0x11')](function(_0x279458){if(_0x279458){return _0x10a04d[_0x4207('0x8e')](path[_0x4207('0x62')](_0x266f73,_0x2d19cd),_0x2d19cd,function(_0x7000e2){if(!_0x7000e2)fs['unlinkSync'](path[_0x4207('0x62')](_0x266f73,_0x2d19cd));});}})[_0x4207('0x40')](handleError(_0x10a04d,null));};
\ No newline at end of file
+var _0xd960=['ddd,\x20DD\x20MMM\x20YYYY\x20HH:mm:ss\x20ZZ','headers','Bcc','Attachments','readFileSync','build','unlinkSync','bluebird','util','path','lodash','ioredis','html-to-text','../../components/parsers/qs','../../config/logger','../../config/environment','../../mysqldb','redis','html-entities','jayson/promise','client','http','then','info','MailMessage,\x20%s,\x20%s','debug','request\x20sent','stringify','error','message','catch','status','json','limit','undefined','count','offset','Content-Range','update','destroy','end','sendStatus','stack','name','send','index','map','rawAttributes','fieldName','type','query','filters','model','attributes','length','nolimit','order','where','pick','merge','VIRTUAL','filter','options','MailMessage','includeAll','include','rows','show','params','keys','intersection','fields','find','body','describe','create','out','split','MailAccount','MailAccountId','CmList','List','CmContact','updatedAt','DESC','MailServerOut','Smtp','isNil','host','port','secure','user','pass','service','auth','attachments','join','server/files/attachments','basename','defaults','ListId','List\x20not\x20found','format','YYYY-MM-DD\x20HH:mm:ss','mail','read','UserId','MailInteractionId','interaction','get','[MAILMESSAGE:ACCEPT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','role','null','AcceptMessage','acceptMessage','ContactId','sequelize','Sequelize','QueryTypes','SELECT','contact','agent','fullname','email','interface','SIP/%s','channel','motionChannel','event','accept','EventManager','acceptmessage','reject','MailInteraction','[MAILMESSAGE:REJECT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','RejectMessage','rejectMessage','SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20','rejectmessage','download','unix','toString','server','files','tmp','root','message-%s.eml','from','bcc','subject','createdAt','Attachment','decode'];(function(_0x36e28b,_0x304625){var _0x15d532=function(_0x373c0d){while(--_0x373c0d){_0x36e28b['push'](_0x36e28b['shift']());}};_0x15d532(++_0x304625);}(_0xd960,0x139));var _0x0d96=function(_0x498a84,_0x4875f0){_0x498a84=_0x498a84-0x0;var _0x4e6796=_0xd960[_0x498a84];return _0x4e6796;};'use strict';var emlformat=require('eml-format');var moment=require('moment');var BPromise=require(_0x0d96('0x0'));var util=require(_0x0d96('0x1'));var path=require(_0x0d96('0x2'));var fs=require('fs');var _=require(_0x0d96('0x3'));var Redis=require(_0x0d96('0x4'));var htmlToText=require(_0x0d96('0x5'));var qs=require(_0x0d96('0x6'));var logger=require(_0x0d96('0x7'))('api');var interaction_log=require('../../config/logger')('mail-interactions');var config=require(_0x0d96('0x8'));var db=require(_0x0d96('0x9'))['db'];config[_0x0d96('0xa')]=_['defaults'](config[_0x0d96('0xa')],{'host':'localhost','port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0x0d96('0xa')]));var htmlEntities=require(_0x0d96('0xb'));require('./mailMessage.socket')['register'](socket);var jayson=require(_0x0d96('0xc'));var client=jayson[_0x0d96('0xd')][_0x0d96('0xe')]({'port':0x232c});var client9003=jayson[_0x0d96('0xd')][_0x0d96('0xe')]({'port':0x232b});var client9002=jayson[_0x0d96('0xd')][_0x0d96('0xe')]({'port':0x232a});function respondWithRpcPromise(_0x1256fc,_0x27bd65,_0x2e7e54,_0x569451){return new BPromise(function(_0x75e444,_0x452451){var _0x34e417=_0x569451||client;return _0x34e417['request'](_0x1256fc,_0x2e7e54)[_0x0d96('0xf')](function(_0x34d9c2){logger[_0x0d96('0x10')](_0x0d96('0x11'),_0x27bd65,'request\x20sent');logger[_0x0d96('0x12')]('MailMessage,\x20%s,\x20%s,\x20%s',_0x27bd65,_0x0d96('0x13'),JSON[_0x0d96('0x14')](_0x34d9c2));if(_0x34d9c2[_0x0d96('0x15')]){if(_0x34d9c2['error']['code']===0x1f4){logger[_0x0d96('0x15')]('MailMessage,\x20%s,\x20%s',_0x27bd65,_0x34d9c2['error']['message']);return _0x452451(_0x34d9c2[_0x0d96('0x15')][_0x0d96('0x16')]);}logger[_0x0d96('0x15')]('MailMessage,\x20%s,\x20%s',_0x27bd65,_0x34d9c2[_0x0d96('0x15')][_0x0d96('0x16')]);return _0x75e444(_0x34d9c2[_0x0d96('0x15')][_0x0d96('0x16')]);}else{logger[_0x0d96('0x10')](_0x0d96('0x11'),_0x27bd65,_0x0d96('0x13'));_0x75e444(_0x34d9c2['result'][_0x0d96('0x16')]);}})[_0x0d96('0x17')](function(_0x152fc1){logger[_0x0d96('0x15')](_0x0d96('0x11'),_0x27bd65,_0x152fc1);_0x452451(_0x152fc1);});});}function respondWithResult(_0x5c94e8,_0x398d5c){_0x398d5c=_0x398d5c||0xc8;return function(_0x28a665){if(_0x28a665){return _0x5c94e8[_0x0d96('0x18')](_0x398d5c)[_0x0d96('0x19')](_0x28a665);}};}function respondWithFilteredResult(_0x5985a3,_0x3b5edf){return function(_0xcc1d59){if(_0xcc1d59){var _0x1dba74=typeof _0x3b5edf['offset']==='undefined'&&typeof _0x3b5edf[_0x0d96('0x1a')]===_0x0d96('0x1b');var _0xd34c4=_0xcc1d59[_0x0d96('0x1c')];var _0x7c1663=_0x1dba74?0x0:_0x3b5edf['offset'];var _0x5bbf4c=_0x1dba74?_0xcc1d59[_0x0d96('0x1c')]:_0x3b5edf[_0x0d96('0x1d')]+_0x3b5edf['limit'];var _0x13d232;if(_0x5bbf4c>=_0xd34c4){_0x5bbf4c=_0xd34c4;_0x13d232=0xc8;}else{_0x13d232=0xce;}_0x5985a3[_0x0d96('0x18')](_0x13d232);return _0x5985a3['set'](_0x0d96('0x1e'),_0x7c1663+'-'+_0x5bbf4c+'/'+_0xd34c4)[_0x0d96('0x19')](_0xcc1d59);}return null;};}function saveUpdates(_0x366596){return function(_0x2b99e5){if(_0x2b99e5){return _0x2b99e5[_0x0d96('0x1f')](_0x366596)['then'](function(_0x7c9b1a){return _0x7c9b1a;});}return null;};}function removeEntity(_0x4ae09e){return function(_0x21cfb8){if(_0x21cfb8){return _0x21cfb8[_0x0d96('0x20')]()[_0x0d96('0xf')](function(){_0x4ae09e['status'](0xcc)[_0x0d96('0x21')]();});}};}function handleEntityNotFound(_0x20173d){return function(_0x5538d4){if(!_0x5538d4){_0x20173d[_0x0d96('0x22')](0x194);}return _0x5538d4;};}function handleError(_0x44bba7,_0x47898e){_0x47898e=_0x47898e||0x1f4;return function(_0x401d3d){logger['error'](_0x401d3d[_0x0d96('0x23')]);if(_0x401d3d['name']){delete _0x401d3d[_0x0d96('0x24')];}_0x44bba7[_0x0d96('0x18')](_0x47898e)[_0x0d96('0x25')](_0x401d3d);};}exports[_0x0d96('0x26')]=function(_0x27d1f9,_0x7ef479){var _0x2aa89e={},_0x3f75de={},_0x20fbe3={'count':0x0,'rows':[]};var _0x3f5d5a=_[_0x0d96('0x27')](db['MailMessage'][_0x0d96('0x28')],function(_0x2492f1){return{'name':_0x2492f1[_0x0d96('0x29')],'type':_0x2492f1[_0x0d96('0x2a')]['key']};});_0x3f75de['model']=_[_0x0d96('0x27')](_0x3f5d5a,_0x0d96('0x24'));_0x3f75de[_0x0d96('0x2b')]=_['keys'](_0x27d1f9[_0x0d96('0x2b')]);_0x3f75de[_0x0d96('0x2c')]=_['intersection'](_0x3f75de[_0x0d96('0x2d')],_0x3f75de[_0x0d96('0x2b')]);_0x2aa89e[_0x0d96('0x2e')]=_['intersection'](_0x3f75de[_0x0d96('0x2d')],qs['fields'](_0x27d1f9[_0x0d96('0x2b')]['fields']));_0x2aa89e[_0x0d96('0x2e')]=_0x2aa89e[_0x0d96('0x2e')][_0x0d96('0x2f')]?_0x2aa89e['attributes']:_0x3f75de['model'];if(!_0x27d1f9[_0x0d96('0x2b')]['hasOwnProperty'](_0x0d96('0x30'))){_0x2aa89e['limit']=qs[_0x0d96('0x1a')](_0x27d1f9[_0x0d96('0x2b')][_0x0d96('0x1a')]);_0x2aa89e[_0x0d96('0x1d')]=qs['offset'](_0x27d1f9[_0x0d96('0x2b')][_0x0d96('0x1d')]);}_0x2aa89e[_0x0d96('0x31')]=qs['sort'](_0x27d1f9[_0x0d96('0x2b')]['sort']);_0x2aa89e[_0x0d96('0x32')]=qs[_0x0d96('0x2c')](_[_0x0d96('0x33')](_0x27d1f9[_0x0d96('0x2b')],_0x3f75de[_0x0d96('0x2c')]),_0x3f5d5a);if(_0x27d1f9['query']['filter']){_0x2aa89e[_0x0d96('0x32')]=_[_0x0d96('0x34')](_0x2aa89e[_0x0d96('0x32')],{'$or':_[_0x0d96('0x27')](_0x3f5d5a,function(_0x56e603){if(_0x56e603[_0x0d96('0x2a')]!==_0x0d96('0x35')){var _0x1ecaec={};_0x1ecaec[_0x56e603[_0x0d96('0x24')]]={'$like':'%'+_0x27d1f9['query'][_0x0d96('0x36')]+'%'};return _0x1ecaec;}})});}_0x2aa89e=_[_0x0d96('0x34')]({},_0x2aa89e,_0x27d1f9[_0x0d96('0x37')]);var _0x15f77b={'where':_0x2aa89e[_0x0d96('0x32')]};return db[_0x0d96('0x38')][_0x0d96('0x1c')](_0x15f77b)[_0x0d96('0xf')](function(_0x3f1c99){_0x20fbe3[_0x0d96('0x1c')]=_0x3f1c99;if(_0x27d1f9[_0x0d96('0x2b')][_0x0d96('0x39')]){_0x2aa89e[_0x0d96('0x3a')]=[{'all':!![]}];}return db[_0x0d96('0x38')]['findAll'](_0x2aa89e);})[_0x0d96('0xf')](function(_0x5cb459){_0x20fbe3[_0x0d96('0x3b')]=_0x5cb459;return _0x20fbe3;})[_0x0d96('0xf')](respondWithFilteredResult(_0x7ef479,_0x2aa89e))[_0x0d96('0x17')](handleError(_0x7ef479,null));};exports[_0x0d96('0x3c')]=function(_0x6727d3,_0x5ca7f9){var _0x255cc3={'raw':!![],'where':{'id':_0x6727d3[_0x0d96('0x3d')]['id']}},_0x58c0ee={};_0x58c0ee[_0x0d96('0x2d')]=_[_0x0d96('0x3e')](db[_0x0d96('0x38')][_0x0d96('0x28')]);_0x58c0ee[_0x0d96('0x2b')]=_['keys'](_0x6727d3[_0x0d96('0x2b')]);_0x58c0ee[_0x0d96('0x2c')]=_['intersection'](_0x58c0ee['model'],_0x58c0ee['query']);_0x255cc3[_0x0d96('0x2e')]=_[_0x0d96('0x3f')](_0x58c0ee['model'],qs[_0x0d96('0x40')](_0x6727d3[_0x0d96('0x2b')][_0x0d96('0x40')]));_0x255cc3[_0x0d96('0x2e')]=_0x255cc3['attributes'][_0x0d96('0x2f')]?_0x255cc3[_0x0d96('0x2e')]:_0x58c0ee['model'];if(_0x6727d3[_0x0d96('0x2b')]['includeAll']){_0x255cc3[_0x0d96('0x3a')]=[{'all':!![]}];}_0x255cc3=_[_0x0d96('0x34')]({},_0x255cc3,_0x6727d3[_0x0d96('0x37')]);return db['MailMessage'][_0x0d96('0x41')](_0x255cc3)[_0x0d96('0xf')](handleEntityNotFound(_0x5ca7f9,null))[_0x0d96('0xf')](respondWithResult(_0x5ca7f9,null))[_0x0d96('0x17')](handleError(_0x5ca7f9,null));};exports['update']=function(_0x4209b3,_0x3ba2f6){if(_0x4209b3['body']['id']){delete _0x4209b3[_0x0d96('0x42')]['id'];}return db['MailMessage']['find']({'where':{'id':_0x4209b3[_0x0d96('0x3d')]['id']}})[_0x0d96('0xf')](handleEntityNotFound(_0x3ba2f6,null))['then'](saveUpdates(_0x4209b3[_0x0d96('0x42')],null))[_0x0d96('0xf')](respondWithResult(_0x3ba2f6,null))[_0x0d96('0x17')](handleError(_0x3ba2f6,null));};exports['destroy']=function(_0x5bc1fe,_0x42952f){return db['MailMessage'][_0x0d96('0x41')]({'where':{'id':_0x5bc1fe[_0x0d96('0x3d')]['id']}})[_0x0d96('0xf')](handleEntityNotFound(_0x42952f,null))[_0x0d96('0xf')](removeEntity(_0x42952f,null))[_0x0d96('0x17')](handleError(_0x42952f,null));};exports[_0x0d96('0x43')]=function(_0x338e3a,_0x131dbd){return db[_0x0d96('0x38')][_0x0d96('0x43')]()[_0x0d96('0xf')](respondWithResult(_0x131dbd,null))['catch'](handleError(_0x131dbd,null));};exports[_0x0d96('0x44')]=function(_0x5b2b76,_0x2d3d0e){return db[_0x0d96('0x38')][_0x0d96('0x44')](_0x5b2b76['body'])[_0x0d96('0xf')](function(_0x2dca5a){if(_0x2dca5a){if(_0x2dca5a['direction']===_0x0d96('0x45')&&!_0x2dca5a['secret']){var _0x43a1eb,_0x1cffb7,_0x133d8e;if(_0x5b2b76[_0x0d96('0x42')]['to']){_0x1cffb7=_0x5b2b76['body']['to'][_0x0d96('0x46')](',')[0x0];}return db[_0x0d96('0x47')]['findOne']({'where':{'id':_0x2dca5a[_0x0d96('0x48')]},'include':[{'model':db[_0x0d96('0x49')],'as':_0x0d96('0x4a'),'include':[{'model':db[_0x0d96('0x4b')],'as':'Contacts','where':{'email':_0x1cffb7},'limit':0x1,'order':[[_0x0d96('0x4c'),_0x0d96('0x4d')]]}]},{'model':db[_0x0d96('0x4e')],'as':'Smtp','raw':!![]}]})[_0x0d96('0xf')](function(_0x1a51c7){_0x43a1eb=_0x1a51c7;if(_0x43a1eb&&_0x43a1eb[_0x0d96('0x4f')]){var _0x3ab6ea={'tls':{'rejectUnauthorized':![]}};if(_[_0x0d96('0x50')](_0x43a1eb['Smtp']['service'])){_0x3ab6ea[_0x0d96('0x51')]=_0x43a1eb['Smtp'][_0x0d96('0x51')];_0x3ab6ea[_0x0d96('0x52')]=_0x43a1eb[_0x0d96('0x4f')][_0x0d96('0x52')];_0x3ab6ea[_0x0d96('0x53')]=_0x43a1eb[_0x0d96('0x4f')][_0x0d96('0x53')];if(_0x43a1eb[_0x0d96('0x4f')]['authentication']){_0x3ab6ea['auth']={'user':_0x43a1eb['Smtp'][_0x0d96('0x54')],'pass':_0x43a1eb[_0x0d96('0x4f')][_0x0d96('0x55')]};}}else{_0x3ab6ea[_0x0d96('0x56')]=_0x43a1eb[_0x0d96('0x4f')]['service'];_0x3ab6ea[_0x0d96('0x57')]={'user':_0x43a1eb[_0x0d96('0x4f')][_0x0d96('0x54')],'pass':_0x43a1eb[_0x0d96('0x4f')]['pass']};_0x3ab6ea[_0x0d96('0x53')]=_0x43a1eb['Smtp'][_0x0d96('0x53')];}if(_0x5b2b76[_0x0d96('0x42')][_0x0d96('0x58')]&&_0x5b2b76[_0x0d96('0x42')]['attachments']['length']){for(var _0x156cb3=0x0;_0x156cb3<_0x5b2b76[_0x0d96('0x42')][_0x0d96('0x58')]['length'];_0x156cb3+=0x1){_0x5b2b76[_0x0d96('0x42')][_0x0d96('0x58')][_0x156cb3]={'filename':_0x5b2b76[_0x0d96('0x42')][_0x0d96('0x58')][_0x156cb3]['name'],'path':path[_0x0d96('0x59')](config['root'],_0x0d96('0x5a'),_0x5b2b76[_0x0d96('0x42')]['attachments'][_0x156cb3][_0x0d96('0x5b')])};}}_0x133d8e={'account':_0x3ab6ea,'message':_0x5b2b76[_0x0d96('0x42')]};return;}})[_0x0d96('0xf')](function(){if(_0x43a1eb[_0x0d96('0x4a')]){if(_0x43a1eb[_0x0d96('0x4a')]['Contacts'][_0x0d96('0x2f')]){return _0x43a1eb['List']['Contacts'][0x0];}else{return db[_0x0d96('0x4b')][_0x0d96('0x44')](_[_0x0d96('0x5c')](_0x5b2b76[_0x0d96('0x42')],{'firstName':_0x5b2b76[_0x0d96('0x42')]['to'],'email':_0x5b2b76[_0x0d96('0x42')]['to'],'phone':_0x5b2b76['body']['to'],'ListId':_0x43a1eb[_0x0d96('0x5d')]}));}}else{throw new Error(_0x0d96('0x5e'));}})[_0x0d96('0xf')](function(){if(_0x133d8e){return respondWithRpcPromise('SendMail','sendMail',_0x133d8e,client9003)[_0x0d96('0xf')](function(_0x19b689){return _0x2dca5a[_0x0d96('0x1f')]({'read':!![],'messageId':_0x19b689['messageId'],'sentAt':moment()[_0x0d96('0x5f')](_0x0d96('0x60'))});})[_0x0d96('0x17')](function(_0x2f4be8){logger[_0x0d96('0x15')]('%s',JSON[_0x0d96('0x14')](_0x2f4be8));return _0x2dca5a;});}return _0x2dca5a;});}return _0x2dca5a;}})[_0x0d96('0xf')](respondWithResult(_0x2d3d0e,0xc9))[_0x0d96('0x17')](handleError(_0x2d3d0e,null));};exports['accept']=function(_0x156e8f,_0x14a42d){var _0x2da260={'agent':{},'channel':_0x0d96('0x61')};if(_0x156e8f['body']['id']){delete _0x156e8f[_0x0d96('0x42')]['id'];}_0x156e8f[_0x0d96('0x42')][_0x0d96('0x62')]=!![];_0x156e8f[_0x0d96('0x42')]['readAt']=moment()[_0x0d96('0x5f')](_0x0d96('0x60'));_0x156e8f[_0x0d96('0x42')][_0x0d96('0x63')]=_0x156e8f[_0x0d96('0x42')][_0x0d96('0x63')]||_0x156e8f[_0x0d96('0x54')]['id'];_0x2da260['agent']['id']=_0x156e8f['body']['UserId'];return db[_0x0d96('0x38')]['find']({'where':{'id':_0x156e8f['params']['id'],'UserId':null}})['then'](handleEntityNotFound(_0x14a42d,null))['then'](saveUpdates(_0x156e8f[_0x0d96('0x42')],null))[_0x0d96('0xf')](function(_0x567376){if(_0x567376){_0x2da260[_0x0d96('0x16')]=_0x567376['get']({'plain':!![]});return db['MailInteraction']['find']({'where':{'id':_0x567376[_0x0d96('0x64')]}});}return null;})[_0x0d96('0xf')](handleEntityNotFound(_0x14a42d,null))[_0x0d96('0xf')](function(_0x37cdf3){if(_0x37cdf3){return _0x37cdf3[_0x0d96('0x1f')]({'UserId':_0x156e8f[_0x0d96('0x42')][_0x0d96('0x63')],'read1stAt':_[_0x0d96('0x50')](_0x37cdf3['read1stAt'])?moment()[_0x0d96('0x5f')](_0x0d96('0x60')):undefined});}return null;})[_0x0d96('0xf')](function(_0x52d31a){if(_0x52d31a){_0x2da260[_0x0d96('0x65')]=_0x52d31a[_0x0d96('0x66')]({'plain':!![]});interaction_log['info'](_0x0d96('0x67'),_0x156e8f['user']['id'],_0x156e8f[_0x0d96('0x54')][_0x0d96('0x24')],_0x156e8f[_0x0d96('0x54')][_0x0d96('0x68')],_0x2da260[_0x0d96('0x65')]['id'],_0x156e8f[_0x0d96('0x42')]?JSON[_0x0d96('0x14')](_0x156e8f[_0x0d96('0x42')]):_0x0d96('0x69'));return respondWithRpcPromise(_0x0d96('0x6a'),_0x0d96('0x6b'),_0x2da260);}return null;})['then'](function(_0x23e9d9){var _0x47da6='SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20'+_0x23e9d9[_0x0d96('0x16')][_0x0d96('0x6c')];return db[_0x0d96('0x6d')][_0x0d96('0x2b')](_0x47da6,{'type':db[_0x0d96('0x6e')][_0x0d96('0x6f')][_0x0d96('0x70')],'raw':!![]})[_0x0d96('0xf')](function(_0xc412dd){return _0xc412dd;});})['then'](function(_0x4d25b8){if(_0x4d25b8){_0x2da260[_0x0d96('0x16')][_0x0d96('0x71')]=_0x4d25b8[0x0];if(!_0x156e8f[_0x0d96('0x42')][_0x0d96('0x63')])return;return db['User'][_0x0d96('0x41')]({'where':{'id':_0x156e8f[_0x0d96('0x42')][_0x0d96('0x63')],'role':_0x0d96('0x72')},'attributes':['id','name',_0x0d96('0x73'),_0x0d96('0x74'),'internal'],'raw':!![]});}return null;})['then'](function(_0x59811c){if(!_0x59811c)return null;_0x2da260[_0x0d96('0x16')]['agent']=_0x59811c;return _0x2da260;})[_0x0d96('0xf')](function(_0x686bf3){if(_0x686bf3){if(_0x156e8f['body']['manual']){_0x2da260['message'][_0x0d96('0x75')]=util['format'](_0x0d96('0x76'),_0x156e8f[_0x0d96('0x54')][_0x0d96('0x24')]);_0x2da260['message']['channel']=_0x2da260[_0x0d96('0x77')];_0x2da260['message'][_0x0d96('0x78')]=_0x2da260[_0x0d96('0x77')];_0x2da260[_0x0d96('0x16')][_0x0d96('0x79')]=_0x0d96('0x7a');_0x2da260[_0x0d96('0x16')]['body']=htmlToText['fromString'](_0x2da260[_0x0d96('0x16')][_0x0d96('0x42')]);return respondWithRpcPromise(_0x0d96('0x7b'),_0x0d96('0x7b'),{'event':_0x0d96('0x7c'),'message':_0x2da260[_0x0d96('0x16')]},client9002)[_0x0d96('0xf')](function(){return _0x2da260;});}return _0x2da260;}return null;})[_0x0d96('0xf')](respondWithResult(_0x14a42d,null))['catch'](handleError(_0x14a42d,null));};exports[_0x0d96('0x7d')]=function(_0x14320e,_0x1d3426){var _0x5b3f50={'agent':{},'channel':_0x0d96('0x61')};if(_0x14320e[_0x0d96('0x42')]['id']){delete _0x14320e['body']['id'];}_0x14320e['body'][_0x0d96('0x63')]=_0x14320e[_0x0d96('0x42')][_0x0d96('0x63')]||_0x14320e[_0x0d96('0x54')]['id'];_0x5b3f50[_0x0d96('0x72')]['id']=_0x14320e['body'][_0x0d96('0x63')];return db['MailMessage'][_0x0d96('0x41')]({'where':{'id':_0x14320e['params']['id'],'UserId':null}})[_0x0d96('0xf')](handleEntityNotFound(_0x1d3426,null))[_0x0d96('0xf')](function(_0x15bcc3){if(_0x15bcc3){_0x5b3f50['message']=_0x15bcc3[_0x0d96('0x66')]({'plain':!![]});return db[_0x0d96('0x7e')][_0x0d96('0x41')]({'where':{'id':_0x15bcc3[_0x0d96('0x64')]}});}return null;})[_0x0d96('0xf')](handleEntityNotFound(_0x1d3426,null))[_0x0d96('0xf')](function(_0x461689){if(_0x461689){_0x5b3f50[_0x0d96('0x65')]=_0x461689[_0x0d96('0x66')]({'plain':!![]});interaction_log[_0x0d96('0x10')](_0x0d96('0x7f'),_0x14320e[_0x0d96('0x54')]['id'],_0x14320e[_0x0d96('0x54')]['name'],_0x14320e[_0x0d96('0x54')][_0x0d96('0x68')],_0x5b3f50['interaction']['id'],_0x14320e['body']?JSON[_0x0d96('0x14')](_0x14320e[_0x0d96('0x42')]):_0x0d96('0x69'));return respondWithRpcPromise(_0x0d96('0x80'),_0x0d96('0x81'),_0x5b3f50);}return null;})[_0x0d96('0xf')](function(_0x2431a5){var _0x4fe3b9=_0x0d96('0x82')+_0x2431a5['message'][_0x0d96('0x6c')];return db[_0x0d96('0x6d')]['query'](_0x4fe3b9,{'type':db[_0x0d96('0x6e')][_0x0d96('0x6f')][_0x0d96('0x70')],'raw':!![]})[_0x0d96('0xf')](function(_0x216a8b){return _0x216a8b;});})['then'](function(_0x354277){if(_0x354277){_0x5b3f50[_0x0d96('0x16')][_0x0d96('0x71')]=_0x354277[0x0];if(!_0x14320e['body'][_0x0d96('0x63')])return;return db['User'][_0x0d96('0x41')]({'where':{'id':_0x14320e[_0x0d96('0x42')]['UserId'],'role':'agent'},'attributes':['id',_0x0d96('0x24'),'fullname',_0x0d96('0x74'),'internal'],'raw':!![]});}return null;})[_0x0d96('0xf')](function(_0x1e83b8){if(!_0x1e83b8)return null;_0x5b3f50['message'][_0x0d96('0x72')]=_0x1e83b8;return _0x5b3f50;})[_0x0d96('0xf')](function(_0x4deeff){if(_0x4deeff){_0x4deeff[_0x0d96('0x16')][_0x0d96('0x75')]=util[_0x0d96('0x5f')](_0x0d96('0x76'),_0x14320e[_0x0d96('0x54')]['name']);_0x4deeff[_0x0d96('0x16')][_0x0d96('0x77')]=_0x5b3f50['channel'];_0x4deeff[_0x0d96('0x16')][_0x0d96('0x78')]=_0x5b3f50[_0x0d96('0x77')];_0x4deeff[_0x0d96('0x16')][_0x0d96('0x79')]=_0x0d96('0x7d');_0x4deeff[_0x0d96('0x16')][_0x0d96('0x42')]=htmlToText['fromString'](_0x5b3f50[_0x0d96('0x16')][_0x0d96('0x42')]);respondWithRpcPromise(_0x0d96('0x7b'),_0x0d96('0x7b'),{'event':_0x0d96('0x83'),'message':_0x4deeff['message']},client9002);return _0x5b3f50;}return null;})['then'](respondWithResult(_0x1d3426,null))['catch'](handleError(_0x1d3426,null));};exports[_0x0d96('0x84')]=function(_0x3523f2,_0x232559){var _0x46540a=moment()[_0x0d96('0x85')]()[_0x0d96('0x86')]();var _0x3d3756=path[_0x0d96('0x59')](config['root'],_0x0d96('0x87'),_0x0d96('0x88'),_0x0d96('0x89'));var _0x192f94=path['join'](config[_0x0d96('0x8a')],_0x0d96('0x87'),_0x0d96('0x88'),_0x0d96('0x58'));var _0x17b84c=util['format'](_0x0d96('0x8b'),_0x46540a);return db['MailMessage']['find']({'where':{'id':_0x3523f2['params']['id']},'attributes':['id',_0x0d96('0x42'),_0x0d96('0x8c'),'to','cc',_0x0d96('0x8d'),_0x0d96('0x8e'),_0x0d96('0x8f')],'include':_0x3523f2['query'][_0x0d96('0x58')]?[{'model':db[_0x0d96('0x90')],'as':'Attachments'}]:undefined})[_0x0d96('0xf')](handleEntityNotFound(_0x232559,null))[_0x0d96('0xf')](function(_0x2b5358){if(_0x2b5358){var _0x330af8=_0x2b5358;var _0x43b810={'from':_0x330af8[_0x0d96('0x8c')],'to':_0x330af8['to'],'subject':_0x330af8[_0x0d96('0x8e')],'html':htmlEntities[_0x0d96('0x91')](_0x330af8[_0x0d96('0x42')]),'headers':{'Date':moment(_0x330af8[_0x0d96('0x8f')])['format'](_0x0d96('0x92'))},'attachments':[]};if(_0x2b5358['cc']){_0x43b810[_0x0d96('0x93')]['Cc']=_0x2b5358['cc'];}if(_0x2b5358[_0x0d96('0x8d')]){_0x43b810[_0x0d96('0x93')][_0x0d96('0x94')]=_0x2b5358[_0x0d96('0x8d')];}return new BPromise(function(_0x52b1e7,_0x4d7e44){if(_0x2b5358[_0x0d96('0x95')]){for(var _0x48624b=0x0;_0x48624b<_0x2b5358['Attachments'][_0x0d96('0x2f')];_0x48624b++){var _0x8fcd2e=_0x2b5358['Attachments'][_0x48624b];var _0x55c546=path[_0x0d96('0x59')](_0x192f94,_0x8fcd2e[_0x0d96('0x5b')]);if(fs['existsSync'](_0x55c546)){_0x43b810[_0x0d96('0x58')]['push']({'name':_0x8fcd2e[_0x0d96('0x24')],'contentType':_0x8fcd2e[_0x0d96('0x2a')],'data':fs[_0x0d96('0x96')](_0x55c546)});}}}emlformat[_0x0d96('0x97')](_0x43b810,function(_0x2f638d,_0x1ea4d3){if(_0x2f638d)return _0x4d7e44(_0x2f638d);fs['writeFileSync'](path['join'](_0x3d3756,_0x17b84c),_0x1ea4d3);return _0x52b1e7(_0x1ea4d3);});});}})['then'](function(_0x17a9f0){if(_0x17a9f0){return _0x232559[_0x0d96('0x84')](path[_0x0d96('0x59')](_0x3d3756,_0x17b84c),_0x17b84c,function(_0x59b0c1){if(!_0x59b0c1)fs[_0x0d96('0x98')](path['join'](_0x3d3756,_0x17b84c));});}})['catch'](handleError(_0x232559,null));};
\ No newline at end of file