Built motion from commit e6806ed6.|2.6.0
[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 _0x4da5=['fullname','email','internal','manual','interface','SIP/%s','channel','motionChannel','event','fromString','acceptmessage','MailInteraction','[MAILMESSAGE:REJECT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','null','RejectMessage','rejectMessage','Sequelize','SELECT','reject','EventManager','rejectmessage','download','toString','root','server','files','tmp','message-%s.eml','from','subject','Attachment','Attachments','decode','createdAt','headers','bcc','Bcc','existsSync','push','readFileSync','build','unlinkSync','eml-format','moment','bluebird','util','path','lodash','ioredis','html-to-text','../../config/logger','api','mail-interactions','../../config/environment','../../mysqldb','defaults','redis','localhost','html-entities','./mailMessage.socket','register','jayson/promise','client','http','request','MailMessage,\x20%s,\x20%s','request\x20sent','debug','stringify','error','message','info','result','catch','json','offset','undefined','limit','status','Content-Range','update','then','sendStatus','stack','name','send','map','MailMessage','rawAttributes','type','key','model','keys','query','filters','intersection','attributes','fields','hasOwnProperty','sort','where','filter','merge','options','count','findAll','rows','show','params','includeAll','include','body','find','describe','create','direction','out','split','MailAccount','MailAccountId','CmList','List','updatedAt','DESC','Smtp','CloudProvider','getSmtpOptions','attachments','join','basename','Contacts','length','CmContact','List\x20not\x20found','SendMail','sendMail','messageId','format','YYYY-MM-DD\x20HH:mm:ss','accept','mail','UserId','user','agent','get','MailInteractionId','isNil','read1stAt','interaction','role','AcceptMessage','acceptMessage','SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20','ContactId','sequelize','contact'];(function(_0x4eaf68,_0x53f6ad){var _0x4ff23e=function(_0x143fc4){while(--_0x143fc4){_0x4eaf68['push'](_0x4eaf68['shift']());}};_0x4ff23e(++_0x53f6ad);}(_0x4da5,0x162));var _0x54da=function(_0x5cd33a,_0x10fc69){_0x5cd33a=_0x5cd33a-0x0;var _0x415da8=_0x4da5[_0x5cd33a];return _0x415da8;};'use strict';var emlformat=require(_0x54da('0x0'));var moment=require(_0x54da('0x1'));var BPromise=require(_0x54da('0x2'));var util=require(_0x54da('0x3'));var path=require(_0x54da('0x4'));var fs=require('fs');var _=require(_0x54da('0x5'));var Redis=require(_0x54da('0x6'));var htmlToText=require(_0x54da('0x7'));var qs=require('../../components/parsers/qs');var logger=require(_0x54da('0x8'))(_0x54da('0x9'));var interaction_log=require(_0x54da('0x8'))(_0x54da('0xa'));var config=require(_0x54da('0xb'));var db=require(_0x54da('0xc'))['db'];config['redis']=_[_0x54da('0xd')](config[_0x54da('0xe')],{'host':_0x54da('0xf'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0x54da('0xe')]));var htmlEntities=require(_0x54da('0x10'));require(_0x54da('0x11'))[_0x54da('0x12')](socket);var jayson=require(_0x54da('0x13'));var client=jayson[_0x54da('0x14')]['http']({'port':0x232c});var client9003=jayson[_0x54da('0x14')][_0x54da('0x15')]({'port':0x232b});var client9002=jayson[_0x54da('0x14')][_0x54da('0x15')]({'port':0x232a});function respondWithRpcPromise(_0x19ce47,_0x11e42c,_0x59ff30,_0x400811){return new BPromise(function(_0x4721e0,_0x50f53b){var _0x1252ea=_0x400811||client;return _0x1252ea[_0x54da('0x16')](_0x19ce47,_0x59ff30)['then'](function(_0x5b62c3){logger['info'](_0x54da('0x17'),_0x11e42c,_0x54da('0x18'));logger[_0x54da('0x19')]('MailMessage,\x20%s,\x20%s,\x20%s',_0x11e42c,_0x54da('0x18'),JSON[_0x54da('0x1a')](_0x5b62c3));if(_0x5b62c3['error']){if(_0x5b62c3[_0x54da('0x1b')]['code']===0x1f4){logger[_0x54da('0x1b')]('MailMessage,\x20%s,\x20%s',_0x11e42c,_0x5b62c3['error'][_0x54da('0x1c')]);return _0x50f53b(_0x5b62c3[_0x54da('0x1b')][_0x54da('0x1c')]);}logger[_0x54da('0x1b')](_0x54da('0x17'),_0x11e42c,_0x5b62c3[_0x54da('0x1b')][_0x54da('0x1c')]);return _0x4721e0(_0x5b62c3[_0x54da('0x1b')][_0x54da('0x1c')]);}else{logger[_0x54da('0x1d')](_0x54da('0x17'),_0x11e42c,_0x54da('0x18'));_0x4721e0(_0x5b62c3[_0x54da('0x1e')][_0x54da('0x1c')]);}})[_0x54da('0x1f')](function(_0x40cab9){logger[_0x54da('0x1b')]('MailMessage,\x20%s,\x20%s',_0x11e42c,_0x40cab9);_0x50f53b(_0x40cab9);});});}function respondWithResult(_0x191900,_0x19efca){_0x19efca=_0x19efca||0xc8;return function(_0x510c86){if(_0x510c86){return _0x191900['status'](_0x19efca)[_0x54da('0x20')](_0x510c86);}};}function respondWithFilteredResult(_0x4a05be,_0x3b7320){return function(_0x50c792){if(_0x50c792){var _0x22c87a=typeof _0x3b7320[_0x54da('0x21')]===_0x54da('0x22')&&typeof _0x3b7320[_0x54da('0x23')]===_0x54da('0x22');var _0x9d8668=_0x50c792['count'];var _0x4f2842=_0x22c87a?0x0:_0x3b7320[_0x54da('0x21')];var _0x379410=_0x22c87a?_0x50c792['count']:_0x3b7320[_0x54da('0x21')]+_0x3b7320[_0x54da('0x23')];var _0x2201a9;if(_0x379410>=_0x9d8668){_0x379410=_0x9d8668;_0x2201a9=0xc8;}else{_0x2201a9=0xce;}_0x4a05be[_0x54da('0x24')](_0x2201a9);return _0x4a05be['set'](_0x54da('0x25'),_0x4f2842+'-'+_0x379410+'/'+_0x9d8668)['json'](_0x50c792);}return null;};}function saveUpdates(_0x391b99){return function(_0x5d69d1){if(_0x5d69d1){return _0x5d69d1[_0x54da('0x26')](_0x391b99)[_0x54da('0x27')](function(_0x4bd820){return _0x4bd820;});}return null;};}function removeEntity(_0x1a0f34){return function(_0x3d1d3e){if(_0x3d1d3e){return _0x3d1d3e['destroy']()[_0x54da('0x27')](function(){_0x1a0f34[_0x54da('0x24')](0xcc)['end']();});}};}function handleEntityNotFound(_0x784738){return function(_0x3fc71d){if(!_0x3fc71d){_0x784738[_0x54da('0x28')](0x194);}return _0x3fc71d;};}function handleError(_0x23bf5d,_0x16d195){_0x16d195=_0x16d195||0x1f4;return function(_0x2aa688){logger[_0x54da('0x1b')](_0x2aa688[_0x54da('0x29')]);if(_0x2aa688[_0x54da('0x2a')]){delete _0x2aa688['name'];}_0x23bf5d['status'](_0x16d195)[_0x54da('0x2b')](_0x2aa688);};}exports['index']=function(_0x59c339,_0xf61645){var _0x3965d1={},_0x1acfdf={},_0x2ad073={'count':0x0,'rows':[]};var _0x522222=_[_0x54da('0x2c')](db[_0x54da('0x2d')][_0x54da('0x2e')],function(_0x54f616){return{'name':_0x54f616['fieldName'],'type':_0x54f616[_0x54da('0x2f')][_0x54da('0x30')]};});_0x1acfdf[_0x54da('0x31')]=_[_0x54da('0x2c')](_0x522222,'name');_0x1acfdf['query']=_[_0x54da('0x32')](_0x59c339[_0x54da('0x33')]);_0x1acfdf[_0x54da('0x34')]=_[_0x54da('0x35')](_0x1acfdf['model'],_0x1acfdf[_0x54da('0x33')]);_0x3965d1[_0x54da('0x36')]=_['intersection'](_0x1acfdf[_0x54da('0x31')],qs[_0x54da('0x37')](_0x59c339[_0x54da('0x33')]['fields']));_0x3965d1[_0x54da('0x36')]=_0x3965d1[_0x54da('0x36')]['length']?_0x3965d1['attributes']:_0x1acfdf[_0x54da('0x31')];if(!_0x59c339[_0x54da('0x33')][_0x54da('0x38')]('nolimit')){_0x3965d1[_0x54da('0x23')]=qs['limit'](_0x59c339[_0x54da('0x33')][_0x54da('0x23')]);_0x3965d1[_0x54da('0x21')]=qs['offset'](_0x59c339[_0x54da('0x33')][_0x54da('0x21')]);}_0x3965d1['order']=qs[_0x54da('0x39')](_0x59c339[_0x54da('0x33')][_0x54da('0x39')]);_0x3965d1[_0x54da('0x3a')]=qs['filters'](_['pick'](_0x59c339['query'],_0x1acfdf['filters']),_0x522222);if(_0x59c339[_0x54da('0x33')][_0x54da('0x3b')]){_0x3965d1[_0x54da('0x3a')]=_[_0x54da('0x3c')](_0x3965d1[_0x54da('0x3a')],{'$or':_[_0x54da('0x2c')](_0x522222,function(_0x302264){if(_0x302264[_0x54da('0x2f')]!=='VIRTUAL'){var _0x163005={};_0x163005[_0x302264[_0x54da('0x2a')]]={'$like':'%'+_0x59c339[_0x54da('0x33')]['filter']+'%'};return _0x163005;}})});}_0x3965d1=_[_0x54da('0x3c')]({},_0x3965d1,_0x59c339[_0x54da('0x3d')]);var _0x31943e={'where':_0x3965d1[_0x54da('0x3a')]};return db[_0x54da('0x2d')][_0x54da('0x3e')](_0x31943e)[_0x54da('0x27')](function(_0x5e06b){_0x2ad073[_0x54da('0x3e')]=_0x5e06b;if(_0x59c339[_0x54da('0x33')]['includeAll']){_0x3965d1['include']=[{'all':!![]}];}return db[_0x54da('0x2d')][_0x54da('0x3f')](_0x3965d1);})['then'](function(_0x33f452){_0x2ad073[_0x54da('0x40')]=_0x33f452;return _0x2ad073;})[_0x54da('0x27')](respondWithFilteredResult(_0xf61645,_0x3965d1))[_0x54da('0x1f')](handleError(_0xf61645,null));};exports[_0x54da('0x41')]=function(_0x2c1a86,_0x3ff151){var _0x2f8230={'raw':!![],'where':{'id':_0x2c1a86[_0x54da('0x42')]['id']}},_0x4b6239={};_0x4b6239[_0x54da('0x31')]=_[_0x54da('0x32')](db['MailMessage'][_0x54da('0x2e')]);_0x4b6239[_0x54da('0x33')]=_[_0x54da('0x32')](_0x2c1a86['query']);_0x4b6239[_0x54da('0x34')]=_[_0x54da('0x35')](_0x4b6239[_0x54da('0x31')],_0x4b6239[_0x54da('0x33')]);_0x2f8230[_0x54da('0x36')]=_[_0x54da('0x35')](_0x4b6239['model'],qs[_0x54da('0x37')](_0x2c1a86[_0x54da('0x33')][_0x54da('0x37')]));_0x2f8230[_0x54da('0x36')]=_0x2f8230[_0x54da('0x36')]['length']?_0x2f8230['attributes']:_0x4b6239[_0x54da('0x31')];if(_0x2c1a86[_0x54da('0x33')][_0x54da('0x43')]){_0x2f8230[_0x54da('0x44')]=[{'all':!![]}];}_0x2f8230=_['merge']({},_0x2f8230,_0x2c1a86[_0x54da('0x3d')]);return db[_0x54da('0x2d')]['find'](_0x2f8230)[_0x54da('0x27')](handleEntityNotFound(_0x3ff151,null))['then'](respondWithResult(_0x3ff151,null))[_0x54da('0x1f')](handleError(_0x3ff151,null));};exports[_0x54da('0x26')]=function(_0x172f10,_0x1baff4){if(_0x172f10[_0x54da('0x45')]['id']){delete _0x172f10[_0x54da('0x45')]['id'];}return db[_0x54da('0x2d')][_0x54da('0x46')]({'where':{'id':_0x172f10[_0x54da('0x42')]['id']}})[_0x54da('0x27')](handleEntityNotFound(_0x1baff4,null))[_0x54da('0x27')](saveUpdates(_0x172f10[_0x54da('0x45')],null))[_0x54da('0x27')](respondWithResult(_0x1baff4,null))[_0x54da('0x1f')](handleError(_0x1baff4,null));};exports['destroy']=function(_0xe5f96c,_0x5cf344){return db[_0x54da('0x2d')][_0x54da('0x46')]({'where':{'id':_0xe5f96c[_0x54da('0x42')]['id']}})[_0x54da('0x27')](handleEntityNotFound(_0x5cf344,null))['then'](removeEntity(_0x5cf344,null))[_0x54da('0x1f')](handleError(_0x5cf344,null));};exports[_0x54da('0x47')]=function(_0x1ec704,_0xa31486){return db[_0x54da('0x2d')][_0x54da('0x47')]()[_0x54da('0x27')](respondWithResult(_0xa31486,null))[_0x54da('0x1f')](handleError(_0xa31486,null));};exports['create']=function(_0x5b8487,_0xdd2631){return db[_0x54da('0x2d')][_0x54da('0x48')](_0x5b8487[_0x54da('0x45')])['then'](function(_0x516a8b){if(_0x516a8b){if(_0x516a8b[_0x54da('0x49')]===_0x54da('0x4a')&&!_0x516a8b['secret']){var _0x3f2045,_0x27dcb3,_0x3df178;if(_0x5b8487[_0x54da('0x45')]['to']){_0x27dcb3=_0x5b8487[_0x54da('0x45')]['to'][_0x54da('0x4b')](',')[0x0];}return db[_0x54da('0x4c')]['findOne']({'where':{'id':_0x516a8b[_0x54da('0x4d')]},'include':[{'model':db[_0x54da('0x4e')],'as':_0x54da('0x4f'),'include':[{'model':db['CmContact'],'as':'Contacts','where':{'email':_0x27dcb3},'limit':0x1,'order':[[_0x54da('0x50'),_0x54da('0x51')]]}]},{'model':db['MailServerOut'],'as':_0x54da('0x52'),'raw':!![],'include':[{'model':db[_0x54da('0x53')],'as':_0x54da('0x53'),'raw':!![]}]}]})[_0x54da('0x27')](function(_0x6549e){_0x3f2045=_0x6549e;if(!_0x3f2045||!_0x3f2045['Smtp'])return;var _0x1c7322=_0x3f2045[_0x54da('0x54')]();if(_0x5b8487[_0x54da('0x45')][_0x54da('0x55')]&&_0x5b8487[_0x54da('0x45')][_0x54da('0x55')]['length']){for(var _0x260b2e=0x0;_0x260b2e<_0x5b8487[_0x54da('0x45')][_0x54da('0x55')]['length'];_0x260b2e+=0x1){_0x5b8487[_0x54da('0x45')][_0x54da('0x55')][_0x260b2e]={'filename':_0x5b8487[_0x54da('0x45')][_0x54da('0x55')][_0x260b2e][_0x54da('0x2a')],'path':path[_0x54da('0x56')](config['root'],'server/files/attachments',_0x5b8487[_0x54da('0x45')][_0x54da('0x55')][_0x260b2e][_0x54da('0x57')])};}}_0x3df178={'account':_0x1c7322,'message':_0x5b8487[_0x54da('0x45')]};return;})['then'](function(){if(_0x3f2045[_0x54da('0x4f')]){if(_0x3f2045['List'][_0x54da('0x58')][_0x54da('0x59')]){return _0x3f2045[_0x54da('0x4f')][_0x54da('0x58')][0x0];}else{return db[_0x54da('0x5a')]['create'](_[_0x54da('0xd')](_0x5b8487[_0x54da('0x45')],{'firstName':_0x5b8487['body']['to'],'email':_0x5b8487['body']['to'],'phone':_0x5b8487[_0x54da('0x45')]['to'],'ListId':_0x3f2045['ListId']}));}}else{throw new Error(_0x54da('0x5b'));}})[_0x54da('0x27')](function(){if(_0x3df178){return respondWithRpcPromise(_0x54da('0x5c'),_0x54da('0x5d'),_0x3df178,client9003)[_0x54da('0x27')](function(_0x4dc89f){return _0x516a8b['update']({'read':!![],'messageId':_0x4dc89f[_0x54da('0x5e')],'sentAt':moment()[_0x54da('0x5f')](_0x54da('0x60'))});})[_0x54da('0x1f')](function(_0x4ce8b2){logger[_0x54da('0x1b')]('%s',JSON[_0x54da('0x1a')](_0x4ce8b2));return _0x516a8b;});}return _0x516a8b;});}return _0x516a8b;}})['then'](respondWithResult(_0xdd2631,0xc9))['catch'](handleError(_0xdd2631,null));};exports[_0x54da('0x61')]=function(_0x4dc865,_0x3f72ec){var _0x5af714={'agent':{},'channel':_0x54da('0x62')};if(_0x4dc865[_0x54da('0x45')]['id']){delete _0x4dc865[_0x54da('0x45')]['id'];}_0x4dc865[_0x54da('0x45')]['read']=!![];_0x4dc865[_0x54da('0x45')]['readAt']=moment()[_0x54da('0x5f')](_0x54da('0x60'));_0x4dc865[_0x54da('0x45')][_0x54da('0x63')]=_0x4dc865[_0x54da('0x45')]['UserId']||_0x4dc865[_0x54da('0x64')]['id'];_0x5af714[_0x54da('0x65')]['id']=_0x4dc865[_0x54da('0x45')]['UserId'];return db[_0x54da('0x2d')]['find']({'where':{'id':_0x4dc865[_0x54da('0x42')]['id'],'UserId':null}})[_0x54da('0x27')](handleEntityNotFound(_0x3f72ec,null))[_0x54da('0x27')](saveUpdates(_0x4dc865[_0x54da('0x45')],null))[_0x54da('0x27')](function(_0x4ddab2){if(_0x4ddab2){_0x5af714[_0x54da('0x1c')]=_0x4ddab2[_0x54da('0x66')]({'plain':!![]});return db['MailInteraction'][_0x54da('0x46')]({'where':{'id':_0x4ddab2[_0x54da('0x67')]}});}return null;})[_0x54da('0x27')](handleEntityNotFound(_0x3f72ec,null))['then'](function(_0x3ca5e7){if(_0x3ca5e7){return _0x3ca5e7[_0x54da('0x26')]({'UserId':_0x4dc865[_0x54da('0x45')][_0x54da('0x63')],'read1stAt':_[_0x54da('0x68')](_0x3ca5e7[_0x54da('0x69')])?moment()[_0x54da('0x5f')](_0x54da('0x60')):undefined});}return null;})[_0x54da('0x27')](function(_0x5b1921){if(_0x5b1921){_0x5af714[_0x54da('0x6a')]=_0x5b1921[_0x54da('0x66')]({'plain':!![]});interaction_log[_0x54da('0x1d')]('[MAILMESSAGE:ACCEPT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s',_0x4dc865['user']['id'],_0x4dc865[_0x54da('0x64')][_0x54da('0x2a')],_0x4dc865[_0x54da('0x64')][_0x54da('0x6b')],_0x5af714[_0x54da('0x6a')]['id'],_0x4dc865['body']?JSON['stringify'](_0x4dc865[_0x54da('0x45')]):'null');return respondWithRpcPromise(_0x54da('0x6c'),_0x54da('0x6d'),_0x5af714);}return null;})[_0x54da('0x27')](function(_0x1e2ef3){var _0x8d5d6f=_0x54da('0x6e')+_0x1e2ef3[_0x54da('0x1c')][_0x54da('0x6f')];return db[_0x54da('0x70')][_0x54da('0x33')](_0x8d5d6f,{'type':db['Sequelize']['QueryTypes']['SELECT'],'raw':!![]})['then'](function(_0x3e32a9){return _0x3e32a9;});})[_0x54da('0x27')](function(_0x2b106f){if(_0x2b106f){_0x5af714[_0x54da('0x1c')][_0x54da('0x71')]=_0x2b106f[0x0];if(!_0x4dc865[_0x54da('0x45')][_0x54da('0x63')])return;return db['User']['find']({'where':{'id':_0x4dc865[_0x54da('0x45')][_0x54da('0x63')],'role':'agent'},'attributes':['id','name',_0x54da('0x72'),_0x54da('0x73'),_0x54da('0x74')],'raw':!![]});}return null;})[_0x54da('0x27')](function(_0xf992b9){if(!_0xf992b9)return null;_0x5af714['message'][_0x54da('0x65')]=_0xf992b9;return _0x5af714;})[_0x54da('0x27')](function(_0x1325eb){if(_0x1325eb){if(_0x4dc865[_0x54da('0x45')][_0x54da('0x75')]){_0x5af714[_0x54da('0x1c')][_0x54da('0x76')]=util[_0x54da('0x5f')](_0x54da('0x77'),_0x4dc865['user'][_0x54da('0x2a')]);_0x5af714[_0x54da('0x1c')][_0x54da('0x78')]=_0x5af714[_0x54da('0x78')];_0x5af714['message'][_0x54da('0x79')]=_0x5af714[_0x54da('0x78')];_0x5af714['message'][_0x54da('0x7a')]='accept';_0x5af714[_0x54da('0x1c')][_0x54da('0x45')]=htmlToText[_0x54da('0x7b')](_0x5af714[_0x54da('0x1c')][_0x54da('0x45')]);return respondWithRpcPromise('EventManager','EventManager',{'event':_0x54da('0x7c'),'message':_0x5af714[_0x54da('0x1c')]},client9002)[_0x54da('0x27')](function(){return _0x5af714;});}return _0x5af714;}return null;})['then'](respondWithResult(_0x3f72ec,null))[_0x54da('0x1f')](handleError(_0x3f72ec,null));};exports['reject']=function(_0x496d52,_0x4672b8){var _0x3abdbd={'agent':{},'channel':_0x54da('0x62')};if(_0x496d52['body']['id']){delete _0x496d52['body']['id'];}_0x496d52['body'][_0x54da('0x63')]=_0x496d52['body'][_0x54da('0x63')]||_0x496d52['user']['id'];_0x3abdbd[_0x54da('0x65')]['id']=_0x496d52[_0x54da('0x45')][_0x54da('0x63')];return db['MailMessage']['find']({'where':{'id':_0x496d52[_0x54da('0x42')]['id'],'UserId':null}})[_0x54da('0x27')](handleEntityNotFound(_0x4672b8,null))['then'](function(_0x5bc084){if(_0x5bc084){_0x3abdbd[_0x54da('0x1c')]=_0x5bc084['get']({'plain':!![]});return db[_0x54da('0x7d')][_0x54da('0x46')]({'where':{'id':_0x5bc084['MailInteractionId']}});}return null;})['then'](handleEntityNotFound(_0x4672b8,null))['then'](function(_0x16ce79){if(_0x16ce79){_0x3abdbd[_0x54da('0x6a')]=_0x16ce79[_0x54da('0x66')]({'plain':!![]});interaction_log[_0x54da('0x1d')](_0x54da('0x7e'),_0x496d52[_0x54da('0x64')]['id'],_0x496d52[_0x54da('0x64')][_0x54da('0x2a')],_0x496d52['user'][_0x54da('0x6b')],_0x3abdbd['interaction']['id'],_0x496d52[_0x54da('0x45')]?JSON[_0x54da('0x1a')](_0x496d52[_0x54da('0x45')]):_0x54da('0x7f'));return respondWithRpcPromise(_0x54da('0x80'),_0x54da('0x81'),_0x3abdbd);}return null;})[_0x54da('0x27')](function(_0x2386c3){var _0x51b79d=_0x54da('0x6e')+_0x2386c3[_0x54da('0x1c')][_0x54da('0x6f')];return db[_0x54da('0x70')][_0x54da('0x33')](_0x51b79d,{'type':db[_0x54da('0x82')]['QueryTypes'][_0x54da('0x83')],'raw':!![]})['then'](function(_0x31607){return _0x31607;});})[_0x54da('0x27')](function(_0x36d952){if(_0x36d952){_0x3abdbd[_0x54da('0x1c')][_0x54da('0x71')]=_0x36d952[0x0];if(!_0x496d52[_0x54da('0x45')]['UserId'])return;return db['User'][_0x54da('0x46')]({'where':{'id':_0x496d52[_0x54da('0x45')]['UserId'],'role':_0x54da('0x65')},'attributes':['id',_0x54da('0x2a'),_0x54da('0x72'),_0x54da('0x73'),_0x54da('0x74')],'raw':!![]});}return null;})[_0x54da('0x27')](function(_0x1a4b17){if(!_0x1a4b17)return null;_0x3abdbd[_0x54da('0x1c')][_0x54da('0x65')]=_0x1a4b17;return _0x3abdbd;})['then'](function(_0xfe066e){if(_0xfe066e){_0xfe066e['message'][_0x54da('0x76')]=util[_0x54da('0x5f')]('SIP/%s',_0x496d52[_0x54da('0x64')]['name']);_0xfe066e[_0x54da('0x1c')][_0x54da('0x78')]=_0x3abdbd[_0x54da('0x78')];_0xfe066e[_0x54da('0x1c')][_0x54da('0x79')]=_0x3abdbd[_0x54da('0x78')];_0xfe066e[_0x54da('0x1c')]['event']=_0x54da('0x84');_0xfe066e['message'][_0x54da('0x45')]=htmlToText[_0x54da('0x7b')](_0x3abdbd[_0x54da('0x1c')][_0x54da('0x45')]);respondWithRpcPromise(_0x54da('0x85'),'EventManager',{'event':_0x54da('0x86'),'message':_0xfe066e[_0x54da('0x1c')]},client9002);return _0x3abdbd;}return null;})[_0x54da('0x27')](respondWithResult(_0x4672b8,null))['catch'](handleError(_0x4672b8,null));};exports[_0x54da('0x87')]=function(_0x182b8b,_0x1513f4){var _0x794eea=moment()['unix']()[_0x54da('0x88')]();var _0x450cea=path[_0x54da('0x56')](config[_0x54da('0x89')],_0x54da('0x8a'),_0x54da('0x8b'),_0x54da('0x8c'));var _0x7f8e33=path[_0x54da('0x56')](config[_0x54da('0x89')],_0x54da('0x8a'),_0x54da('0x8b'),_0x54da('0x55'));var _0x44a831=util[_0x54da('0x5f')](_0x54da('0x8d'),_0x794eea);return db['MailMessage'][_0x54da('0x46')]({'where':{'id':_0x182b8b[_0x54da('0x42')]['id']},'attributes':['id','body',_0x54da('0x8e'),'to','cc','bcc',_0x54da('0x8f'),'createdAt'],'include':_0x182b8b[_0x54da('0x33')][_0x54da('0x55')]?[{'model':db[_0x54da('0x90')],'as':_0x54da('0x91')}]:undefined})[_0x54da('0x27')](handleEntityNotFound(_0x1513f4,null))[_0x54da('0x27')](function(_0x45f239){if(_0x45f239){var _0x12c368=_0x45f239;var _0x58d31d={'from':_0x12c368[_0x54da('0x8e')],'to':_0x12c368['to'],'subject':_0x12c368[_0x54da('0x8f')],'html':htmlEntities[_0x54da('0x92')](_0x12c368[_0x54da('0x45')]),'headers':{'Date':moment(_0x12c368[_0x54da('0x93')])[_0x54da('0x5f')]('ddd,\x20DD\x20MMM\x20YYYY\x20HH:mm:ss\x20ZZ')},'attachments':[]};if(_0x45f239['cc']){_0x58d31d[_0x54da('0x94')]['Cc']=_0x45f239['cc'];}if(_0x45f239[_0x54da('0x95')]){_0x58d31d[_0x54da('0x94')][_0x54da('0x96')]=_0x45f239[_0x54da('0x95')];}return new BPromise(function(_0x1e987a,_0x2aa4c1){if(_0x45f239[_0x54da('0x91')]){for(var _0x536b3d=0x0;_0x536b3d<_0x45f239[_0x54da('0x91')]['length'];_0x536b3d++){var _0x126c0d=_0x45f239[_0x54da('0x91')][_0x536b3d];var _0x4cdaa7=path[_0x54da('0x56')](_0x7f8e33,_0x126c0d[_0x54da('0x57')]);if(fs[_0x54da('0x97')](_0x4cdaa7)){_0x58d31d[_0x54da('0x55')][_0x54da('0x98')]({'name':_0x126c0d['name'],'contentType':_0x126c0d['type'],'data':fs[_0x54da('0x99')](_0x4cdaa7)});}}}emlformat[_0x54da('0x9a')](_0x58d31d,function(_0x5d3994,_0x1688b7){if(_0x5d3994)return _0x2aa4c1(_0x5d3994);fs['writeFileSync'](path[_0x54da('0x56')](_0x450cea,_0x44a831),_0x1688b7);return _0x1e987a(_0x1688b7);});});}})[_0x54da('0x27')](function(_0x4a30e2){if(_0x4a30e2){return _0x1513f4[_0x54da('0x87')](path[_0x54da('0x56')](_0x450cea,_0x44a831),_0x44a831,function(_0x2a2469){if(!_0x2a2469)fs[_0x54da('0x9b')](path[_0x54da('0x56')](_0x450cea,_0x44a831));});}})[_0x54da('0x1f')](handleError(_0x1513f4,null));};