0cda7a75d95600a212b03fa2c6620fc0a2921a14
[motion2.git] / server / api / mailMessage / mailMessage.controller.js
1 // *************************************************************************
2 // *                                                                       *
3 // * xCALLY Motion -  The Omnichannel Contact Center                       *
4 // * Copyright (c) Xenialab s.r.l. All Rights Reserved                     *
5 // *                                                                       *
6 // *************************************************************************
7 // *                                                                       *
8 // * Email: info@xcally.com                                                *
9 // * Website: https://www.xcally.com                                       *
10 // *                                                                       *
11 // *************************************************************************
12 // *                                                                       *
13 // * The SOFTWARE PRODUCT is protected by copyright laws and international *
14 // * copyright treaties, as well as other intellectual property laws and   *
15 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                         *
16 // *                                                                       *
17 // *************************************************************************
18 var _0x4db8=['code','message','info','result','status','json','undefined','limit','count','offset','set','update','destroy','end','sendStatus','name','send','map','rawAttributes','fieldName','type','model','query','keys','filters','intersection','fields','attributes','hasOwnProperty','nolimit','order','sort','where','pick','filter','merge','VIRTUAL','options','MailMessage','includeAll','include','rows','show','params','length','find','catch','body','describe','create','secret','split','MailAccount','findOne','MailAccountId','CmList','Contacts','updatedAt','DESC','MailServerOut','Smtp','CloudProvider','getSmtpOptions','attachments','join','root','server/files/attachments','List','CmContact','ListId','List\x20not\x20found','format','YYYY-MM-DD\x20HH:mm:ss','mail','read','readAt','UserId','user','agent','get','MailInteraction','MailInteractionId','isNil','read1stAt','interaction','[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','User','fullname','email','internal','manual','interface','SIP/%s','motionChannel','accept','fromString','EventManager','acceptmessage','[MAILMESSAGE:REJECT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','rejectMessage','channel','event','reject','rejectmessage','unix','toString','server','files','tmp','message-%s.eml','bcc','subject','createdAt','Attachment','Attachments','from','decode','ddd,\x20DD\x20MMM\x20YYYY\x20HH:mm:ss\x20ZZ','headers','Bcc','basename','push','readFileSync','writeFileSync','download','unlinkSync','eml-format','moment','bluebird','util','path','lodash','ioredis','html-to-text','../../components/parsers/qs','api','../../config/logger','mail-interactions','../../mysqldb','redis','defaults','localhost','html-entities','register','client','http','request','then','MailMessage,\x20%s,\x20%s','request\x20sent','stringify','error'];(function(_0x507023,_0x5ebf48){var _0xadb3dc=function(_0x5e2124){while(--_0x5e2124){_0x507023['push'](_0x507023['shift']());}};_0xadb3dc(++_0x5ebf48);}(_0x4db8,0x1cc));var _0x84db=function(_0x568d3a,_0x46e0f8){_0x568d3a=_0x568d3a-0x0;var _0x1ebd22=_0x4db8[_0x568d3a];return _0x1ebd22;};'use strict';var emlformat=require(_0x84db('0x0'));var moment=require(_0x84db('0x1'));var BPromise=require(_0x84db('0x2'));var util=require(_0x84db('0x3'));var path=require(_0x84db('0x4'));var fs=require('fs');var _=require(_0x84db('0x5'));var Redis=require(_0x84db('0x6'));var htmlToText=require(_0x84db('0x7'));var qs=require(_0x84db('0x8'));var logger=require('../../config/logger')(_0x84db('0x9'));var interaction_log=require(_0x84db('0xa'))(_0x84db('0xb'));var config=require('../../config/environment');var db=require(_0x84db('0xc'))['db'];config[_0x84db('0xd')]=_[_0x84db('0xe')](config[_0x84db('0xd')],{'host':_0x84db('0xf'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0x84db('0xd')]));var htmlEntities=require(_0x84db('0x10'));require('./mailMessage.socket')[_0x84db('0x11')](socket);var jayson=require('jayson/promise');var client=jayson[_0x84db('0x12')][_0x84db('0x13')]({'port':0x232c});var client9003=jayson['client'][_0x84db('0x13')]({'port':0x232b});var client9002=jayson[_0x84db('0x12')][_0x84db('0x13')]({'port':0x232a});function respondWithRpcPromise(_0x5943aa,_0x3033e6,_0x293f70,_0x3c8611){return new BPromise(function(_0x752ddb,_0x48870e){var _0x957a38=_0x3c8611||client;return _0x957a38[_0x84db('0x14')](_0x5943aa,_0x293f70)[_0x84db('0x15')](function(_0x5a2476){logger['info'](_0x84db('0x16'),_0x3033e6,_0x84db('0x17'));logger['debug']('MailMessage,\x20%s,\x20%s,\x20%s',_0x3033e6,'request\x20sent',JSON[_0x84db('0x18')](_0x5a2476));if(_0x5a2476[_0x84db('0x19')]){if(_0x5a2476[_0x84db('0x19')][_0x84db('0x1a')]===0x1f4){logger[_0x84db('0x19')](_0x84db('0x16'),_0x3033e6,_0x5a2476['error']['message']);return _0x48870e(_0x5a2476[_0x84db('0x19')][_0x84db('0x1b')]);}logger[_0x84db('0x19')](_0x84db('0x16'),_0x3033e6,_0x5a2476[_0x84db('0x19')][_0x84db('0x1b')]);return _0x752ddb(_0x5a2476[_0x84db('0x19')][_0x84db('0x1b')]);}else{logger[_0x84db('0x1c')]('MailMessage,\x20%s,\x20%s',_0x3033e6,_0x84db('0x17'));_0x752ddb(_0x5a2476[_0x84db('0x1d')][_0x84db('0x1b')]);}})['catch'](function(_0x4f3cff){logger[_0x84db('0x19')]('MailMessage,\x20%s,\x20%s',_0x3033e6,_0x4f3cff);_0x48870e(_0x4f3cff);});});}function respondWithResult(_0x21bc38,_0x4d1bea){_0x4d1bea=_0x4d1bea||0xc8;return function(_0x522e01){if(_0x522e01){return _0x21bc38[_0x84db('0x1e')](_0x4d1bea)[_0x84db('0x1f')](_0x522e01);}};}function respondWithFilteredResult(_0x45bb82,_0x5c9055){return function(_0x8d2462){if(_0x8d2462){var _0xe5cbb3=typeof _0x5c9055['offset']===_0x84db('0x20')&&typeof _0x5c9055[_0x84db('0x21')]==='undefined';var _0x1e064c=_0x8d2462[_0x84db('0x22')];var _0x4ce996=_0xe5cbb3?0x0:_0x5c9055['offset'];var _0x4ab7cf=_0xe5cbb3?_0x8d2462[_0x84db('0x22')]:_0x5c9055[_0x84db('0x23')]+_0x5c9055[_0x84db('0x21')];var _0x533dd3;if(_0x4ab7cf>=_0x1e064c){_0x4ab7cf=_0x1e064c;_0x533dd3=0xc8;}else{_0x533dd3=0xce;}_0x45bb82[_0x84db('0x1e')](_0x533dd3);return _0x45bb82[_0x84db('0x24')]('Content-Range',_0x4ce996+'-'+_0x4ab7cf+'/'+_0x1e064c)[_0x84db('0x1f')](_0x8d2462);}return null;};}function saveUpdates(_0x275cc0){return function(_0x3ad3f3){if(_0x3ad3f3){return _0x3ad3f3[_0x84db('0x25')](_0x275cc0)['then'](function(_0x35c4cd){return _0x35c4cd;});}return null;};}function removeEntity(_0x3b00e1){return function(_0x589ab4){if(_0x589ab4){return _0x589ab4[_0x84db('0x26')]()[_0x84db('0x15')](function(){_0x3b00e1['status'](0xcc)[_0x84db('0x27')]();});}};}function handleEntityNotFound(_0x55823e){return function(_0x16f7e8){if(!_0x16f7e8){_0x55823e[_0x84db('0x28')](0x194);}return _0x16f7e8;};}function handleError(_0x51108c,_0x1883ae){_0x1883ae=_0x1883ae||0x1f4;return function(_0x53993c){logger[_0x84db('0x19')](_0x53993c['stack']);if(_0x53993c[_0x84db('0x29')]){delete _0x53993c[_0x84db('0x29')];}_0x51108c[_0x84db('0x1e')](_0x1883ae)[_0x84db('0x2a')](_0x53993c);};}exports['index']=function(_0x20be06,_0x2f74c2){var _0x503e58={},_0x4a79cc={},_0x44826f={'count':0x0,'rows':[]};var _0x2f4185=_[_0x84db('0x2b')](db['MailMessage'][_0x84db('0x2c')],function(_0x49e48a){return{'name':_0x49e48a[_0x84db('0x2d')],'type':_0x49e48a[_0x84db('0x2e')]['key']};});_0x4a79cc[_0x84db('0x2f')]=_['map'](_0x2f4185,_0x84db('0x29'));_0x4a79cc[_0x84db('0x30')]=_[_0x84db('0x31')](_0x20be06[_0x84db('0x30')]);_0x4a79cc[_0x84db('0x32')]=_[_0x84db('0x33')](_0x4a79cc['model'],_0x4a79cc[_0x84db('0x30')]);_0x503e58['attributes']=_[_0x84db('0x33')](_0x4a79cc['model'],qs[_0x84db('0x34')](_0x20be06[_0x84db('0x30')]['fields']));_0x503e58[_0x84db('0x35')]=_0x503e58[_0x84db('0x35')]['length']?_0x503e58[_0x84db('0x35')]:_0x4a79cc['model'];if(!_0x20be06[_0x84db('0x30')][_0x84db('0x36')](_0x84db('0x37'))){_0x503e58[_0x84db('0x21')]=qs[_0x84db('0x21')](_0x20be06[_0x84db('0x30')][_0x84db('0x21')]);_0x503e58[_0x84db('0x23')]=qs[_0x84db('0x23')](_0x20be06[_0x84db('0x30')][_0x84db('0x23')]);}_0x503e58[_0x84db('0x38')]=qs['sort'](_0x20be06[_0x84db('0x30')][_0x84db('0x39')]);_0x503e58[_0x84db('0x3a')]=qs[_0x84db('0x32')](_[_0x84db('0x3b')](_0x20be06[_0x84db('0x30')],_0x4a79cc[_0x84db('0x32')]),_0x2f4185);if(_0x20be06['query'][_0x84db('0x3c')]){_0x503e58[_0x84db('0x3a')]=_[_0x84db('0x3d')](_0x503e58[_0x84db('0x3a')],{'$or':_['map'](_0x2f4185,function(_0x51c604){if(_0x51c604['type']!==_0x84db('0x3e')){var _0x4cf1cb={};_0x4cf1cb[_0x51c604['name']]={'$like':'%'+_0x20be06[_0x84db('0x30')]['filter']+'%'};return _0x4cf1cb;}})});}_0x503e58=_[_0x84db('0x3d')]({},_0x503e58,_0x20be06[_0x84db('0x3f')]);var _0x5335ac={'where':_0x503e58[_0x84db('0x3a')]};return db[_0x84db('0x40')][_0x84db('0x22')](_0x5335ac)[_0x84db('0x15')](function(_0x15903b){_0x44826f[_0x84db('0x22')]=_0x15903b;if(_0x20be06['query'][_0x84db('0x41')]){_0x503e58[_0x84db('0x42')]=[{'all':!![]}];}return db['MailMessage']['findAll'](_0x503e58);})['then'](function(_0x34645d){_0x44826f[_0x84db('0x43')]=_0x34645d;return _0x44826f;})[_0x84db('0x15')](respondWithFilteredResult(_0x2f74c2,_0x503e58))['catch'](handleError(_0x2f74c2,null));};exports[_0x84db('0x44')]=function(_0x3cbb87,_0xf6b3ce){var _0x104594={'raw':!![],'where':{'id':_0x3cbb87[_0x84db('0x45')]['id']}},_0x50cd32={};_0x50cd32[_0x84db('0x2f')]=_[_0x84db('0x31')](db[_0x84db('0x40')][_0x84db('0x2c')]);_0x50cd32['query']=_[_0x84db('0x31')](_0x3cbb87[_0x84db('0x30')]);_0x50cd32[_0x84db('0x32')]=_['intersection'](_0x50cd32[_0x84db('0x2f')],_0x50cd32['query']);_0x104594['attributes']=_[_0x84db('0x33')](_0x50cd32[_0x84db('0x2f')],qs[_0x84db('0x34')](_0x3cbb87[_0x84db('0x30')]['fields']));_0x104594[_0x84db('0x35')]=_0x104594[_0x84db('0x35')][_0x84db('0x46')]?_0x104594[_0x84db('0x35')]:_0x50cd32[_0x84db('0x2f')];if(_0x3cbb87[_0x84db('0x30')]['includeAll']){_0x104594[_0x84db('0x42')]=[{'all':!![]}];}_0x104594=_['merge']({},_0x104594,_0x3cbb87[_0x84db('0x3f')]);return db[_0x84db('0x40')][_0x84db('0x47')](_0x104594)[_0x84db('0x15')](handleEntityNotFound(_0xf6b3ce,null))[_0x84db('0x15')](respondWithResult(_0xf6b3ce,null))[_0x84db('0x48')](handleError(_0xf6b3ce,null));};exports[_0x84db('0x25')]=function(_0x3f3a68,_0x1b2e84){if(_0x3f3a68['body']['id']){delete _0x3f3a68[_0x84db('0x49')]['id'];}return db['MailMessage'][_0x84db('0x47')]({'where':{'id':_0x3f3a68[_0x84db('0x45')]['id']}})['then'](handleEntityNotFound(_0x1b2e84,null))[_0x84db('0x15')](saveUpdates(_0x3f3a68[_0x84db('0x49')],null))['then'](respondWithResult(_0x1b2e84,null))['catch'](handleError(_0x1b2e84,null));};exports[_0x84db('0x26')]=function(_0x449f46,_0x43cb40){return db[_0x84db('0x40')][_0x84db('0x47')]({'where':{'id':_0x449f46[_0x84db('0x45')]['id']}})[_0x84db('0x15')](handleEntityNotFound(_0x43cb40,null))[_0x84db('0x15')](removeEntity(_0x43cb40,null))[_0x84db('0x48')](handleError(_0x43cb40,null));};exports[_0x84db('0x4a')]=function(_0x1fa30b,_0x1bc53b){return db['MailMessage'][_0x84db('0x4a')]()[_0x84db('0x15')](respondWithResult(_0x1bc53b,null))[_0x84db('0x48')](handleError(_0x1bc53b,null));};exports[_0x84db('0x4b')]=function(_0x43ad3d,_0x3b84ad){return db['MailMessage'][_0x84db('0x4b')](_0x43ad3d[_0x84db('0x49')])[_0x84db('0x15')](function(_0xe68d0c){if(_0xe68d0c){if(_0xe68d0c['direction']==='out'&&!_0xe68d0c[_0x84db('0x4c')]){var _0x272c18,_0x16b76a,_0x1f05ac;if(_0x43ad3d[_0x84db('0x49')]['to']){_0x16b76a=_0x43ad3d[_0x84db('0x49')]['to'][_0x84db('0x4d')](',')[0x0];}return db[_0x84db('0x4e')][_0x84db('0x4f')]({'where':{'id':_0xe68d0c[_0x84db('0x50')]},'include':[{'model':db[_0x84db('0x51')],'as':'List','include':[{'model':db['CmContact'],'as':_0x84db('0x52'),'where':{'email':_0x16b76a},'limit':0x1,'order':[[_0x84db('0x53'),_0x84db('0x54')]]}]},{'model':db[_0x84db('0x55')],'as':_0x84db('0x56'),'raw':!![],'include':[{'model':db[_0x84db('0x57')],'as':_0x84db('0x57'),'raw':!![]}]}]})[_0x84db('0x15')](function(_0x197029){_0x272c18=_0x197029;if(!_0x272c18||!_0x272c18[_0x84db('0x56')])return;var _0x2b14c3=_0x272c18[_0x84db('0x58')]();if(_0x43ad3d[_0x84db('0x49')][_0x84db('0x59')]&&_0x43ad3d['body'][_0x84db('0x59')][_0x84db('0x46')]){for(var _0x71bae0=0x0;_0x71bae0<_0x43ad3d[_0x84db('0x49')][_0x84db('0x59')]['length'];_0x71bae0+=0x1){_0x43ad3d[_0x84db('0x49')][_0x84db('0x59')][_0x71bae0]={'filename':_0x43ad3d['body'][_0x84db('0x59')][_0x71bae0][_0x84db('0x29')],'path':path[_0x84db('0x5a')](config[_0x84db('0x5b')],_0x84db('0x5c'),_0x43ad3d[_0x84db('0x49')]['attachments'][_0x71bae0]['basename'])};}}_0x1f05ac={'account':_0x2b14c3,'message':_0x43ad3d['body']};return;})[_0x84db('0x15')](function(){if(_0x272c18['List']){if(_0x272c18['List'][_0x84db('0x52')]['length']){return _0x272c18[_0x84db('0x5d')][_0x84db('0x52')][0x0];}else{return db[_0x84db('0x5e')][_0x84db('0x4b')](_[_0x84db('0xe')](_0x43ad3d[_0x84db('0x49')],{'firstName':_0x43ad3d[_0x84db('0x49')]['to'],'email':_0x43ad3d[_0x84db('0x49')]['to'],'phone':_0x43ad3d['body']['to'],'ListId':_0x272c18[_0x84db('0x5f')]}));}}else{throw new Error(_0x84db('0x60'));}})[_0x84db('0x15')](function(){if(_0x1f05ac){return respondWithRpcPromise('SendMail','sendMail',_0x1f05ac,client9003)[_0x84db('0x15')](function(_0x4456e2){return _0xe68d0c[_0x84db('0x25')]({'read':!![],'messageId':_0x4456e2['messageId'],'sentAt':moment()[_0x84db('0x61')](_0x84db('0x62'))});})[_0x84db('0x48')](function(_0x2821c6){logger[_0x84db('0x19')]('%s',JSON[_0x84db('0x18')](_0x2821c6));return _0xe68d0c;});}return _0xe68d0c;});}return _0xe68d0c;}})[_0x84db('0x15')](respondWithResult(_0x3b84ad,0xc9))[_0x84db('0x48')](handleError(_0x3b84ad,null));};exports['accept']=function(_0x10794a,_0x531f7b){var _0x1d22cd={'agent':{},'channel':_0x84db('0x63')};if(_0x10794a[_0x84db('0x49')]['id']){delete _0x10794a['body']['id'];}_0x10794a[_0x84db('0x49')][_0x84db('0x64')]=!![];_0x10794a[_0x84db('0x49')][_0x84db('0x65')]=moment()[_0x84db('0x61')](_0x84db('0x62'));_0x10794a[_0x84db('0x49')][_0x84db('0x66')]=_0x10794a[_0x84db('0x49')]['UserId']||_0x10794a[_0x84db('0x67')]['id'];_0x1d22cd[_0x84db('0x68')]['id']=_0x10794a[_0x84db('0x49')][_0x84db('0x66')];return db[_0x84db('0x40')][_0x84db('0x47')]({'where':{'id':_0x10794a[_0x84db('0x45')]['id'],'UserId':null}})['then'](handleEntityNotFound(_0x531f7b,null))[_0x84db('0x15')](saveUpdates(_0x10794a[_0x84db('0x49')],null))[_0x84db('0x15')](function(_0x33ebf2){if(_0x33ebf2){_0x1d22cd[_0x84db('0x1b')]=_0x33ebf2[_0x84db('0x69')]({'plain':!![]});return db[_0x84db('0x6a')][_0x84db('0x47')]({'where':{'id':_0x33ebf2[_0x84db('0x6b')]}});}return null;})[_0x84db('0x15')](handleEntityNotFound(_0x531f7b,null))['then'](function(_0x1c0583){if(_0x1c0583){return _0x1c0583[_0x84db('0x25')]({'UserId':_0x10794a['body'][_0x84db('0x66')],'read1stAt':_[_0x84db('0x6c')](_0x1c0583[_0x84db('0x6d')])?moment()[_0x84db('0x61')](_0x84db('0x62')):undefined});}return null;})[_0x84db('0x15')](function(_0x5c37a4){if(_0x5c37a4){_0x1d22cd[_0x84db('0x6e')]=_0x5c37a4['get']({'plain':!![]});interaction_log['info'](_0x84db('0x6f'),_0x10794a[_0x84db('0x67')]['id'],_0x10794a[_0x84db('0x67')][_0x84db('0x29')],_0x10794a[_0x84db('0x67')][_0x84db('0x70')],_0x1d22cd[_0x84db('0x6e')]['id'],_0x10794a['body']?JSON[_0x84db('0x18')](_0x10794a[_0x84db('0x49')]):_0x84db('0x71'));return respondWithRpcPromise('AcceptMessage',_0x84db('0x72'),_0x1d22cd);}return null;})[_0x84db('0x15')](function(_0x3c1f3f){var _0x2bd57a=_0x84db('0x73')+_0x3c1f3f[_0x84db('0x1b')][_0x84db('0x74')];return db[_0x84db('0x75')][_0x84db('0x30')](_0x2bd57a,{'type':db[_0x84db('0x76')][_0x84db('0x77')][_0x84db('0x78')],'raw':!![]})[_0x84db('0x15')](function(_0x2bdbd8){return _0x2bdbd8;});})['then'](function(_0x4c2b88){if(_0x4c2b88){_0x1d22cd[_0x84db('0x1b')][_0x84db('0x79')]=_0x4c2b88[0x0];if(!_0x10794a[_0x84db('0x49')][_0x84db('0x66')])return;return db[_0x84db('0x7a')]['find']({'where':{'id':_0x10794a[_0x84db('0x49')]['UserId'],'role':_0x84db('0x68')},'attributes':['id',_0x84db('0x29'),_0x84db('0x7b'),_0x84db('0x7c'),_0x84db('0x7d')],'raw':!![]});}return null;})[_0x84db('0x15')](function(_0x5674ee){if(!_0x5674ee)return null;_0x1d22cd[_0x84db('0x1b')][_0x84db('0x68')]=_0x5674ee;return _0x1d22cd;})[_0x84db('0x15')](function(_0x4be7fd){if(_0x4be7fd){if(_0x10794a['body'][_0x84db('0x7e')]){_0x1d22cd[_0x84db('0x1b')][_0x84db('0x7f')]=util[_0x84db('0x61')](_0x84db('0x80'),_0x10794a[_0x84db('0x67')]['name']);_0x1d22cd[_0x84db('0x1b')]['channel']=_0x1d22cd['channel'];_0x1d22cd['message'][_0x84db('0x81')]=_0x1d22cd['channel'];_0x1d22cd[_0x84db('0x1b')]['event']=_0x84db('0x82');_0x1d22cd[_0x84db('0x1b')][_0x84db('0x49')]=htmlToText[_0x84db('0x83')](_0x1d22cd['message']['body']);return respondWithRpcPromise(_0x84db('0x84'),_0x84db('0x84'),{'event':_0x84db('0x85'),'message':_0x1d22cd['message']},client9002)[_0x84db('0x15')](function(){return _0x1d22cd;});}return _0x1d22cd;}return null;})[_0x84db('0x15')](respondWithResult(_0x531f7b,null))[_0x84db('0x48')](handleError(_0x531f7b,null));};exports['reject']=function(_0x138a85,_0x5100d4){var _0x483bac={'agent':{},'channel':_0x84db('0x63')};if(_0x138a85[_0x84db('0x49')]['id']){delete _0x138a85[_0x84db('0x49')]['id'];}_0x138a85[_0x84db('0x49')][_0x84db('0x66')]=_0x138a85[_0x84db('0x49')][_0x84db('0x66')]||_0x138a85[_0x84db('0x67')]['id'];_0x483bac[_0x84db('0x68')]['id']=_0x138a85[_0x84db('0x49')]['UserId'];return db['MailMessage'][_0x84db('0x47')]({'where':{'id':_0x138a85['params']['id'],'UserId':null}})[_0x84db('0x15')](handleEntityNotFound(_0x5100d4,null))[_0x84db('0x15')](function(_0x416b1b){if(_0x416b1b){_0x483bac['message']=_0x416b1b[_0x84db('0x69')]({'plain':!![]});return db[_0x84db('0x6a')]['find']({'where':{'id':_0x416b1b[_0x84db('0x6b')]}});}return null;})[_0x84db('0x15')](handleEntityNotFound(_0x5100d4,null))[_0x84db('0x15')](function(_0x38bf18){if(_0x38bf18){_0x483bac[_0x84db('0x6e')]=_0x38bf18[_0x84db('0x69')]({'plain':!![]});interaction_log[_0x84db('0x1c')](_0x84db('0x86'),_0x138a85['user']['id'],_0x138a85['user'][_0x84db('0x29')],_0x138a85[_0x84db('0x67')]['role'],_0x483bac['interaction']['id'],_0x138a85[_0x84db('0x49')]?JSON[_0x84db('0x18')](_0x138a85[_0x84db('0x49')]):_0x84db('0x71'));return respondWithRpcPromise('RejectMessage',_0x84db('0x87'),_0x483bac);}return null;})[_0x84db('0x15')](function(_0x352f82){var _0x49b01b=_0x84db('0x73')+_0x352f82[_0x84db('0x1b')][_0x84db('0x74')];return db['sequelize'][_0x84db('0x30')](_0x49b01b,{'type':db['Sequelize'][_0x84db('0x77')][_0x84db('0x78')],'raw':!![]})[_0x84db('0x15')](function(_0x380247){return _0x380247;});})[_0x84db('0x15')](function(_0x4bf452){if(_0x4bf452){_0x483bac['message'][_0x84db('0x79')]=_0x4bf452[0x0];if(!_0x138a85[_0x84db('0x49')][_0x84db('0x66')])return;return db[_0x84db('0x7a')][_0x84db('0x47')]({'where':{'id':_0x138a85['body'][_0x84db('0x66')],'role':'agent'},'attributes':['id',_0x84db('0x29'),_0x84db('0x7b'),_0x84db('0x7c'),_0x84db('0x7d')],'raw':!![]});}return null;})[_0x84db('0x15')](function(_0x206c92){if(!_0x206c92)return null;_0x483bac[_0x84db('0x1b')][_0x84db('0x68')]=_0x206c92;return _0x483bac;})['then'](function(_0x35825e){if(_0x35825e){_0x35825e[_0x84db('0x1b')]['interface']=util[_0x84db('0x61')](_0x84db('0x80'),_0x138a85[_0x84db('0x67')][_0x84db('0x29')]);_0x35825e[_0x84db('0x1b')][_0x84db('0x88')]=_0x483bac[_0x84db('0x88')];_0x35825e[_0x84db('0x1b')]['motionChannel']=_0x483bac[_0x84db('0x88')];_0x35825e['message'][_0x84db('0x89')]=_0x84db('0x8a');_0x35825e[_0x84db('0x1b')]['body']=htmlToText['fromString'](_0x483bac[_0x84db('0x1b')][_0x84db('0x49')]);respondWithRpcPromise(_0x84db('0x84'),_0x84db('0x84'),{'event':_0x84db('0x8b'),'message':_0x35825e[_0x84db('0x1b')]},client9002);return _0x483bac;}return null;})[_0x84db('0x15')](respondWithResult(_0x5100d4,null))['catch'](handleError(_0x5100d4,null));};exports['download']=function(_0x2dbf25,_0x38a5a6){var _0x535355=moment()[_0x84db('0x8c')]()[_0x84db('0x8d')]();var _0x5a3fda=path[_0x84db('0x5a')](config[_0x84db('0x5b')],_0x84db('0x8e'),_0x84db('0x8f'),_0x84db('0x90'));var _0x17e3a0=path[_0x84db('0x5a')](config[_0x84db('0x5b')],_0x84db('0x8e'),'files',_0x84db('0x59'));var _0x42b2d0=util[_0x84db('0x61')](_0x84db('0x91'),_0x535355);return db['MailMessage'][_0x84db('0x47')]({'where':{'id':_0x2dbf25[_0x84db('0x45')]['id']},'attributes':['id',_0x84db('0x49'),'from','to','cc',_0x84db('0x92'),_0x84db('0x93'),_0x84db('0x94')],'include':_0x2dbf25[_0x84db('0x30')][_0x84db('0x59')]?[{'model':db[_0x84db('0x95')],'as':_0x84db('0x96')}]:undefined})[_0x84db('0x15')](handleEntityNotFound(_0x38a5a6,null))[_0x84db('0x15')](function(_0x2dc89b){if(_0x2dc89b){var _0x3b7302=_0x2dc89b;var _0xf67110={'from':_0x3b7302[_0x84db('0x97')],'to':_0x3b7302['to'],'subject':_0x3b7302[_0x84db('0x93')],'html':htmlEntities[_0x84db('0x98')](_0x3b7302[_0x84db('0x49')]),'headers':{'Date':moment(_0x3b7302[_0x84db('0x94')])['format'](_0x84db('0x99'))},'attachments':[]};if(_0x2dc89b['cc']){_0xf67110[_0x84db('0x9a')]['Cc']=_0x2dc89b['cc'];}if(_0x2dc89b[_0x84db('0x92')]){_0xf67110[_0x84db('0x9a')][_0x84db('0x9b')]=_0x2dc89b[_0x84db('0x92')];}return new BPromise(function(_0x5445e2,_0x12d9c0){if(_0x2dc89b['Attachments']){for(var _0x667026=0x0;_0x667026<_0x2dc89b['Attachments'][_0x84db('0x46')];_0x667026++){var _0x154181=_0x2dc89b[_0x84db('0x96')][_0x667026];var _0x1b4f00=path['join'](_0x17e3a0,_0x154181[_0x84db('0x9c')]);if(fs['existsSync'](_0x1b4f00)){_0xf67110['attachments'][_0x84db('0x9d')]({'name':_0x154181['name'],'contentType':_0x154181[_0x84db('0x2e')],'data':fs[_0x84db('0x9e')](_0x1b4f00)});}}}emlformat['build'](_0xf67110,function(_0x1d019b,_0x3078c5){if(_0x1d019b)return _0x12d9c0(_0x1d019b);fs[_0x84db('0x9f')](path[_0x84db('0x5a')](_0x5a3fda,_0x42b2d0),_0x3078c5);return _0x5445e2(_0x3078c5);});});}})[_0x84db('0x15')](function(_0x3b6df8){if(_0x3b6df8){return _0x38a5a6[_0x84db('0xa0')](path[_0x84db('0x5a')](_0x5a3fda,_0x42b2d0),_0x42b2d0,function(_0x3b60b8){if(!_0x3b60b8)fs[_0x84db('0xa1')](path[_0x84db('0x5a')](_0x5a3fda,_0x42b2d0));});}})[_0x84db('0x48')](handleError(_0x38a5a6,null));};