Built motion from commit b5413ace.|2.6.9
[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 _0x500d=['describe','create','out','secret','split','findOne','CmList','List','CmContact','updatedAt','DESC','MailServerOut','Smtp','getSmtpOptions','attachments','join','server/files/attachments','basename','Contacts','ListId','SendMail','sendMail','messageId','YYYY-MM-DD\x20HH:mm:ss','read','readAt','format','UserId','user','agent','get','MailInteraction','MailInteractionId','isNil','read1stAt','[MAILMESSAGE:ACCEPT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','role','interaction','null','SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20','ContactId','sequelize','SELECT','User','fullname','email','internal','interface','SIP/%s','channel','motionChannel','event','accept','fromString','EventManager','acceptmessage','mail','[MAILMESSAGE:REJECT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','RejectMessage','rejectMessage','Sequelize','QueryTypes','contact','rejectmessage','download','unix','root','tmp','files','message-%s.eml','from','bcc','subject','createdAt','Attachments','ddd,\x20DD\x20MMM\x20YYYY\x20HH:mm:ss\x20ZZ','headers','Bcc','existsSync','push','readFileSync','build','writeFileSync','unlinkSync','moment','bluebird','util','path','lodash','ioredis','html-to-text','../../components/parsers/qs','../../config/logger','../../mysqldb','defaults','redis','localhost','socket.io-emitter','register','jayson/promise','client','http','then','info','request\x20sent','debug','MailMessage,\x20%s,\x20%s,\x20%s','stringify','code','MailMessage,\x20%s,\x20%s','error','message','result','catch','offset','undefined','limit','count','status','set','json','update','destroy','end','sendStatus','stack','name','index','map','MailMessage','rawAttributes','fieldName','type','keys','filters','intersection','model','attributes','query','fields','length','hasOwnProperty','nolimit','order','sort','pick','filter','where','merge','VIRTUAL','options','includeAll','include','findAll','rows','show','params','body','find'];(function(_0x4d07cc,_0x587613){var _0x42de3b=function(_0x201f78){while(--_0x201f78){_0x4d07cc['push'](_0x4d07cc['shift']());}};_0x42de3b(++_0x587613);}(_0x500d,0x192));var _0xd500=function(_0x55336a,_0x240d59){_0x55336a=_0x55336a-0x0;var _0x28ceb3=_0x500d[_0x55336a];return _0x28ceb3;};'use strict';var emlformat=require('eml-format');var moment=require(_0xd500('0x0'));var BPromise=require(_0xd500('0x1'));var util=require(_0xd500('0x2'));var path=require(_0xd500('0x3'));var fs=require('fs');var _=require(_0xd500('0x4'));var Redis=require(_0xd500('0x5'));var htmlToText=require(_0xd500('0x6'));var qs=require(_0xd500('0x7'));var logger=require(_0xd500('0x8'))('api');var interaction_log=require(_0xd500('0x8'))('mail-interactions');var config=require('../../config/environment');var db=require(_0xd500('0x9'))['db'];config['redis']=_[_0xd500('0xa')](config[_0xd500('0xb')],{'host':_0xd500('0xc'),'port':0x18eb});var socket=require(_0xd500('0xd'))(new Redis(config[_0xd500('0xb')]));var htmlEntities=require('html-entities');require('./mailMessage.socket')[_0xd500('0xe')](socket);var jayson=require(_0xd500('0xf'));var client=jayson[_0xd500('0x10')]['http']({'port':0x232c});var client9003=jayson[_0xd500('0x10')][_0xd500('0x11')]({'port':0x232b});var client9002=jayson['client']['http']({'port':0x232a});function respondWithRpcPromise(_0x1bcecb,_0x47e156,_0x46b686,_0x3e1ad2){return new BPromise(function(_0x15d6f1,_0x1d6345){var _0xf78f96=_0x3e1ad2||client;return _0xf78f96['request'](_0x1bcecb,_0x46b686)[_0xd500('0x12')](function(_0x537b09){logger[_0xd500('0x13')]('MailMessage,\x20%s,\x20%s',_0x47e156,_0xd500('0x14'));logger[_0xd500('0x15')](_0xd500('0x16'),_0x47e156,'request\x20sent',JSON[_0xd500('0x17')](_0x537b09));if(_0x537b09['error']){if(_0x537b09['error'][_0xd500('0x18')]===0x1f4){logger['error'](_0xd500('0x19'),_0x47e156,_0x537b09[_0xd500('0x1a')][_0xd500('0x1b')]);return _0x1d6345(_0x537b09[_0xd500('0x1a')]['message']);}logger[_0xd500('0x1a')](_0xd500('0x19'),_0x47e156,_0x537b09[_0xd500('0x1a')][_0xd500('0x1b')]);return _0x15d6f1(_0x537b09[_0xd500('0x1a')][_0xd500('0x1b')]);}else{logger[_0xd500('0x13')](_0xd500('0x19'),_0x47e156,_0xd500('0x14'));_0x15d6f1(_0x537b09[_0xd500('0x1c')]['message']);}})[_0xd500('0x1d')](function(_0x32eb7d){logger[_0xd500('0x1a')]('MailMessage,\x20%s,\x20%s',_0x47e156,_0x32eb7d);_0x1d6345(_0x32eb7d);});});}function respondWithResult(_0x311541,_0x2bc2ea){_0x2bc2ea=_0x2bc2ea||0xc8;return function(_0x58610f){if(_0x58610f){return _0x311541['status'](_0x2bc2ea)['json'](_0x58610f);}};}function respondWithFilteredResult(_0x24f823,_0x51cb51){return function(_0x5228c9){if(_0x5228c9){var _0xe5892d=typeof _0x51cb51[_0xd500('0x1e')]===_0xd500('0x1f')&&typeof _0x51cb51[_0xd500('0x20')]===_0xd500('0x1f');var _0x4fe8fe=_0x5228c9[_0xd500('0x21')];var _0x545186=_0xe5892d?0x0:_0x51cb51[_0xd500('0x1e')];var _0x146ccf=_0xe5892d?_0x5228c9[_0xd500('0x21')]:_0x51cb51['offset']+_0x51cb51['limit'];var _0x4963f1;if(_0x146ccf>=_0x4fe8fe){_0x146ccf=_0x4fe8fe;_0x4963f1=0xc8;}else{_0x4963f1=0xce;}_0x24f823[_0xd500('0x22')](_0x4963f1);return _0x24f823[_0xd500('0x23')]('Content-Range',_0x545186+'-'+_0x146ccf+'/'+_0x4fe8fe)[_0xd500('0x24')](_0x5228c9);}return null;};}function saveUpdates(_0x24b2c2){return function(_0x24ff8b){if(_0x24ff8b){return _0x24ff8b[_0xd500('0x25')](_0x24b2c2)[_0xd500('0x12')](function(_0x2dcf38){return _0x2dcf38;});}return null;};}function removeEntity(_0xa5ce2f){return function(_0xdf3b8f){if(_0xdf3b8f){return _0xdf3b8f[_0xd500('0x26')]()['then'](function(){_0xa5ce2f[_0xd500('0x22')](0xcc)[_0xd500('0x27')]();});}};}function handleEntityNotFound(_0x266d8b){return function(_0xdb937){if(!_0xdb937){_0x266d8b[_0xd500('0x28')](0x194);}return _0xdb937;};}function handleError(_0x4b436f,_0x826688){_0x826688=_0x826688||0x1f4;return function(_0x3ac20d){logger[_0xd500('0x1a')](_0x3ac20d[_0xd500('0x29')]);if(_0x3ac20d[_0xd500('0x2a')]){delete _0x3ac20d[_0xd500('0x2a')];}_0x4b436f[_0xd500('0x22')](_0x826688)['send'](_0x3ac20d);};}exports[_0xd500('0x2b')]=function(_0x33d9ce,_0x217936){var _0x401ebd={},_0x5abda2={},_0x8229fa={'count':0x0,'rows':[]};var _0x33c43c=_[_0xd500('0x2c')](db[_0xd500('0x2d')][_0xd500('0x2e')],function(_0x1a7e3d){return{'name':_0x1a7e3d[_0xd500('0x2f')],'type':_0x1a7e3d[_0xd500('0x30')]['key']};});_0x5abda2['model']=_[_0xd500('0x2c')](_0x33c43c,_0xd500('0x2a'));_0x5abda2['query']=_[_0xd500('0x31')](_0x33d9ce['query']);_0x5abda2[_0xd500('0x32')]=_[_0xd500('0x33')](_0x5abda2[_0xd500('0x34')],_0x5abda2['query']);_0x401ebd[_0xd500('0x35')]=_[_0xd500('0x33')](_0x5abda2['model'],qs['fields'](_0x33d9ce[_0xd500('0x36')][_0xd500('0x37')]));_0x401ebd[_0xd500('0x35')]=_0x401ebd['attributes'][_0xd500('0x38')]?_0x401ebd[_0xd500('0x35')]:_0x5abda2[_0xd500('0x34')];if(!_0x33d9ce[_0xd500('0x36')][_0xd500('0x39')](_0xd500('0x3a'))){_0x401ebd[_0xd500('0x20')]=qs['limit'](_0x33d9ce[_0xd500('0x36')][_0xd500('0x20')]);_0x401ebd[_0xd500('0x1e')]=qs[_0xd500('0x1e')](_0x33d9ce[_0xd500('0x36')]['offset']);}_0x401ebd[_0xd500('0x3b')]=qs['sort'](_0x33d9ce[_0xd500('0x36')][_0xd500('0x3c')]);_0x401ebd['where']=qs[_0xd500('0x32')](_[_0xd500('0x3d')](_0x33d9ce[_0xd500('0x36')],_0x5abda2[_0xd500('0x32')]),_0x33c43c);if(_0x33d9ce[_0xd500('0x36')][_0xd500('0x3e')]){_0x401ebd[_0xd500('0x3f')]=_[_0xd500('0x40')](_0x401ebd['where'],{'$or':_[_0xd500('0x2c')](_0x33c43c,function(_0x2ca919){if(_0x2ca919[_0xd500('0x30')]!==_0xd500('0x41')){var _0x2db43a={};_0x2db43a[_0x2ca919[_0xd500('0x2a')]]={'$like':'%'+_0x33d9ce[_0xd500('0x36')][_0xd500('0x3e')]+'%'};return _0x2db43a;}})});}_0x401ebd=_[_0xd500('0x40')]({},_0x401ebd,_0x33d9ce[_0xd500('0x42')]);var _0x57730c={'where':_0x401ebd['where']};return db[_0xd500('0x2d')][_0xd500('0x21')](_0x57730c)['then'](function(_0x50b0d2){_0x8229fa[_0xd500('0x21')]=_0x50b0d2;if(_0x33d9ce['query'][_0xd500('0x43')]){_0x401ebd[_0xd500('0x44')]=[{'all':!![]}];}return db[_0xd500('0x2d')][_0xd500('0x45')](_0x401ebd);})[_0xd500('0x12')](function(_0xcdbe8c){_0x8229fa[_0xd500('0x46')]=_0xcdbe8c;return _0x8229fa;})[_0xd500('0x12')](respondWithFilteredResult(_0x217936,_0x401ebd))[_0xd500('0x1d')](handleError(_0x217936,null));};exports[_0xd500('0x47')]=function(_0x41116c,_0x456767){var _0x58ce5b={'raw':!![],'where':{'id':_0x41116c[_0xd500('0x48')]['id']}},_0x3071ff={};_0x3071ff['model']=_[_0xd500('0x31')](db[_0xd500('0x2d')]['rawAttributes']);_0x3071ff[_0xd500('0x36')]=_['keys'](_0x41116c[_0xd500('0x36')]);_0x3071ff[_0xd500('0x32')]=_[_0xd500('0x33')](_0x3071ff['model'],_0x3071ff['query']);_0x58ce5b[_0xd500('0x35')]=_[_0xd500('0x33')](_0x3071ff[_0xd500('0x34')],qs[_0xd500('0x37')](_0x41116c[_0xd500('0x36')][_0xd500('0x37')]));_0x58ce5b[_0xd500('0x35')]=_0x58ce5b[_0xd500('0x35')]['length']?_0x58ce5b[_0xd500('0x35')]:_0x3071ff[_0xd500('0x34')];if(_0x41116c[_0xd500('0x36')][_0xd500('0x43')]){_0x58ce5b[_0xd500('0x44')]=[{'all':!![]}];}_0x58ce5b=_[_0xd500('0x40')]({},_0x58ce5b,_0x41116c['options']);return db['MailMessage']['find'](_0x58ce5b)[_0xd500('0x12')](handleEntityNotFound(_0x456767,null))[_0xd500('0x12')](respondWithResult(_0x456767,null))[_0xd500('0x1d')](handleError(_0x456767,null));};exports[_0xd500('0x25')]=function(_0x1dae83,_0x1ff6cf){if(_0x1dae83[_0xd500('0x49')]['id']){delete _0x1dae83[_0xd500('0x49')]['id'];}return db[_0xd500('0x2d')][_0xd500('0x4a')]({'where':{'id':_0x1dae83[_0xd500('0x48')]['id']}})['then'](handleEntityNotFound(_0x1ff6cf,null))[_0xd500('0x12')](saveUpdates(_0x1dae83[_0xd500('0x49')],null))[_0xd500('0x12')](respondWithResult(_0x1ff6cf,null))['catch'](handleError(_0x1ff6cf,null));};exports[_0xd500('0x26')]=function(_0x52227d,_0x588fa8){return db[_0xd500('0x2d')][_0xd500('0x4a')]({'where':{'id':_0x52227d[_0xd500('0x48')]['id']}})[_0xd500('0x12')](handleEntityNotFound(_0x588fa8,null))['then'](removeEntity(_0x588fa8,null))[_0xd500('0x1d')](handleError(_0x588fa8,null));};exports['describe']=function(_0x3837b9,_0x312a04){return db[_0xd500('0x2d')][_0xd500('0x4b')]()['then'](respondWithResult(_0x312a04,null))[_0xd500('0x1d')](handleError(_0x312a04,null));};exports['create']=function(_0x41fb68,_0x40d74e){return db[_0xd500('0x2d')][_0xd500('0x4c')](_0x41fb68[_0xd500('0x49')])[_0xd500('0x12')](function(_0x16b59e){if(_0x16b59e){if(_0x16b59e['direction']===_0xd500('0x4d')&&!_0x16b59e[_0xd500('0x4e')]){var _0xc8e94a,_0x27ceed,_0x515df0;if(_0x41fb68[_0xd500('0x49')]['to']){_0x27ceed=_0x41fb68['body']['to'][_0xd500('0x4f')](',')[0x0];}return db['MailAccount'][_0xd500('0x50')]({'where':{'id':_0x16b59e['MailAccountId']},'include':[{'model':db[_0xd500('0x51')],'as':_0xd500('0x52'),'include':[{'model':db[_0xd500('0x53')],'as':'Contacts','where':{'email':_0x27ceed},'limit':0x1,'order':[[_0xd500('0x54'),_0xd500('0x55')]]}]},{'model':db[_0xd500('0x56')],'as':_0xd500('0x57'),'raw':!![],'include':[{'model':db['CloudProvider'],'as':'CloudProvider','raw':!![]}]}]})['then'](function(_0x1df4de){_0xc8e94a=_0x1df4de;if(!_0xc8e94a||!_0xc8e94a[_0xd500('0x57')])return;var _0x53dd25=_0xc8e94a[_0xd500('0x58')]();if(_0x41fb68[_0xd500('0x49')][_0xd500('0x59')]&&_0x41fb68['body'][_0xd500('0x59')][_0xd500('0x38')]){for(var _0x391146=0x0;_0x391146<_0x41fb68['body'][_0xd500('0x59')][_0xd500('0x38')];_0x391146+=0x1){_0x41fb68[_0xd500('0x49')][_0xd500('0x59')][_0x391146]={'filename':_0x41fb68[_0xd500('0x49')]['attachments'][_0x391146][_0xd500('0x2a')],'path':path[_0xd500('0x5a')](config['root'],_0xd500('0x5b'),_0x41fb68[_0xd500('0x49')][_0xd500('0x59')][_0x391146][_0xd500('0x5c')])};}}_0x515df0={'account':_0x53dd25,'message':_0x41fb68[_0xd500('0x49')]};return;})['then'](function(){if(_0xc8e94a[_0xd500('0x52')]){if(_0xc8e94a[_0xd500('0x52')][_0xd500('0x5d')][_0xd500('0x38')]){return _0xc8e94a[_0xd500('0x52')][_0xd500('0x5d')][0x0];}else{return db[_0xd500('0x53')][_0xd500('0x4c')](_[_0xd500('0xa')](_0x41fb68[_0xd500('0x49')],{'firstName':_0x41fb68[_0xd500('0x49')]['to'],'email':_0x41fb68[_0xd500('0x49')]['to'],'phone':_0x41fb68[_0xd500('0x49')]['to'],'ListId':_0xc8e94a[_0xd500('0x5e')]}));}}else{throw new Error('List\x20not\x20found');}})[_0xd500('0x12')](function(){if(_0x515df0){return respondWithRpcPromise(_0xd500('0x5f'),_0xd500('0x60'),_0x515df0,client9003)['then'](function(_0x2d603c){return _0x16b59e['update']({'read':!![],'messageId':_0x2d603c[_0xd500('0x61')],'sentAt':moment()['format'](_0xd500('0x62'))});})[_0xd500('0x1d')](function(_0x1bcb5b){logger[_0xd500('0x1a')]('%s',JSON[_0xd500('0x17')](_0x1bcb5b));return _0x16b59e;});}return _0x16b59e;});}return _0x16b59e;}})[_0xd500('0x12')](respondWithResult(_0x40d74e,0xc9))[_0xd500('0x1d')](handleError(_0x40d74e,null));};exports['accept']=function(_0x37876b,_0x348d8b){var _0x357153={'agent':{},'channel':'mail'};if(_0x37876b[_0xd500('0x49')]['id']){delete _0x37876b['body']['id'];}_0x37876b['body'][_0xd500('0x63')]=!![];_0x37876b[_0xd500('0x49')][_0xd500('0x64')]=moment()[_0xd500('0x65')](_0xd500('0x62'));_0x37876b[_0xd500('0x49')]['UserId']=_0x37876b[_0xd500('0x49')][_0xd500('0x66')]||_0x37876b[_0xd500('0x67')]['id'];_0x357153[_0xd500('0x68')]['id']=_0x37876b[_0xd500('0x49')][_0xd500('0x66')];return db[_0xd500('0x2d')][_0xd500('0x4a')]({'where':{'id':_0x37876b[_0xd500('0x48')]['id'],'UserId':null}})[_0xd500('0x12')](handleEntityNotFound(_0x348d8b,null))['then'](saveUpdates(_0x37876b[_0xd500('0x49')],null))[_0xd500('0x12')](function(_0x565cec){if(_0x565cec){_0x357153[_0xd500('0x1b')]=_0x565cec[_0xd500('0x69')]({'plain':!![]});return db[_0xd500('0x6a')][_0xd500('0x4a')]({'where':{'id':_0x565cec[_0xd500('0x6b')]}});}return null;})[_0xd500('0x12')](handleEntityNotFound(_0x348d8b,null))[_0xd500('0x12')](function(_0x20862c){if(_0x20862c){return _0x20862c[_0xd500('0x25')]({'UserId':_0x37876b['body'][_0xd500('0x66')],'read1stAt':_[_0xd500('0x6c')](_0x20862c[_0xd500('0x6d')])?moment()[_0xd500('0x65')]('YYYY-MM-DD\x20HH:mm:ss'):undefined});}return null;})[_0xd500('0x12')](function(_0x3dd8b5){if(_0x3dd8b5){_0x357153['interaction']=_0x3dd8b5[_0xd500('0x69')]({'plain':!![]});interaction_log[_0xd500('0x13')](_0xd500('0x6e'),_0x37876b[_0xd500('0x67')]['id'],_0x37876b[_0xd500('0x67')]['name'],_0x37876b['user'][_0xd500('0x6f')],_0x357153[_0xd500('0x70')]['id'],_0x37876b[_0xd500('0x49')]?JSON[_0xd500('0x17')](_0x37876b[_0xd500('0x49')]):_0xd500('0x71'));return respondWithRpcPromise('AcceptMessage','acceptMessage',_0x357153);}return null;})[_0xd500('0x12')](function(_0x3d422b){var _0x35c900=_0xd500('0x72')+_0x3d422b[_0xd500('0x1b')][_0xd500('0x73')];return db[_0xd500('0x74')][_0xd500('0x36')](_0x35c900,{'type':db['Sequelize']['QueryTypes'][_0xd500('0x75')],'raw':!![]})[_0xd500('0x12')](function(_0x5f244b){return _0x5f244b;});})[_0xd500('0x12')](function(_0x461170){if(_0x461170){_0x357153[_0xd500('0x1b')]['contact']=_0x461170[0x0];if(!_0x37876b[_0xd500('0x49')][_0xd500('0x66')])return;return db[_0xd500('0x76')][_0xd500('0x4a')]({'where':{'id':_0x37876b[_0xd500('0x49')][_0xd500('0x66')],'role':_0xd500('0x68')},'attributes':['id',_0xd500('0x2a'),_0xd500('0x77'),_0xd500('0x78'),_0xd500('0x79')],'raw':!![]});}return null;})[_0xd500('0x12')](function(_0x154775){if(!_0x154775)return null;_0x357153['message'][_0xd500('0x68')]=_0x154775;return _0x357153;})['then'](function(_0x561960){if(_0x561960){if(_0x37876b[_0xd500('0x49')]['manual']){_0x357153['message'][_0xd500('0x7a')]=util['format'](_0xd500('0x7b'),_0x37876b[_0xd500('0x67')]['name']);_0x357153[_0xd500('0x1b')][_0xd500('0x7c')]=_0x357153[_0xd500('0x7c')];_0x357153['message'][_0xd500('0x7d')]=_0x357153['channel'];_0x357153[_0xd500('0x1b')][_0xd500('0x7e')]=_0xd500('0x7f');_0x357153[_0xd500('0x1b')][_0xd500('0x49')]=htmlToText[_0xd500('0x80')](_0x357153['message'][_0xd500('0x49')]);return respondWithRpcPromise('EventManager',_0xd500('0x81'),{'event':_0xd500('0x82'),'message':_0x357153[_0xd500('0x1b')]},client9002)[_0xd500('0x12')](function(){return _0x357153;});}return _0x357153;}return null;})[_0xd500('0x12')](respondWithResult(_0x348d8b,null))[_0xd500('0x1d')](handleError(_0x348d8b,null));};exports['reject']=function(_0x4df269,_0x3dcbbb){var _0x4c03b4={'agent':{},'channel':_0xd500('0x83')};if(_0x4df269['body']['id']){delete _0x4df269['body']['id'];}_0x4df269[_0xd500('0x49')][_0xd500('0x66')]=_0x4df269['body'][_0xd500('0x66')]||_0x4df269[_0xd500('0x67')]['id'];_0x4c03b4['agent']['id']=_0x4df269[_0xd500('0x49')][_0xd500('0x66')];return db[_0xd500('0x2d')][_0xd500('0x4a')]({'where':{'id':_0x4df269[_0xd500('0x48')]['id'],'UserId':null}})[_0xd500('0x12')](handleEntityNotFound(_0x3dcbbb,null))[_0xd500('0x12')](function(_0x11f55f){if(_0x11f55f){_0x4c03b4[_0xd500('0x1b')]=_0x11f55f[_0xd500('0x69')]({'plain':!![]});return db[_0xd500('0x6a')]['find']({'where':{'id':_0x11f55f[_0xd500('0x6b')]}});}return null;})[_0xd500('0x12')](handleEntityNotFound(_0x3dcbbb,null))[_0xd500('0x12')](function(_0x307f6d){if(_0x307f6d){_0x4c03b4[_0xd500('0x70')]=_0x307f6d[_0xd500('0x69')]({'plain':!![]});interaction_log[_0xd500('0x13')](_0xd500('0x84'),_0x4df269[_0xd500('0x67')]['id'],_0x4df269[_0xd500('0x67')][_0xd500('0x2a')],_0x4df269[_0xd500('0x67')][_0xd500('0x6f')],_0x4c03b4['interaction']['id'],_0x4df269[_0xd500('0x49')]?JSON[_0xd500('0x17')](_0x4df269['body']):_0xd500('0x71'));return respondWithRpcPromise(_0xd500('0x85'),_0xd500('0x86'),_0x4c03b4);}return null;})[_0xd500('0x12')](function(_0x4f4212){var _0x2b1c87=_0xd500('0x72')+_0x4f4212[_0xd500('0x1b')][_0xd500('0x73')];return db[_0xd500('0x74')][_0xd500('0x36')](_0x2b1c87,{'type':db[_0xd500('0x87')][_0xd500('0x88')]['SELECT'],'raw':!![]})[_0xd500('0x12')](function(_0x16f69b){return _0x16f69b;});})[_0xd500('0x12')](function(_0xa39a2e){if(_0xa39a2e){_0x4c03b4[_0xd500('0x1b')][_0xd500('0x89')]=_0xa39a2e[0x0];if(!_0x4df269[_0xd500('0x49')]['UserId'])return;return db['User']['find']({'where':{'id':_0x4df269[_0xd500('0x49')]['UserId'],'role':_0xd500('0x68')},'attributes':['id',_0xd500('0x2a'),_0xd500('0x77'),'email',_0xd500('0x79')],'raw':!![]});}return null;})[_0xd500('0x12')](function(_0x1bfeda){if(!_0x1bfeda)return null;_0x4c03b4[_0xd500('0x1b')][_0xd500('0x68')]=_0x1bfeda;return _0x4c03b4;})[_0xd500('0x12')](function(_0x569c1d){if(_0x569c1d){_0x569c1d[_0xd500('0x1b')][_0xd500('0x7a')]=util['format']('SIP/%s',_0x4df269[_0xd500('0x67')]['name']);_0x569c1d[_0xd500('0x1b')]['channel']=_0x4c03b4[_0xd500('0x7c')];_0x569c1d[_0xd500('0x1b')]['motionChannel']=_0x4c03b4[_0xd500('0x7c')];_0x569c1d[_0xd500('0x1b')][_0xd500('0x7e')]='reject';_0x569c1d[_0xd500('0x1b')][_0xd500('0x49')]=htmlToText[_0xd500('0x80')](_0x4c03b4[_0xd500('0x1b')][_0xd500('0x49')]);respondWithRpcPromise(_0xd500('0x81'),'EventManager',{'event':_0xd500('0x8a'),'message':_0x569c1d[_0xd500('0x1b')]},client9002);return _0x4c03b4;}return null;})[_0xd500('0x12')](respondWithResult(_0x3dcbbb,null))[_0xd500('0x1d')](handleError(_0x3dcbbb,null));};exports[_0xd500('0x8b')]=function(_0x5efe8c,_0x4e60d7){var _0x223785=moment()[_0xd500('0x8c')]()['toString']();var _0x122ef7=path[_0xd500('0x5a')](config[_0xd500('0x8d')],'server','files',_0xd500('0x8e'));var _0x4bb9f6=path[_0xd500('0x5a')](config[_0xd500('0x8d')],'server',_0xd500('0x8f'),'attachments');var _0xf05e61=util['format'](_0xd500('0x90'),_0x223785);return db[_0xd500('0x2d')]['find']({'where':{'id':_0x5efe8c[_0xd500('0x48')]['id']},'attributes':['id',_0xd500('0x49'),_0xd500('0x91'),'to','cc',_0xd500('0x92'),_0xd500('0x93'),_0xd500('0x94')],'include':_0x5efe8c[_0xd500('0x36')][_0xd500('0x59')]?[{'model':db['Attachment'],'as':_0xd500('0x95')}]:undefined})[_0xd500('0x12')](handleEntityNotFound(_0x4e60d7,null))[_0xd500('0x12')](function(_0xa5b8e2){if(_0xa5b8e2){var _0x58b0f6=_0xa5b8e2;var _0x43c4e6={'from':_0x58b0f6['from'],'to':_0x58b0f6['to'],'subject':_0x58b0f6[_0xd500('0x93')],'html':htmlEntities['decode'](_0x58b0f6[_0xd500('0x49')]),'headers':{'Date':moment(_0x58b0f6[_0xd500('0x94')])[_0xd500('0x65')](_0xd500('0x96'))},'attachments':[]};if(_0xa5b8e2['cc']){_0x43c4e6[_0xd500('0x97')]['Cc']=_0xa5b8e2['cc'];}if(_0xa5b8e2[_0xd500('0x92')]){_0x43c4e6[_0xd500('0x97')][_0xd500('0x98')]=_0xa5b8e2[_0xd500('0x92')];}return new BPromise(function(_0x256990,_0x4e1ddc){if(_0xa5b8e2['Attachments']){for(var _0x1d81cd=0x0;_0x1d81cd<_0xa5b8e2['Attachments'][_0xd500('0x38')];_0x1d81cd++){var _0x43dbef=_0xa5b8e2[_0xd500('0x95')][_0x1d81cd];var _0xff2643=path[_0xd500('0x5a')](_0x4bb9f6,_0x43dbef[_0xd500('0x5c')]);if(fs[_0xd500('0x99')](_0xff2643)){_0x43c4e6[_0xd500('0x59')][_0xd500('0x9a')]({'name':_0x43dbef[_0xd500('0x2a')],'contentType':_0x43dbef[_0xd500('0x30')],'data':fs[_0xd500('0x9b')](_0xff2643)});}}}emlformat[_0xd500('0x9c')](_0x43c4e6,function(_0x4cd197,_0x23585a){if(_0x4cd197)return _0x4e1ddc(_0x4cd197);fs[_0xd500('0x9d')](path['join'](_0x122ef7,_0xf05e61),_0x23585a);return _0x256990(_0x23585a);});});}})[_0xd500('0x12')](function(_0x1d9233){if(_0x1d9233){return _0x4e60d7['download'](path[_0xd500('0x5a')](_0x122ef7,_0xf05e61),_0xf05e61,function(_0x37bbab){if(!_0x37bbab)fs[_0xd500('0x9e')](path[_0xd500('0x5a')](_0x122ef7,_0xf05e61));});}})[_0xd500('0x1d')](handleError(_0x4e60d7,null));};