Built motion from commit (unavailable).|2.5.14
[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 _0x751e=['rejectmessage','unix','toString','server','files','tmp','message-%s.eml','from','bcc','createdAt','Attachment','Attachments','subject','ddd,\x20DD\x20MMM\x20YYYY\x20HH:mm:ss\x20ZZ','headers','Bcc','existsSync','readFileSync','build','writeFileSync','download','log','html-pdf','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','ejs','lodash','squel','crypto','jsforce','desk.js','to-csv','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','redis','defaults','localhost','socket.io-emitter','./mailMessage.socket','register','jayson/promise','client','http','request','then','info','MailMessage,\x20%s,\x20%s','request\x20sent','MailMessage,\x20%s,\x20%s,\x20%s','stringify','error','code','message','sendStatus','status','end','json','count','offset','limit','set','apply','destroy','stack','name','send','index','rawAttributes','fieldName','key','model','map','query','keys','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','pick','filter','merge','type','VIRTUAL','options','includeAll','include','MailMessage','rows','catch','show','params','find','update','body','describe','create','direction','out','split','MailAccount','findOne','CmList','List','CmContact','DESC','MailServerOut','Smtp','isNil','port','secure','authentication','auth','user','pass','service','attachments','join','root','basename','Contacts','ListId','List\x20not\x20found','sendMail','messageId','format','YYYY-MM-DD\x20HH:mm:ss','../../config/logger','mail-interactions','mail','read','readAt','Contact','get','MailInteractionId','UserId','read1stAt','interaction','[MAILMESSAGE:ACCEPT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','role','null','AcceptMessage','acceptMessage','manual','interface','SIP/%s','channel','event','accept','EventManager','acceptmessage','MailInteraction','[MAILMESSAGE:REJECT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','RejectMessage','rejectMessage','reject'];(function(_0x201f31,_0x4357bb){var _0x1f38bd=function(_0x5945b0){while(--_0x5945b0){_0x201f31['push'](_0x201f31['shift']());}};_0x1f38bd(++_0x4357bb);}(_0x751e,0x174));var _0xe751=function(_0x45f2c6,_0x145cdc){_0x45f2c6=_0x45f2c6-0x0;var _0x3e6dcd=_0x751e[_0x45f2c6];return _0x3e6dcd;};'use strict';var pdf=require(_0xe751('0x0'));var emlformat=require(_0xe751('0x1'));var rimraf=require(_0xe751('0x2'));var zipdir=require(_0xe751('0x3'));var jsonpatch=require(_0xe751('0x4'));var rp=require(_0xe751('0x5'));var moment=require(_0xe751('0x6'));var BPromise=require('bluebird');var Mustache=require('mustache');var util=require('util');var path=require('path');var sox=require('sox');var csv=require('to-csv');var ejs=require(_0xe751('0x7'));var fs=require('fs');var _=require(_0xe751('0x8'));var squel=require(_0xe751('0x9'));var crypto=require(_0xe751('0xa'));var jsforce=require(_0xe751('0xb'));var deskjs=require(_0xe751('0xc'));var toCsv=require(_0xe751('0xd'));var querystring=require(_0xe751('0xe'));var Papa=require(_0xe751('0xf'));var Redis=require(_0xe751('0x10'));var authService=require(_0xe751('0x11'));var qs=require(_0xe751('0x12'));var as=require(_0xe751('0x13'));var hardwareService=require(_0xe751('0x14'));var logger=require('../../config/logger')(_0xe751('0x15'));var utils=require(_0xe751('0x16'));var config=require(_0xe751('0x17'));var licenseUtil=require(_0xe751('0x18'));var db=require(_0xe751('0x19'))['db'];config[_0xe751('0x1a')]=_[_0xe751('0x1b')](config[_0xe751('0x1a')],{'host':_0xe751('0x1c'),'port':0x18eb});var socket=require(_0xe751('0x1d'))(new Redis(config[_0xe751('0x1a')]));require(_0xe751('0x1e'))[_0xe751('0x1f')](socket);var jayson=require(_0xe751('0x20'));var client=jayson['client']['http']({'port':0x232c});var client9003=jayson[_0xe751('0x21')][_0xe751('0x22')]({'port':0x232b});var client9002=jayson['client'][_0xe751('0x22')]({'port':0x232a});function respondWithRpcPromise(_0x3e9648,_0x5116b8,_0x1c1bae,_0x4517fd){return new BPromise(function(_0x3812d2,_0xd0ea61){var _0x2b6c4b=_0x4517fd||client;return _0x2b6c4b[_0xe751('0x23')](_0x3e9648,_0x1c1bae)[_0xe751('0x24')](function(_0x595864){logger[_0xe751('0x25')](_0xe751('0x26'),_0x5116b8,_0xe751('0x27'));logger['debug'](_0xe751('0x28'),_0x5116b8,_0xe751('0x27'),JSON[_0xe751('0x29')](_0x595864));if(_0x595864[_0xe751('0x2a')]){if(_0x595864[_0xe751('0x2a')][_0xe751('0x2b')]===0x1f4){logger['error'](_0xe751('0x26'),_0x5116b8,_0x595864[_0xe751('0x2a')][_0xe751('0x2c')]);return _0xd0ea61(_0x595864[_0xe751('0x2a')][_0xe751('0x2c')]);}logger['error'](_0xe751('0x26'),_0x5116b8,_0x595864[_0xe751('0x2a')]['message']);return _0x3812d2(_0x595864[_0xe751('0x2a')][_0xe751('0x2c')]);}else{logger[_0xe751('0x25')](_0xe751('0x26'),_0x5116b8,_0xe751('0x27'));_0x3812d2(_0x595864['result'][_0xe751('0x2c')]);}})['catch'](function(_0x4d6994){logger['error'](_0xe751('0x26'),_0x5116b8,_0x4d6994);_0xd0ea61(_0x4d6994);});});}function respondWithStatusCode(_0x154b63,_0x46db8b){_0x46db8b=_0x46db8b||0xcc;return function(_0x32de7f){if(_0x32de7f){return _0x154b63[_0xe751('0x2d')](_0x46db8b);}return _0x154b63[_0xe751('0x2e')](_0x46db8b)[_0xe751('0x2f')]();};}function respondWithResult(_0x1841b6,_0x15e175){_0x15e175=_0x15e175||0xc8;return function(_0x184da8){if(_0x184da8){return _0x1841b6[_0xe751('0x2e')](_0x15e175)[_0xe751('0x30')](_0x184da8);}};}function respondWithFilteredResult(_0x353927,_0x45596f){return function(_0x972a89){if(_0x972a89){var _0x330fac=_0x972a89[_0xe751('0x31')],_0x1a6288=_0x45596f[_0xe751('0x32')],_0x5b7a7f=_0x45596f['offset']+_0x45596f[_0xe751('0x33')],_0x272c3c;if(_0x5b7a7f>=_0x330fac){_0x5b7a7f=_0x330fac;_0x272c3c=0xc8;}else{_0x272c3c=0xce;}_0x353927['status'](_0x272c3c);return _0x353927[_0xe751('0x34')]('Content-Range',_0x1a6288+'-'+_0x5b7a7f+'/'+_0x330fac)['json'](_0x972a89);}return null;};}function patchUpdates(_0x39c9c1){return function(_0x1735f9){try{jsonpatch[_0xe751('0x35')](_0x1735f9,_0x39c9c1,!![]);}catch(_0x111a05){return BPromise['reject'](_0x111a05);}return _0x1735f9['save']();};}function saveUpdates(_0x2bc845,_0x7638ca){return function(_0x2b8ff5){if(_0x2b8ff5){return _0x2b8ff5['update'](_0x2bc845)['then'](function(_0x2d7adb){return _0x2d7adb;});}return null;};}function removeEntity(_0x23c955,_0x4124aa){return function(_0x84360b){if(_0x84360b){return _0x84360b[_0xe751('0x36')]()[_0xe751('0x24')](function(){_0x23c955[_0xe751('0x2e')](0xcc)[_0xe751('0x2f')]();});}};}function handleEntityNotFound(_0x3db491,_0x1d1c87){return function(_0x12763e){if(!_0x12763e){_0x3db491['sendStatus'](0x194);}return _0x12763e;};}function handleError(_0x5936e1,_0x44b638){_0x44b638=_0x44b638||0x1f4;return function(_0x394892){logger[_0xe751('0x2a')](_0x394892[_0xe751('0x37')]);if(_0x394892[_0xe751('0x38')]){delete _0x394892['name'];}_0x5936e1[_0xe751('0x2e')](_0x44b638)[_0xe751('0x39')](_0x394892);};}exports[_0xe751('0x3a')]=function(_0x139954,_0x1ab04f){var _0x25f052={},_0x43d369={},_0x1c0a50={'count':0x0,'rows':[]};var _0x5648f4=_['map'](db['MailMessage'][_0xe751('0x3b')],function(_0x2a5a29){return{'name':_0x2a5a29[_0xe751('0x3c')],'type':_0x2a5a29['type'][_0xe751('0x3d')]};});_0x43d369[_0xe751('0x3e')]=_[_0xe751('0x3f')](_0x5648f4,'name');_0x43d369[_0xe751('0x40')]=_[_0xe751('0x41')](_0x139954[_0xe751('0x40')]);_0x43d369[_0xe751('0x42')]=_[_0xe751('0x43')](_0x43d369['model'],_0x43d369[_0xe751('0x40')]);_0x25f052[_0xe751('0x44')]=_[_0xe751('0x43')](_0x43d369[_0xe751('0x3e')],qs[_0xe751('0x45')](_0x139954[_0xe751('0x40')]['fields']));_0x25f052['attributes']=_0x25f052[_0xe751('0x44')][_0xe751('0x46')]?_0x25f052[_0xe751('0x44')]:_0x43d369['model'];if(!_0x139954['query'][_0xe751('0x47')](_0xe751('0x48'))){_0x25f052[_0xe751('0x33')]=qs['limit'](_0x139954[_0xe751('0x40')]['limit']);_0x25f052['offset']=qs[_0xe751('0x32')](_0x139954[_0xe751('0x40')][_0xe751('0x32')]);}_0x25f052[_0xe751('0x49')]=qs[_0xe751('0x4a')](_0x139954[_0xe751('0x40')][_0xe751('0x4a')]);_0x25f052[_0xe751('0x4b')]=qs[_0xe751('0x42')](_[_0xe751('0x4c')](_0x139954[_0xe751('0x40')],_0x43d369[_0xe751('0x42')]),_0x5648f4);if(_0x139954['query'][_0xe751('0x4d')]){_0x25f052['where']=_[_0xe751('0x4e')](_0x25f052['where'],{'$or':_[_0xe751('0x3f')](_0x5648f4,function(_0x315cea){if(_0x315cea[_0xe751('0x4f')]!==_0xe751('0x50')){var _0x2d92b7={};_0x2d92b7[_0x315cea[_0xe751('0x38')]]={'$like':'%'+_0x139954[_0xe751('0x40')][_0xe751('0x4d')]+'%'};return _0x2d92b7;}})});}_0x25f052=_[_0xe751('0x4e')]({},_0x25f052,_0x139954[_0xe751('0x51')]);var _0x542b6d={'where':_0x25f052['where']};return db['MailMessage'][_0xe751('0x31')](_0x542b6d)[_0xe751('0x24')](function(_0x51c7a7){_0x1c0a50[_0xe751('0x31')]=_0x51c7a7;if(_0x139954[_0xe751('0x40')][_0xe751('0x52')]){_0x25f052[_0xe751('0x53')]=[{'all':!![]}];}return db[_0xe751('0x54')]['findAll'](_0x25f052);})['then'](function(_0x2def78){_0x1c0a50[_0xe751('0x55')]=_0x2def78;return _0x1c0a50;})[_0xe751('0x24')](respondWithFilteredResult(_0x1ab04f,_0x25f052))[_0xe751('0x56')](handleError(_0x1ab04f,null));};exports[_0xe751('0x57')]=function(_0x20e09f,_0x3e03b6){var _0x58c242={'raw':!![],'where':{'id':_0x20e09f[_0xe751('0x58')]['id']}},_0x5b327a={};_0x5b327a['model']=_['keys'](db[_0xe751('0x54')][_0xe751('0x3b')]);_0x5b327a[_0xe751('0x40')]=_['keys'](_0x20e09f[_0xe751('0x40')]);_0x5b327a['filters']=_['intersection'](_0x5b327a['model'],_0x5b327a[_0xe751('0x40')]);_0x58c242[_0xe751('0x44')]=_[_0xe751('0x43')](_0x5b327a[_0xe751('0x3e')],qs[_0xe751('0x45')](_0x20e09f[_0xe751('0x40')][_0xe751('0x45')]));_0x58c242[_0xe751('0x44')]=_0x58c242[_0xe751('0x44')][_0xe751('0x46')]?_0x58c242[_0xe751('0x44')]:_0x5b327a[_0xe751('0x3e')];if(_0x20e09f[_0xe751('0x40')][_0xe751('0x52')]){_0x58c242[_0xe751('0x53')]=[{'all':!![]}];}_0x58c242=_[_0xe751('0x4e')]({},_0x58c242,_0x20e09f[_0xe751('0x51')]);return db[_0xe751('0x54')][_0xe751('0x59')](_0x58c242)[_0xe751('0x24')](handleEntityNotFound(_0x3e03b6,null))[_0xe751('0x24')](respondWithResult(_0x3e03b6,null))[_0xe751('0x56')](handleError(_0x3e03b6,null));};exports[_0xe751('0x5a')]=function(_0x3b20c0,_0x5a60a4){if(_0x3b20c0['body']['id']){delete _0x3b20c0[_0xe751('0x5b')]['id'];}return db['MailMessage'][_0xe751('0x59')]({'where':{'id':_0x3b20c0[_0xe751('0x58')]['id']}})[_0xe751('0x24')](handleEntityNotFound(_0x5a60a4,null))['then'](saveUpdates(_0x3b20c0[_0xe751('0x5b')],null))[_0xe751('0x24')](respondWithResult(_0x5a60a4,null))[_0xe751('0x56')](handleError(_0x5a60a4,null));};exports[_0xe751('0x36')]=function(_0x58c5a2,_0x46eb4e){return db[_0xe751('0x54')][_0xe751('0x59')]({'where':{'id':_0x58c5a2[_0xe751('0x58')]['id']}})[_0xe751('0x24')](handleEntityNotFound(_0x46eb4e,null))['then'](removeEntity(_0x46eb4e,null))['catch'](handleError(_0x46eb4e,null));};exports[_0xe751('0x5c')]=function(_0x799a59,_0x3fe627){return db[_0xe751('0x54')][_0xe751('0x5c')]()[_0xe751('0x24')](respondWithResult(_0x3fe627,null))[_0xe751('0x56')](handleError(_0x3fe627,null));};exports[_0xe751('0x5d')]=function(_0x516fb9,_0x156c23){return db['MailMessage'][_0xe751('0x5d')](_0x516fb9[_0xe751('0x5b')])['then'](function(_0x5c352b){if(_0x5c352b){if(_0x5c352b[_0xe751('0x5e')]===_0xe751('0x5f')&&!_0x5c352b['secret']){var _0x58510f,_0x5224d1,_0x24c1b8;if(_0x516fb9['body']['to']){_0x5224d1=_0x516fb9[_0xe751('0x5b')]['to'][_0xe751('0x60')](',')[0x0];}return db[_0xe751('0x61')][_0xe751('0x62')]({'where':{'id':_0x5c352b['MailAccountId']},'include':[{'model':db[_0xe751('0x63')],'as':_0xe751('0x64'),'include':[{'model':db[_0xe751('0x65')],'as':'Contacts','where':{'email':_0x5224d1},'limit':0x1,'order':[['updatedAt',_0xe751('0x66')]]}]},{'model':db[_0xe751('0x67')],'as':_0xe751('0x68'),'raw':!![]}]})[_0xe751('0x24')](function(_0x202184){_0x58510f=_0x202184;if(_0x58510f&&_0x58510f[_0xe751('0x68')]){var _0x450155={'tls':{'rejectUnauthorized':![]}};if(_[_0xe751('0x69')](_0x58510f[_0xe751('0x68')]['service'])){_0x450155['host']=_0x58510f[_0xe751('0x68')]['host'];_0x450155[_0xe751('0x6a')]=_0x58510f[_0xe751('0x68')][_0xe751('0x6a')];_0x450155[_0xe751('0x6b')]=_0x58510f[_0xe751('0x68')]['secure'];if(_0x58510f[_0xe751('0x68')][_0xe751('0x6c')]){_0x450155[_0xe751('0x6d')]={'user':_0x58510f[_0xe751('0x68')][_0xe751('0x6e')],'pass':_0x58510f[_0xe751('0x68')][_0xe751('0x6f')]};}}else{_0x450155[_0xe751('0x70')]=_0x58510f[_0xe751('0x68')]['service'];_0x450155[_0xe751('0x6d')]={'user':_0x58510f[_0xe751('0x68')][_0xe751('0x6e')],'pass':_0x58510f[_0xe751('0x68')][_0xe751('0x6f')]};_0x450155['secure']=_0x58510f[_0xe751('0x68')][_0xe751('0x6b')];}if(_0x516fb9[_0xe751('0x5b')]['attachments']&&_0x516fb9[_0xe751('0x5b')][_0xe751('0x71')][_0xe751('0x46')]){for(var _0x1298aa=0x0;_0x1298aa<_0x516fb9[_0xe751('0x5b')]['attachments'][_0xe751('0x46')];_0x1298aa+=0x1){_0x516fb9['body'][_0xe751('0x71')][_0x1298aa]={'filename':_0x516fb9['body']['attachments'][_0x1298aa]['name'],'path':path[_0xe751('0x72')](config[_0xe751('0x73')],'server/files/attachments',_0x516fb9[_0xe751('0x5b')][_0xe751('0x71')][_0x1298aa][_0xe751('0x74')])};}}_0x24c1b8={'account':_0x450155,'message':_0x516fb9[_0xe751('0x5b')]};return;}})[_0xe751('0x24')](function(){if(_0x58510f[_0xe751('0x64')]){if(_0x58510f[_0xe751('0x64')]['Contacts'][_0xe751('0x46')]){return _0x58510f['List'][_0xe751('0x75')][0x0];}else{return db[_0xe751('0x65')]['create'](_[_0xe751('0x1b')](_0x516fb9[_0xe751('0x5b')],{'firstName':_0x516fb9[_0xe751('0x5b')]['to'],'email':_0x516fb9[_0xe751('0x5b')]['to'],'phone':_0x516fb9[_0xe751('0x5b')]['to'],'ListId':_0x58510f[_0xe751('0x76')]}));}}else{throw new Error(_0xe751('0x77'));}})['then'](function(){if(_0x24c1b8){return respondWithRpcPromise('SendMail',_0xe751('0x78'),_0x24c1b8,client9003)[_0xe751('0x24')](function(_0x1b04ee){return _0x5c352b[_0xe751('0x5a')]({'read':!![],'messageId':_0x1b04ee[_0xe751('0x79')],'sentAt':moment()[_0xe751('0x7a')](_0xe751('0x7b'))});})[_0xe751('0x56')](function(_0x2d6396){logger[_0xe751('0x2a')]('%s',JSON[_0xe751('0x29')](_0x2d6396));return _0x5c352b;});}return _0x5c352b;});}return _0x5c352b;}})[_0xe751('0x24')](respondWithResult(_0x156c23,0xc9))[_0xe751('0x56')](handleError(_0x156c23,null));};var interaction_log=require(_0xe751('0x7c'))(_0xe751('0x7d'));exports['accept']=function(_0x48040d,_0x57c631,_0x3eaec2){var _0x2a94b6={'channel':_0xe751('0x7e')};if(_0x48040d[_0xe751('0x5b')]['id']){delete _0x48040d['body']['id'];}_0x48040d[_0xe751('0x5b')][_0xe751('0x7f')]=!![];_0x48040d[_0xe751('0x5b')][_0xe751('0x80')]=moment()[_0xe751('0x7a')](_0xe751('0x7b'));_0x48040d['body']['UserId']=_0x48040d[_0xe751('0x5b')]['UserId']||_0x48040d['user']['id'];return db[_0xe751('0x54')][_0xe751('0x59')]({'where':{'id':_0x48040d['params']['id'],'UserId':null},'include':[{'model':db['CmContact'],'as':_0xe751('0x81')}]})[_0xe751('0x24')](handleEntityNotFound(_0x57c631,null))[_0xe751('0x24')](saveUpdates(_0x48040d[_0xe751('0x5b')],null))[_0xe751('0x24')](function(_0x3d3bf3){if(_0x3d3bf3){_0x2a94b6[_0xe751('0x2c')]=_0x3d3bf3[_0xe751('0x82')]({'plain':!![]});return db['MailInteraction'][_0xe751('0x59')]({'where':{'id':_0x3d3bf3[_0xe751('0x83')]}});}return null;})[_0xe751('0x24')](handleEntityNotFound(_0x57c631,null))[_0xe751('0x24')](function(_0x34f2d9){if(_0x34f2d9){return _0x34f2d9[_0xe751('0x5a')]({'UserId':_0x48040d[_0xe751('0x5b')][_0xe751('0x84')],'read1stAt':_[_0xe751('0x69')](_0x34f2d9[_0xe751('0x85')])?moment()['format'](_0xe751('0x7b')):undefined});}return null;})[_0xe751('0x24')](function(_0x3a5936){if(_0x3a5936){_0x2a94b6[_0xe751('0x86')]=_0x3a5936[_0xe751('0x82')]({'plain':!![]});interaction_log[_0xe751('0x25')](_0xe751('0x87'),_0x48040d['user']['id'],_0x48040d[_0xe751('0x6e')][_0xe751('0x38')],_0x48040d[_0xe751('0x6e')][_0xe751('0x88')],_0x2a94b6[_0xe751('0x86')]['id'],_0x48040d[_0xe751('0x5b')]?JSON[_0xe751('0x29')](_0x48040d['body']):_0xe751('0x89'));return respondWithRpcPromise(_0xe751('0x8a'),_0xe751('0x8b'),_0x2a94b6);}return null;})[_0xe751('0x24')](function(_0x5bef81){if(_0x5bef81){if(_0x48040d['body'][_0xe751('0x8c')]){_0x2a94b6[_0xe751('0x2c')][_0xe751('0x8d')]=util[_0xe751('0x7a')](_0xe751('0x8e'),_0x48040d[_0xe751('0x6e')]['name']);_0x2a94b6['message'][_0xe751('0x8f')]=_0x2a94b6['channel'];_0x2a94b6[_0xe751('0x2c')][_0xe751('0x90')]=_0xe751('0x91');return respondWithRpcPromise('EventManager',_0xe751('0x92'),{'event':_0xe751('0x93'),'message':_0x2a94b6[_0xe751('0x2c')]},client9002)[_0xe751('0x24')](function(){return _0x2a94b6;});}return _0x2a94b6;}return null;})[_0xe751('0x24')](respondWithResult(_0x57c631,null))[_0xe751('0x56')](handleError(_0x57c631,null));};var interaction_log=require(_0xe751('0x7c'))('mail-interactions');exports['reject']=function(_0x1735c5,_0xa57b3d,_0x4d2fd8){var _0x319e16={'agent':{},'channel':'mail'};if(_0x1735c5[_0xe751('0x5b')]['id']){delete _0x1735c5[_0xe751('0x5b')]['id'];}_0x1735c5[_0xe751('0x5b')][_0xe751('0x84')]=_0x1735c5[_0xe751('0x5b')][_0xe751('0x84')]||_0x1735c5[_0xe751('0x6e')]['id'];_0x319e16['agent']['id']=_0x1735c5[_0xe751('0x5b')][_0xe751('0x84')];return db[_0xe751('0x54')][_0xe751('0x59')]({'where':{'id':_0x1735c5[_0xe751('0x58')]['id'],'UserId':null}})[_0xe751('0x24')](handleEntityNotFound(_0xa57b3d,null))[_0xe751('0x24')](function(_0x31d67d){if(_0x31d67d){_0x319e16[_0xe751('0x2c')]=_0x31d67d['get']({'plain':!![]});return db[_0xe751('0x94')][_0xe751('0x59')]({'where':{'id':_0x31d67d[_0xe751('0x83')]}});}return null;})[_0xe751('0x24')](handleEntityNotFound(_0xa57b3d,null))[_0xe751('0x24')](function(_0x2f5e43){if(_0x2f5e43){_0x319e16[_0xe751('0x86')]=_0x2f5e43[_0xe751('0x82')]({'plain':!![]});interaction_log[_0xe751('0x25')](_0xe751('0x95'),_0x1735c5[_0xe751('0x6e')]['id'],_0x1735c5[_0xe751('0x6e')][_0xe751('0x38')],_0x1735c5[_0xe751('0x6e')][_0xe751('0x88')],_0x319e16[_0xe751('0x86')]['id'],_0x1735c5[_0xe751('0x5b')]?JSON['stringify'](_0x1735c5[_0xe751('0x5b')]):'null');return respondWithRpcPromise(_0xe751('0x96'),_0xe751('0x97'),_0x319e16);}return null;})[_0xe751('0x24')](function(_0x452572){if(_0x452572){_0x452572[_0xe751('0x2c')][_0xe751('0x8d')]=util[_0xe751('0x7a')](_0xe751('0x8e'),_0x1735c5['user'][_0xe751('0x38')]);_0x452572[_0xe751('0x2c')][_0xe751('0x8f')]=_0x319e16[_0xe751('0x8f')];_0x452572['message'][_0xe751('0x90')]=_0xe751('0x98');respondWithRpcPromise('EventManager','EventManager',{'event':_0xe751('0x99'),'message':_0x452572['message']},client9002);return _0x319e16;}return null;})[_0xe751('0x24')](respondWithResult(_0xa57b3d,null))['catch'](handleError(_0xa57b3d,null));};exports['download']=function(_0x30bb3c,_0x10a2ed){var _0x555dab=moment()[_0xe751('0x9a')]()[_0xe751('0x9b')]();var _0x495d2f=path['join'](config[_0xe751('0x73')],_0xe751('0x9c'),_0xe751('0x9d'),_0xe751('0x9e'));var _0x1d90ce=path[_0xe751('0x72')](config[_0xe751('0x73')],_0xe751('0x9c'),'files',_0xe751('0x71'));var _0x19d716=util[_0xe751('0x7a')](_0xe751('0x9f'),_0x555dab);return db[_0xe751('0x54')][_0xe751('0x59')]({'where':{'id':_0x30bb3c[_0xe751('0x58')]['id']},'attributes':['id',_0xe751('0x5b'),_0xe751('0xa0'),'to','cc',_0xe751('0xa1'),'subject',_0xe751('0xa2')],'include':_0x30bb3c[_0xe751('0x40')][_0xe751('0x71')]?[{'model':db[_0xe751('0xa3')],'as':_0xe751('0xa4')}]:undefined})[_0xe751('0x24')](handleEntityNotFound(_0x10a2ed,null))[_0xe751('0x24')](function(_0x361567){if(_0x361567){var _0x1d28fa=_0x361567;var _0xe08727={'from':_0x1d28fa[_0xe751('0xa0')],'to':_0x1d28fa['to'],'subject':_0x1d28fa[_0xe751('0xa5')],'html':_0x1d28fa[_0xe751('0x5b')],'headers':{'Date':moment(_0x1d28fa[_0xe751('0xa2')])[_0xe751('0x7a')](_0xe751('0xa6'))},'attachments':[]};if(_0x361567['cc']){_0xe08727[_0xe751('0xa7')]['Cc']=_0x361567['cc'];}if(_0x361567['bcc']){_0xe08727[_0xe751('0xa7')][_0xe751('0xa8')]=_0x361567['bcc'];}return new BPromise(function(_0x1126b5,_0x281993){if(_0x361567[_0xe751('0xa4')]){for(var _0x30b7ca=0x0;_0x30b7ca<_0x361567[_0xe751('0xa4')][_0xe751('0x46')];_0x30b7ca++){var _0x41dd2a=_0x361567[_0xe751('0xa4')][_0x30b7ca];var _0x171ddc=path['join'](_0x1d90ce,_0x41dd2a[_0xe751('0x74')]);if(fs[_0xe751('0xa9')](_0x171ddc)){_0xe08727[_0xe751('0x71')]['push']({'name':_0x41dd2a['name'],'contentType':_0x41dd2a['type'],'data':fs[_0xe751('0xaa')](_0x171ddc)});}}}emlformat[_0xe751('0xab')](_0xe08727,function(_0x248ae3,_0x2639d8){if(_0x248ae3)return _0x281993(_0x248ae3);fs[_0xe751('0xac')](path[_0xe751('0x72')](_0x495d2f,_0x19d716),_0x2639d8);return _0x1126b5(_0x2639d8);});});}})[_0xe751('0x24')](function(_0x48a588){if(_0x48a588){return _0x10a2ed[_0xe751('0xad')](path[_0xe751('0x72')](_0x495d2f,_0x19d716),_0x19d716,function(_0x78dcfe){if(_0x78dcfe){console[_0xe751('0xae')]('err',_0x78dcfe);}else{fs['unlinkSync'](path[_0xe751('0x72')](_0x495d2f,_0x19d716));}});}})[_0xe751('0x56')](handleError(_0x10a2ed,null));};