Built motion from commit (unavailable).|2.3.98
[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 _0x85c2=['unix','server','files','message-%s.eml','from','bcc','subject','createdAt','Attachment','Attachments','headers','existsSync','type','readFileSync','build','unlinkSync','html-pdf','rimraf','fast-json-patch','moment','bluebird','mustache','util','path','to-csv','ejs','lodash','squel','jsforce','desk.js','querystring','papaparse','../../components/auth/service','ioredis','../../components/parsers/qs','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','redis','localhost','./mailMessage.socket','register','jayson/promise','client','http','The\x20password\x20must\x20be\x20at\x20least\x208\x20characters\x20long\x20and\x20have\x201\x20lowercase\x20character,\x201\x20uppercase\x20character,\x201\x20number\x20and\x201\x20special\x20character\x20~!@#$%^&-_=+[{]}.','request','MailMessage,\x20%s,\x20%s','request\x20sent','debug','error','code','message','catch','sendStatus','end','count','offset','status','set','Content-Range','apply','reject','save','destroy','then','stack','name','send','index','MailMessage','rawAttributes','model','keys','query','filters','intersection','attributes','fields','length','nolimit','limit','order','sort','pick','filter','where','merge','map','key','VIRTUAL','field','options','include','findAll','rows','show','params','includeAll','find','update','describe','create','body','direction','secret','MailAccount','findOne','MailAccountId','Smtp','service','host','port','secure','authentication','auth','user','pass','attachments','join','root','server/files/attachments','basename','SendMail','sendMail','messageId','YYYY-MM-DD\x20HH:mm:ss','stringify','mail-interactions','accept','mail','read','readAt','format','get','MailInteractionId','UserId','isNil','read1stAt','info','[MAILMESSAGE:ACCEPT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','role','interaction','null','AcceptMessage','acceptMessage','manual','SIP/%s','channel','event','EventManager','agent','MailInteraction','[MAILMESSAGE:REJECT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','rejectMessage','interface','rejectmessage','download'];(function(_0x3d78d7,_0x44acea){var _0x4b6784=function(_0x284157){while(--_0x284157){_0x3d78d7['push'](_0x3d78d7['shift']());}};_0x4b6784(++_0x44acea);}(_0x85c2,0x1f0));var _0x285c=function(_0x167cc1,_0x56ef5a){_0x167cc1=_0x167cc1-0x0;var _0x10bc4b=_0x85c2[_0x167cc1];return _0x10bc4b;};'use strict';var pdf=require(_0x285c('0x0'));var emlformat=require('eml-format');var rimraf=require(_0x285c('0x1'));var zipdir=require('zip-dir');var jsonpatch=require(_0x285c('0x2'));var rp=require('request-promise');var moment=require(_0x285c('0x3'));var BPromise=require(_0x285c('0x4'));var Mustache=require(_0x285c('0x5'));var util=require(_0x285c('0x6'));var path=require(_0x285c('0x7'));var sox=require('sox');var csv=require(_0x285c('0x8'));var ejs=require(_0x285c('0x9'));var fs=require('fs');var _=require(_0x285c('0xa'));var squel=require(_0x285c('0xb'));var crypto=require('crypto');var jsforce=require(_0x285c('0xc'));var deskjs=require(_0x285c('0xd'));var toCsv=require(_0x285c('0x8'));var querystring=require(_0x285c('0xe'));var Papa=require(_0x285c('0xf'));var authService=require(_0x285c('0x10'));var hardwareService=require('../../config/license/hardware');var Redis=require(_0x285c('0x11'));var qs=require(_0x285c('0x12'));var logger=require(_0x285c('0x13'))(_0x285c('0x14'));var utils=require(_0x285c('0x15'));var config=require(_0x285c('0x16'));var db=require(_0x285c('0x17'))['db'];config[_0x285c('0x18')]=_['defaults'](config[_0x285c('0x18')],{'host':_0x285c('0x19'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0x285c('0x18')]));require(_0x285c('0x1a'))[_0x285c('0x1b')](socket);var jayson=require(_0x285c('0x1c'));var client=jayson[_0x285c('0x1d')]['http']({'port':0x232c});var client9003=jayson[_0x285c('0x1d')][_0x285c('0x1e')]({'port':0x232b});var client9002=jayson[_0x285c('0x1d')]['http']({'port':0x232a});function checkPasswordPattern(_0x63440a,_0x53c882,_0x5d597c){if(_0x5d597c){var _0x50e5d1=new RegExp(/(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[?!@#\$%\^&\*~\-_=+[{\]\}])(?=.{8,})/);if(_0x50e5d1['test'](_0x53c882)){return _0x63440a;}else{throw new Error(_0x285c('0x1f'));}}else{return _0x63440a;}}function respondWithRpcPromise(_0x361306,_0x2177ff,_0x1c2954,_0x52c8eb){return new BPromise(function(_0x400d72,_0x232b31){var _0x145445=_0x52c8eb||client;return _0x145445[_0x285c('0x20')](_0x361306,_0x1c2954)['then'](function(_0x5270c2){logger['info'](_0x285c('0x21'),_0x2177ff,_0x285c('0x22'));logger[_0x285c('0x23')]('MailMessage,\x20%s,\x20%s,\x20%s',_0x2177ff,_0x285c('0x22'),JSON['stringify'](_0x5270c2));if(_0x5270c2[_0x285c('0x24')]){if(_0x5270c2[_0x285c('0x24')][_0x285c('0x25')]===0x1f4){logger[_0x285c('0x24')]('MailMessage,\x20%s,\x20%s',_0x2177ff,_0x5270c2[_0x285c('0x24')][_0x285c('0x26')]);return _0x232b31(_0x5270c2['error']['message']);}logger[_0x285c('0x24')](_0x285c('0x21'),_0x2177ff,_0x5270c2[_0x285c('0x24')]['message']);return _0x400d72(_0x5270c2[_0x285c('0x24')][_0x285c('0x26')]);}else{logger['info'](_0x285c('0x21'),_0x2177ff,_0x285c('0x22'));_0x400d72(_0x5270c2['result'][_0x285c('0x26')]);}})[_0x285c('0x27')](function(_0x523882){logger[_0x285c('0x24')]('MailMessage,\x20%s,\x20%s',_0x2177ff,_0x523882);_0x232b31(_0x523882);});});}function respondWithStatusCode(_0x4f4a1c,_0x284f0d){_0x284f0d=_0x284f0d||0xcc;return function(_0x12ac79){if(_0x12ac79){return _0x4f4a1c[_0x285c('0x28')](_0x284f0d);}return _0x4f4a1c['status'](_0x284f0d)[_0x285c('0x29')]();};}function respondWithResult(_0x5540ee,_0x8a31e0){_0x8a31e0=_0x8a31e0||0xc8;return function(_0x42e6f9){if(_0x42e6f9){return _0x5540ee['status'](_0x8a31e0)['json'](_0x42e6f9);}};}function respondWithFilteredResult(_0x404483,_0x54bea5){return function(_0x348cee){if(_0x348cee){var _0x1e0eee=_0x348cee[_0x285c('0x2a')],_0x4da3b6=_0x54bea5[_0x285c('0x2b')],_0x14d08d=_0x54bea5['offset']+_0x54bea5['limit'],_0x3a628c;if(_0x14d08d>=_0x1e0eee){_0x14d08d=_0x1e0eee;_0x3a628c=0xc8;}else{_0x3a628c=0xce;}_0x404483[_0x285c('0x2c')](_0x3a628c);return _0x404483[_0x285c('0x2d')](_0x285c('0x2e'),_0x4da3b6+'-'+_0x14d08d+'/'+_0x1e0eee)['json'](_0x348cee);}return null;};}function patchUpdates(_0x48bd92){return function(_0x5bdd95){try{jsonpatch[_0x285c('0x2f')](_0x5bdd95,_0x48bd92,!![]);}catch(_0x1a293d){return BPromise[_0x285c('0x30')](_0x1a293d);}return _0x5bdd95[_0x285c('0x31')]();};}function saveUpdates(_0x261feb,_0x136268){return function(_0x511520){if(_0x511520){return _0x511520['update'](_0x261feb)['then'](function(_0x124f9d){return _0x124f9d;});}return null;};}function removeEntity(_0x5dd980,_0x32c61b){return function(_0x587811){if(_0x587811){return _0x587811[_0x285c('0x32')]()[_0x285c('0x33')](function(){_0x5dd980['status'](0xcc)[_0x285c('0x29')]();});}};}function handleEntityNotFound(_0xb981dd,_0x22d6e0){return function(_0x769722){if(!_0x769722){_0xb981dd[_0x285c('0x28')](0x194);}return _0x769722;};}function handleError(_0x37b1f1,_0x5bcb20){_0x5bcb20=_0x5bcb20||0x1f4;return function(_0xe6ab49){logger[_0x285c('0x24')](_0xe6ab49[_0x285c('0x34')]);if(_0xe6ab49[_0x285c('0x35')]){delete _0xe6ab49['name'];}_0x37b1f1['status'](_0x5bcb20)[_0x285c('0x36')](_0xe6ab49);};}exports[_0x285c('0x37')]=function(_0x141136,_0x51f7f9){var _0x2d80e0={},_0x3a4c5={},_0xc8500d={'count':0x0,'rows':[]};var _0x3cfb77=db[_0x285c('0x38')][_0x285c('0x39')];_0x3a4c5[_0x285c('0x3a')]=_[_0x285c('0x3b')](_0x3cfb77);_0x3a4c5[_0x285c('0x3c')]=_['keys'](_0x141136[_0x285c('0x3c')]);_0x3a4c5[_0x285c('0x3d')]=_[_0x285c('0x3e')](_0x3a4c5['model'],_0x3a4c5['query']);_0x2d80e0[_0x285c('0x3f')]=_[_0x285c('0x3e')](_0x3a4c5[_0x285c('0x3a')],qs[_0x285c('0x40')](_0x141136[_0x285c('0x3c')][_0x285c('0x40')]));_0x2d80e0[_0x285c('0x3f')]=_0x2d80e0['attributes'][_0x285c('0x41')]?_0x2d80e0['attributes']:_0x3a4c5['model'];if(!_0x141136['query']['hasOwnProperty'](_0x285c('0x42'))){_0x2d80e0['limit']=qs[_0x285c('0x43')](_0x141136[_0x285c('0x3c')][_0x285c('0x43')]);_0x2d80e0['offset']=qs[_0x285c('0x2b')](_0x141136[_0x285c('0x3c')][_0x285c('0x2b')]);}_0x2d80e0[_0x285c('0x44')]=qs[_0x285c('0x45')](_0x141136[_0x285c('0x3c')][_0x285c('0x45')]);_0x2d80e0['where']=qs[_0x285c('0x3d')](_[_0x285c('0x46')](_0x141136['query'],_0x3a4c5[_0x285c('0x3d')]));if(_0x141136[_0x285c('0x3c')][_0x285c('0x47')]){_0x2d80e0[_0x285c('0x48')]=_[_0x285c('0x49')](_0x2d80e0[_0x285c('0x48')],{'$or':_[_0x285c('0x4a')](_0x3cfb77,function(_0x5cefde){if(_0x5cefde['type'][_0x285c('0x4b')]!==_0x285c('0x4c')){var _0x17582b={};_0x17582b[_0x5cefde[_0x285c('0x4d')]]={'$like':'%'+_0x141136['query'][_0x285c('0x47')]+'%'};return _0x17582b;}})});}_0x2d80e0=_[_0x285c('0x49')]({},_0x2d80e0,_0x141136[_0x285c('0x4e')]);var _0x2dd69d={'where':_0x2d80e0[_0x285c('0x48')]};return db[_0x285c('0x38')][_0x285c('0x2a')](_0x2dd69d)['then'](function(_0x261371){_0xc8500d[_0x285c('0x2a')]=_0x261371;if(_0x141136['query']['includeAll']){_0x2d80e0[_0x285c('0x4f')]=[{'all':!![]}];}return db[_0x285c('0x38')][_0x285c('0x50')](_0x2d80e0);})[_0x285c('0x33')](function(_0x38b724){_0xc8500d[_0x285c('0x51')]=_0x38b724;return _0xc8500d;})['then'](respondWithFilteredResult(_0x51f7f9,_0x2d80e0))[_0x285c('0x27')](handleError(_0x51f7f9,null));};exports[_0x285c('0x52')]=function(_0x277f75,_0x2662e7){var _0xc0910d={'raw':!![],'where':{'id':_0x277f75[_0x285c('0x53')]['id']}},_0xe46d={};_0xe46d[_0x285c('0x3a')]=_[_0x285c('0x3b')](db['MailMessage'][_0x285c('0x39')]);_0xe46d[_0x285c('0x3c')]=_[_0x285c('0x3b')](_0x277f75[_0x285c('0x3c')]);_0xe46d['filters']=_[_0x285c('0x3e')](_0xe46d[_0x285c('0x3a')],_0xe46d['query']);_0xc0910d[_0x285c('0x3f')]=_[_0x285c('0x3e')](_0xe46d[_0x285c('0x3a')],qs[_0x285c('0x40')](_0x277f75['query'][_0x285c('0x40')]));_0xc0910d[_0x285c('0x3f')]=_0xc0910d['attributes'][_0x285c('0x41')]?_0xc0910d[_0x285c('0x3f')]:_0xe46d[_0x285c('0x3a')];if(_0x277f75['query'][_0x285c('0x54')]){_0xc0910d[_0x285c('0x4f')]=[{'all':!![]}];}_0xc0910d=_[_0x285c('0x49')]({},_0xc0910d,_0x277f75[_0x285c('0x4e')]);return db[_0x285c('0x38')][_0x285c('0x55')](_0xc0910d)[_0x285c('0x33')](handleEntityNotFound(_0x2662e7,null))[_0x285c('0x33')](respondWithResult(_0x2662e7,null))[_0x285c('0x27')](handleError(_0x2662e7,null));};exports[_0x285c('0x56')]=function(_0x364658,_0x18e397){if(_0x364658['body']['id']){delete _0x364658['body']['id'];}return db[_0x285c('0x38')][_0x285c('0x55')]({'where':{'id':_0x364658[_0x285c('0x53')]['id']}})[_0x285c('0x33')](handleEntityNotFound(_0x18e397,null))[_0x285c('0x33')](saveUpdates(_0x364658['body'],null))[_0x285c('0x33')](respondWithResult(_0x18e397,null))[_0x285c('0x27')](handleError(_0x18e397,null));};exports[_0x285c('0x32')]=function(_0x344a4c,_0x5d8054){return db[_0x285c('0x38')][_0x285c('0x55')]({'where':{'id':_0x344a4c[_0x285c('0x53')]['id']}})['then'](handleEntityNotFound(_0x5d8054,null))[_0x285c('0x33')](removeEntity(_0x5d8054,null))[_0x285c('0x27')](handleError(_0x5d8054,null));};exports['describe']=function(_0x10b5a6,_0x162137){return db[_0x285c('0x38')][_0x285c('0x57')]()[_0x285c('0x33')](respondWithResult(_0x162137,null))[_0x285c('0x27')](handleError(_0x162137,null));};exports['create']=function(_0xee4658,_0x3f905a){return db['MailMessage'][_0x285c('0x58')](_0xee4658[_0x285c('0x59')])[_0x285c('0x33')](function(_0x59eefc){if(_0x59eefc){if(_0x59eefc[_0x285c('0x5a')]==='out'&&!_0x59eefc[_0x285c('0x5b')]){return db[_0x285c('0x5c')][_0x285c('0x5d')]({'where':{'id':_0x59eefc[_0x285c('0x5e')]},'include':[{'model':db['MailServerOut'],'as':_0x285c('0x5f'),'raw':!![]}]})[_0x285c('0x33')](function(_0x42fa76){if(_0x42fa76&&_0x42fa76[_0x285c('0x5f')]){var _0x11236e={'tls':{'rejectUnauthorized':![]}};if(_['isNil'](_0x42fa76[_0x285c('0x5f')][_0x285c('0x60')])){_0x11236e[_0x285c('0x61')]=_0x42fa76[_0x285c('0x5f')]['host'];_0x11236e[_0x285c('0x62')]=_0x42fa76[_0x285c('0x5f')][_0x285c('0x62')];_0x11236e[_0x285c('0x63')]=_0x42fa76[_0x285c('0x5f')][_0x285c('0x63')];if(_0x42fa76[_0x285c('0x5f')][_0x285c('0x64')]){_0x11236e[_0x285c('0x65')]={'user':_0x42fa76['Smtp']['user'],'pass':_0x42fa76[_0x285c('0x5f')]['pass']};}}else{_0x11236e[_0x285c('0x60')]=_0x42fa76[_0x285c('0x5f')][_0x285c('0x60')];_0x11236e[_0x285c('0x65')]={'user':_0x42fa76['Smtp'][_0x285c('0x66')],'pass':_0x42fa76[_0x285c('0x5f')][_0x285c('0x67')]};_0x11236e[_0x285c('0x63')]=_0x42fa76[_0x285c('0x5f')][_0x285c('0x63')];}if(_0xee4658['body'][_0x285c('0x68')]&&_0xee4658[_0x285c('0x59')]['attachments'][_0x285c('0x41')]){for(var _0x39f1f4=0x0;_0x39f1f4<_0xee4658['body'][_0x285c('0x68')][_0x285c('0x41')];_0x39f1f4+=0x1){_0xee4658[_0x285c('0x59')][_0x285c('0x68')][_0x39f1f4]={'filename':_0xee4658[_0x285c('0x59')][_0x285c('0x68')][_0x39f1f4][_0x285c('0x35')],'path':path[_0x285c('0x69')](config[_0x285c('0x6a')],_0x285c('0x6b'),_0xee4658['body']['attachments'][_0x39f1f4][_0x285c('0x6c')])};}}return{'account':_0x11236e,'message':_0xee4658['body']};}})[_0x285c('0x33')](function(_0x4eab6e){if(_0x4eab6e){return respondWithRpcPromise(_0x285c('0x6d'),_0x285c('0x6e'),_0x4eab6e,client9003)[_0x285c('0x33')](function(_0xf60361){return _0x59eefc[_0x285c('0x56')]({'read':!![],'messageId':_0xf60361[_0x285c('0x6f')],'sentAt':moment()['format'](_0x285c('0x70'))});})[_0x285c('0x27')](function(_0x50c8cd){logger['error']('%s',JSON[_0x285c('0x71')](_0x50c8cd));return _0x59eefc;});}return _0x59eefc;});}return _0x59eefc;}})[_0x285c('0x33')](respondWithResult(_0x3f905a,0xc9))[_0x285c('0x27')](handleError(_0x3f905a,null));};var interaction_log=require(_0x285c('0x13'))(_0x285c('0x72'));exports[_0x285c('0x73')]=function(_0x6bb6b3,_0x5d93d0,_0x2f530f){var _0x2e027a={'channel':_0x285c('0x74')};if(_0x6bb6b3[_0x285c('0x59')]['id']){delete _0x6bb6b3[_0x285c('0x59')]['id'];}_0x6bb6b3[_0x285c('0x59')][_0x285c('0x75')]=!![];_0x6bb6b3['body'][_0x285c('0x76')]=moment()[_0x285c('0x77')](_0x285c('0x70'));_0x6bb6b3[_0x285c('0x59')]['UserId']=_0x6bb6b3['body']['UserId']||_0x6bb6b3[_0x285c('0x66')]['id'];return db['MailMessage']['find']({'where':{'id':_0x6bb6b3[_0x285c('0x53')]['id'],'UserId':null},'include':[{'model':db['CmContact'],'as':'Contact'}]})[_0x285c('0x33')](handleEntityNotFound(_0x5d93d0,null))[_0x285c('0x33')](saveUpdates(_0x6bb6b3['body'],null))['then'](function(_0x140a6b){if(_0x140a6b){_0x2e027a[_0x285c('0x26')]=_0x140a6b[_0x285c('0x78')]({'plain':!![]});return db['MailInteraction'][_0x285c('0x55')]({'where':{'id':_0x140a6b[_0x285c('0x79')]}});}return null;})['then'](handleEntityNotFound(_0x5d93d0,null))['then'](function(_0x8e2e01){if(_0x8e2e01){return _0x8e2e01[_0x285c('0x56')]({'UserId':_0x6bb6b3[_0x285c('0x59')][_0x285c('0x7a')],'read1stAt':_[_0x285c('0x7b')](_0x8e2e01[_0x285c('0x7c')])?moment()['format'](_0x285c('0x70')):undefined});}return null;})['then'](function(_0x552f6e){if(_0x552f6e){_0x2e027a['interaction']=_0x552f6e['get']({'plain':!![]});interaction_log[_0x285c('0x7d')](_0x285c('0x7e'),_0x6bb6b3[_0x285c('0x66')]['id'],_0x6bb6b3[_0x285c('0x66')][_0x285c('0x35')],_0x6bb6b3[_0x285c('0x66')][_0x285c('0x7f')],_0x2e027a[_0x285c('0x80')]['id'],_0x6bb6b3['body']?JSON[_0x285c('0x71')](_0x6bb6b3[_0x285c('0x59')]):_0x285c('0x81'));return respondWithRpcPromise(_0x285c('0x82'),_0x285c('0x83'),_0x2e027a);}return null;})[_0x285c('0x33')](function(_0x40c995){if(_0x40c995){if(_0x6bb6b3[_0x285c('0x59')][_0x285c('0x84')]){_0x2e027a[_0x285c('0x26')]['interface']=util[_0x285c('0x77')](_0x285c('0x85'),_0x6bb6b3['user'][_0x285c('0x35')]);_0x2e027a[_0x285c('0x26')][_0x285c('0x86')]=_0x2e027a[_0x285c('0x86')];_0x2e027a[_0x285c('0x26')][_0x285c('0x87')]=_0x285c('0x73');return respondWithRpcPromise(_0x285c('0x88'),_0x285c('0x88'),{'event':'acceptmessage','message':_0x2e027a[_0x285c('0x26')]},client9002)['then'](function(){return _0x2e027a;});}return _0x2e027a;}return null;})[_0x285c('0x33')](respondWithResult(_0x5d93d0,null))[_0x285c('0x27')](handleError(_0x5d93d0,null));};var interaction_log=require('../../config/logger')('mail-interactions');exports['reject']=function(_0x3a6d84,_0x513c3d,_0x26058e){var _0x2c29dc={'agent':{},'channel':_0x285c('0x74')};if(_0x3a6d84[_0x285c('0x59')]['id']){delete _0x3a6d84['body']['id'];}_0x3a6d84[_0x285c('0x59')]['UserId']=_0x3a6d84['body'][_0x285c('0x7a')]||_0x3a6d84[_0x285c('0x66')]['id'];_0x2c29dc[_0x285c('0x89')]['id']=_0x3a6d84[_0x285c('0x59')][_0x285c('0x7a')];return db[_0x285c('0x38')][_0x285c('0x55')]({'where':{'id':_0x3a6d84[_0x285c('0x53')]['id'],'UserId':null}})[_0x285c('0x33')](handleEntityNotFound(_0x513c3d,null))[_0x285c('0x33')](function(_0x2ef58a){if(_0x2ef58a){_0x2c29dc[_0x285c('0x26')]=_0x2ef58a[_0x285c('0x78')]({'plain':!![]});return db[_0x285c('0x8a')][_0x285c('0x55')]({'where':{'id':_0x2ef58a[_0x285c('0x79')]}});}return null;})['then'](handleEntityNotFound(_0x513c3d,null))[_0x285c('0x33')](function(_0x525f27){if(_0x525f27){_0x2c29dc[_0x285c('0x80')]=_0x525f27['get']({'plain':!![]});interaction_log[_0x285c('0x7d')](_0x285c('0x8b'),_0x3a6d84[_0x285c('0x66')]['id'],_0x3a6d84[_0x285c('0x66')][_0x285c('0x35')],_0x3a6d84[_0x285c('0x66')][_0x285c('0x7f')],_0x2c29dc[_0x285c('0x80')]['id'],_0x3a6d84[_0x285c('0x59')]?JSON[_0x285c('0x71')](_0x3a6d84[_0x285c('0x59')]):'null');return respondWithRpcPromise('RejectMessage',_0x285c('0x8c'),_0x2c29dc);}return null;})['then'](function(_0x65b545){if(_0x65b545){_0x65b545['message'][_0x285c('0x8d')]=util[_0x285c('0x77')](_0x285c('0x85'),_0x3a6d84[_0x285c('0x66')][_0x285c('0x35')]);_0x65b545['message'][_0x285c('0x86')]=_0x2c29dc[_0x285c('0x86')];_0x65b545[_0x285c('0x26')]['event']='reject';respondWithRpcPromise(_0x285c('0x88'),_0x285c('0x88'),{'event':_0x285c('0x8e'),'message':_0x65b545['message']},client9002);return _0x2c29dc;}return null;})[_0x285c('0x33')](respondWithResult(_0x513c3d,null))['catch'](handleError(_0x513c3d,null));};exports[_0x285c('0x8f')]=function(_0x41eccb,_0x2bbef9){var _0xc7bdca=moment()[_0x285c('0x90')]()['toString']();var _0x4658c0=path[_0x285c('0x69')](config[_0x285c('0x6a')],_0x285c('0x91'),'files','tmp');var _0xd03cf9=path[_0x285c('0x69')](config['root'],_0x285c('0x91'),_0x285c('0x92'),'attachments');var _0x3b9e12=util['format'](_0x285c('0x93'),_0xc7bdca);return db['MailMessage']['find']({'where':{'id':_0x41eccb[_0x285c('0x53')]['id']},'attributes':['id',_0x285c('0x59'),_0x285c('0x94'),'to','cc',_0x285c('0x95'),_0x285c('0x96'),_0x285c('0x97')],'include':_0x41eccb[_0x285c('0x3c')][_0x285c('0x68')]?[{'model':db[_0x285c('0x98')],'as':_0x285c('0x99')}]:undefined})[_0x285c('0x33')](handleEntityNotFound(_0x2bbef9,null))[_0x285c('0x33')](function(_0xe4242d){if(_0xe4242d){var _0x135137=_0xe4242d;var _0x4f81fb={'from':_0x135137[_0x285c('0x94')],'to':_0x135137['to'],'subject':_0x135137[_0x285c('0x96')],'html':_0x135137[_0x285c('0x59')],'headers':{'Date':moment(_0x135137[_0x285c('0x97')])[_0x285c('0x77')]('ddd,\x20DD\x20MMM\x20YYYY\x20HH:mm:ss\x20ZZ')},'attachments':[]};if(_0xe4242d['cc']){_0x4f81fb[_0x285c('0x9a')]['Cc']=_0xe4242d['cc'];}if(_0xe4242d['bcc']){_0x4f81fb[_0x285c('0x9a')]['Bcc']=_0xe4242d[_0x285c('0x95')];}return new BPromise(function(_0x5241b4,_0xcddcff){if(_0xe4242d[_0x285c('0x99')]){for(var _0x235ab7=0x0;_0x235ab7<_0xe4242d[_0x285c('0x99')][_0x285c('0x41')];_0x235ab7++){var _0x264637=_0xe4242d[_0x285c('0x99')][_0x235ab7];var _0x474c7a=path['join'](_0xd03cf9,_0x264637[_0x285c('0x6c')]);if(fs[_0x285c('0x9b')](_0x474c7a)){_0x4f81fb['attachments']['push']({'name':_0x264637['name'],'contentType':_0x264637[_0x285c('0x9c')],'data':fs[_0x285c('0x9d')](_0x474c7a)});}}}emlformat[_0x285c('0x9e')](_0x4f81fb,function(_0x29a4c9,_0x8a6a91){if(_0x29a4c9)return _0xcddcff(_0x29a4c9);fs['writeFileSync'](path[_0x285c('0x69')](_0x4658c0,_0x3b9e12),_0x8a6a91);return _0x5241b4(_0x8a6a91);});});}})[_0x285c('0x33')](function(_0x59a79b){if(_0x59a79b){return _0x2bbef9['download'](path['join'](_0x4658c0,_0x3b9e12),_0x3b9e12,function(_0x312fc9){if(_0x312fc9){console['log']('err',_0x312fc9);}else{fs[_0x285c('0x9f')](path['join'](_0x4658c0,_0x3b9e12));}});}})[_0x285c('0x27')](handleError(_0x2bbef9,null));};