Built motion from commit 00bf23f6.|2.6.16
[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 _0x05d4=['get','interaction','[MAILMESSAGE:REJECT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','role','null','RejectMessage','rejectMessage','User','email','EventManager','rejectmessage','download','unix','toString','server','files','tmp','from','subject','createdAt','Attachments','decode','ddd,\x20DD\x20MMM\x20YYYY\x20HH:mm:ss\x20ZZ','headers','bcc','Bcc','existsSync','readFileSync','writeFileSync','unlinkSync','eml-format','moment','bluebird','util','path','lodash','ioredis','html-to-text','../../components/parsers/qs','../../config/logger','api','mail-interactions','../../config/environment','../../mysqldb','redis','defaults','localhost','socket.io-emitter','html-entities','./mailMessage.socket','client','http','request','then','info','MailMessage,\x20%s,\x20%s','request\x20sent','debug','MailMessage,\x20%s,\x20%s,\x20%s','stringify','error','code','message','result','catch','status','json','offset','undefined','limit','count','Content-Range','destroy','stack','name','send','MailMessage','fieldName','type','key','model','map','query','keys','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','filters','pick','filter','merge','includeAll','findAll','rows','show','params','include','options','find','update','body','describe','create','direction','out','split','MailAccount','findOne','MailAccountId','CmList','Contacts','updatedAt','DESC','Smtp','getSmtpOptions','attachments','join','root','basename','List','ListId','sendMail','format','accept','read','readAt','YYYY-MM-DD\x20HH:mm:ss','UserId','user','agent','MailInteraction','MailInteractionId','read1stAt','[MAILMESSAGE:ACCEPT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','AcceptMessage','SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20','ContactId','sequelize','Sequelize','QueryTypes','SELECT','contact','fullname','internal','interface','SIP/%s','channel','motionChannel','event','reject'];(function(_0x4a9fb1,_0x273043){var _0x348672=function(_0x142b69){while(--_0x142b69){_0x4a9fb1['push'](_0x4a9fb1['shift']());}};_0x348672(++_0x273043);}(_0x05d4,0x156));var _0x405d=function(_0x426d28,_0x287fc9){_0x426d28=_0x426d28-0x0;var _0xd1ff18=_0x05d4[_0x426d28];return _0xd1ff18;};'use strict';var emlformat=require(_0x405d('0x0'));var moment=require(_0x405d('0x1'));var BPromise=require(_0x405d('0x2'));var util=require(_0x405d('0x3'));var path=require(_0x405d('0x4'));var fs=require('fs');var _=require(_0x405d('0x5'));var Redis=require(_0x405d('0x6'));var htmlToText=require(_0x405d('0x7'));var qs=require(_0x405d('0x8'));var logger=require(_0x405d('0x9'))(_0x405d('0xa'));var interaction_log=require(_0x405d('0x9'))(_0x405d('0xb'));var config=require(_0x405d('0xc'));var db=require(_0x405d('0xd'))['db'];config[_0x405d('0xe')]=_[_0x405d('0xf')](config[_0x405d('0xe')],{'host':_0x405d('0x10'),'port':0x18eb});var socket=require(_0x405d('0x11'))(new Redis(config[_0x405d('0xe')]));var htmlEntities=require(_0x405d('0x12'));require(_0x405d('0x13'))['register'](socket);var jayson=require('jayson/promise');var client=jayson[_0x405d('0x14')][_0x405d('0x15')]({'port':0x232c});var client9003=jayson['client'][_0x405d('0x15')]({'port':0x232b});var client9002=jayson[_0x405d('0x14')]['http']({'port':0x232a});function respondWithRpcPromise(_0x5872df,_0x147636,_0x57797f,_0x402bd5){return new BPromise(function(_0x2324ef,_0x2ffcfe){var _0xa00a25=_0x402bd5||client;return _0xa00a25[_0x405d('0x16')](_0x5872df,_0x57797f)[_0x405d('0x17')](function(_0x53dda8){logger[_0x405d('0x18')](_0x405d('0x19'),_0x147636,_0x405d('0x1a'));logger[_0x405d('0x1b')](_0x405d('0x1c'),_0x147636,_0x405d('0x1a'),JSON[_0x405d('0x1d')](_0x53dda8));if(_0x53dda8[_0x405d('0x1e')]){if(_0x53dda8[_0x405d('0x1e')][_0x405d('0x1f')]===0x1f4){logger[_0x405d('0x1e')](_0x405d('0x19'),_0x147636,_0x53dda8['error'][_0x405d('0x20')]);return _0x2ffcfe(_0x53dda8[_0x405d('0x1e')][_0x405d('0x20')]);}logger[_0x405d('0x1e')](_0x405d('0x19'),_0x147636,_0x53dda8[_0x405d('0x1e')][_0x405d('0x20')]);return _0x2324ef(_0x53dda8[_0x405d('0x1e')][_0x405d('0x20')]);}else{logger[_0x405d('0x18')]('MailMessage,\x20%s,\x20%s',_0x147636,_0x405d('0x1a'));_0x2324ef(_0x53dda8[_0x405d('0x21')]['message']);}})[_0x405d('0x22')](function(_0x554a3c){logger[_0x405d('0x1e')](_0x405d('0x19'),_0x147636,_0x554a3c);_0x2ffcfe(_0x554a3c);});});}function respondWithResult(_0x29a61e,_0x2c5903){_0x2c5903=_0x2c5903||0xc8;return function(_0x228507){if(_0x228507){return _0x29a61e[_0x405d('0x23')](_0x2c5903)[_0x405d('0x24')](_0x228507);}};}function respondWithFilteredResult(_0x260267,_0x38011b){return function(_0x33ba8e){if(_0x33ba8e){var _0x18bb58=typeof _0x38011b[_0x405d('0x25')]===_0x405d('0x26')&&typeof _0x38011b[_0x405d('0x27')]===_0x405d('0x26');var _0x5a2c33=_0x33ba8e[_0x405d('0x28')];var _0x2131ae=_0x18bb58?0x0:_0x38011b[_0x405d('0x25')];var _0x19ced4=_0x18bb58?_0x33ba8e[_0x405d('0x28')]:_0x38011b['offset']+_0x38011b[_0x405d('0x27')];var _0xdd3701;if(_0x19ced4>=_0x5a2c33){_0x19ced4=_0x5a2c33;_0xdd3701=0xc8;}else{_0xdd3701=0xce;}_0x260267['status'](_0xdd3701);return _0x260267['set'](_0x405d('0x29'),_0x2131ae+'-'+_0x19ced4+'/'+_0x5a2c33)['json'](_0x33ba8e);}return null;};}function saveUpdates(_0x5a47ff){return function(_0x11e310){if(_0x11e310){return _0x11e310['update'](_0x5a47ff)[_0x405d('0x17')](function(_0x96f5a6){return _0x96f5a6;});}return null;};}function removeEntity(_0x45f3c9){return function(_0x2e675e){if(_0x2e675e){return _0x2e675e[_0x405d('0x2a')]()['then'](function(){_0x45f3c9[_0x405d('0x23')](0xcc)['end']();});}};}function handleEntityNotFound(_0x510210){return function(_0x4ceafb){if(!_0x4ceafb){_0x510210['sendStatus'](0x194);}return _0x4ceafb;};}function handleError(_0x346810,_0x7590fc){_0x7590fc=_0x7590fc||0x1f4;return function(_0x50c827){logger[_0x405d('0x1e')](_0x50c827[_0x405d('0x2b')]);if(_0x50c827[_0x405d('0x2c')]){delete _0x50c827[_0x405d('0x2c')];}_0x346810[_0x405d('0x23')](_0x7590fc)[_0x405d('0x2d')](_0x50c827);};}exports['index']=function(_0x1078e1,_0x4f3b2d){var _0x4d0376={},_0x46dd21={},_0x5d93c5={'count':0x0,'rows':[]};var _0x756680=_['map'](db[_0x405d('0x2e')]['rawAttributes'],function(_0x1d23a7){return{'name':_0x1d23a7[_0x405d('0x2f')],'type':_0x1d23a7[_0x405d('0x30')][_0x405d('0x31')]};});_0x46dd21[_0x405d('0x32')]=_[_0x405d('0x33')](_0x756680,_0x405d('0x2c'));_0x46dd21[_0x405d('0x34')]=_[_0x405d('0x35')](_0x1078e1[_0x405d('0x34')]);_0x46dd21['filters']=_[_0x405d('0x36')](_0x46dd21['model'],_0x46dd21[_0x405d('0x34')]);_0x4d0376[_0x405d('0x37')]=_['intersection'](_0x46dd21['model'],qs['fields'](_0x1078e1[_0x405d('0x34')][_0x405d('0x38')]));_0x4d0376[_0x405d('0x37')]=_0x4d0376[_0x405d('0x37')][_0x405d('0x39')]?_0x4d0376[_0x405d('0x37')]:_0x46dd21[_0x405d('0x32')];if(!_0x1078e1[_0x405d('0x34')][_0x405d('0x3a')](_0x405d('0x3b'))){_0x4d0376[_0x405d('0x27')]=qs[_0x405d('0x27')](_0x1078e1[_0x405d('0x34')][_0x405d('0x27')]);_0x4d0376['offset']=qs[_0x405d('0x25')](_0x1078e1[_0x405d('0x34')]['offset']);}_0x4d0376[_0x405d('0x3c')]=qs[_0x405d('0x3d')](_0x1078e1[_0x405d('0x34')][_0x405d('0x3d')]);_0x4d0376[_0x405d('0x3e')]=qs[_0x405d('0x3f')](_[_0x405d('0x40')](_0x1078e1[_0x405d('0x34')],_0x46dd21[_0x405d('0x3f')]),_0x756680);if(_0x1078e1['query'][_0x405d('0x41')]){_0x4d0376[_0x405d('0x3e')]=_[_0x405d('0x42')](_0x4d0376[_0x405d('0x3e')],{'$or':_['map'](_0x756680,function(_0x44cfe6){if(_0x44cfe6[_0x405d('0x30')]!=='VIRTUAL'){var _0xba579c={};_0xba579c[_0x44cfe6[_0x405d('0x2c')]]={'$like':'%'+_0x1078e1[_0x405d('0x34')][_0x405d('0x41')]+'%'};return _0xba579c;}})});}_0x4d0376=_['merge']({},_0x4d0376,_0x1078e1['options']);var _0xe58458={'where':_0x4d0376[_0x405d('0x3e')]};return db['MailMessage'][_0x405d('0x28')](_0xe58458)['then'](function(_0x7a14ba){_0x5d93c5[_0x405d('0x28')]=_0x7a14ba;if(_0x1078e1['query'][_0x405d('0x43')]){_0x4d0376['include']=[{'all':!![]}];}return db['MailMessage'][_0x405d('0x44')](_0x4d0376);})[_0x405d('0x17')](function(_0x34bb1f){_0x5d93c5[_0x405d('0x45')]=_0x34bb1f;return _0x5d93c5;})[_0x405d('0x17')](respondWithFilteredResult(_0x4f3b2d,_0x4d0376))[_0x405d('0x22')](handleError(_0x4f3b2d,null));};exports[_0x405d('0x46')]=function(_0x434c4c,_0x406528){var _0x35866f={'raw':!![],'where':{'id':_0x434c4c[_0x405d('0x47')]['id']}},_0x403d16={};_0x403d16[_0x405d('0x32')]=_['keys'](db[_0x405d('0x2e')]['rawAttributes']);_0x403d16[_0x405d('0x34')]=_['keys'](_0x434c4c[_0x405d('0x34')]);_0x403d16['filters']=_[_0x405d('0x36')](_0x403d16[_0x405d('0x32')],_0x403d16[_0x405d('0x34')]);_0x35866f[_0x405d('0x37')]=_[_0x405d('0x36')](_0x403d16[_0x405d('0x32')],qs[_0x405d('0x38')](_0x434c4c[_0x405d('0x34')]['fields']));_0x35866f[_0x405d('0x37')]=_0x35866f['attributes'][_0x405d('0x39')]?_0x35866f[_0x405d('0x37')]:_0x403d16['model'];if(_0x434c4c[_0x405d('0x34')][_0x405d('0x43')]){_0x35866f[_0x405d('0x48')]=[{'all':!![]}];}_0x35866f=_[_0x405d('0x42')]({},_0x35866f,_0x434c4c[_0x405d('0x49')]);return db[_0x405d('0x2e')][_0x405d('0x4a')](_0x35866f)[_0x405d('0x17')](handleEntityNotFound(_0x406528,null))[_0x405d('0x17')](respondWithResult(_0x406528,null))[_0x405d('0x22')](handleError(_0x406528,null));};exports[_0x405d('0x4b')]=function(_0x4f998f,_0x416d48){if(_0x4f998f['body']['id']){delete _0x4f998f['body']['id'];}return db[_0x405d('0x2e')][_0x405d('0x4a')]({'where':{'id':_0x4f998f[_0x405d('0x47')]['id']}})['then'](handleEntityNotFound(_0x416d48,null))[_0x405d('0x17')](saveUpdates(_0x4f998f[_0x405d('0x4c')],null))['then'](respondWithResult(_0x416d48,null))[_0x405d('0x22')](handleError(_0x416d48,null));};exports['destroy']=function(_0x59bb70,_0x42a423){return db[_0x405d('0x2e')]['find']({'where':{'id':_0x59bb70[_0x405d('0x47')]['id']}})[_0x405d('0x17')](handleEntityNotFound(_0x42a423,null))[_0x405d('0x17')](removeEntity(_0x42a423,null))[_0x405d('0x22')](handleError(_0x42a423,null));};exports[_0x405d('0x4d')]=function(_0x2d8439,_0x2b9bbe){return db[_0x405d('0x2e')][_0x405d('0x4d')]()[_0x405d('0x17')](respondWithResult(_0x2b9bbe,null))[_0x405d('0x22')](handleError(_0x2b9bbe,null));};exports[_0x405d('0x4e')]=function(_0x22b2cf,_0x41dad1){return db[_0x405d('0x2e')][_0x405d('0x4e')](_0x22b2cf['body'])[_0x405d('0x17')](function(_0x1003a5){if(_0x1003a5){if(_0x1003a5[_0x405d('0x4f')]===_0x405d('0x50')&&!_0x1003a5['secret']){var _0x2164d1,_0x494793,_0x2ce027;if(_0x22b2cf[_0x405d('0x4c')]['to']){_0x494793=_0x22b2cf[_0x405d('0x4c')]['to'][_0x405d('0x51')](',')[0x0];}return db[_0x405d('0x52')][_0x405d('0x53')]({'where':{'id':_0x1003a5[_0x405d('0x54')]},'include':[{'model':db[_0x405d('0x55')],'as':'List','include':[{'model':db['CmContact'],'as':_0x405d('0x56'),'where':{'email':_0x494793},'limit':0x1,'order':[[_0x405d('0x57'),_0x405d('0x58')]]}]},{'model':db['MailServerOut'],'as':_0x405d('0x59'),'raw':!![],'include':[{'model':db['CloudProvider'],'as':'CloudProvider','raw':!![]}]}]})[_0x405d('0x17')](function(_0x258f5b){_0x2164d1=_0x258f5b;if(!_0x2164d1||!_0x2164d1['Smtp'])return;var _0x496c00=_0x2164d1[_0x405d('0x5a')]();if(_0x22b2cf[_0x405d('0x4c')][_0x405d('0x5b')]&&_0x22b2cf[_0x405d('0x4c')][_0x405d('0x5b')]['length']){for(var _0x425e79=0x0;_0x425e79<_0x22b2cf[_0x405d('0x4c')]['attachments'][_0x405d('0x39')];_0x425e79+=0x1){_0x22b2cf['body']['attachments'][_0x425e79]={'filename':_0x22b2cf[_0x405d('0x4c')][_0x405d('0x5b')][_0x425e79]['name'],'path':path[_0x405d('0x5c')](config[_0x405d('0x5d')],'server/files/attachments',_0x22b2cf[_0x405d('0x4c')][_0x405d('0x5b')][_0x425e79][_0x405d('0x5e')])};}}_0x2ce027={'account':_0x496c00,'message':_0x22b2cf[_0x405d('0x4c')]};return;})['then'](function(){if(_0x2164d1['List']){if(_0x2164d1[_0x405d('0x5f')]['Contacts'][_0x405d('0x39')]){return _0x2164d1['List'][_0x405d('0x56')][0x0];}else{return db['CmContact'][_0x405d('0x4e')](_[_0x405d('0xf')](_0x22b2cf[_0x405d('0x4c')],{'firstName':_0x22b2cf[_0x405d('0x4c')]['to'],'email':_0x22b2cf[_0x405d('0x4c')]['to'],'phone':_0x22b2cf[_0x405d('0x4c')]['to'],'ListId':_0x2164d1[_0x405d('0x60')]}));}}else{throw new Error('List\x20not\x20found');}})['then'](function(){if(_0x2ce027){return respondWithRpcPromise('SendMail',_0x405d('0x61'),_0x2ce027,client9003)[_0x405d('0x17')](function(_0x4a0de2){return _0x1003a5[_0x405d('0x4b')]({'read':!![],'messageId':_0x4a0de2['messageId'],'sentAt':moment()[_0x405d('0x62')]('YYYY-MM-DD\x20HH:mm:ss')});})[_0x405d('0x22')](function(_0x1e4f3f){logger[_0x405d('0x1e')]('%s',JSON[_0x405d('0x1d')](_0x1e4f3f));return _0x1003a5;});}return _0x1003a5;});}return _0x1003a5;}})['then'](respondWithResult(_0x41dad1,0xc9))['catch'](handleError(_0x41dad1,null));};exports[_0x405d('0x63')]=function(_0x3b7817,_0x576269){var _0x498d1b={'agent':{},'channel':'mail'};if(_0x3b7817[_0x405d('0x4c')]['id']){delete _0x3b7817[_0x405d('0x4c')]['id'];}_0x3b7817['body'][_0x405d('0x64')]=!![];_0x3b7817[_0x405d('0x4c')][_0x405d('0x65')]=moment()[_0x405d('0x62')](_0x405d('0x66'));_0x3b7817[_0x405d('0x4c')]['UserId']=_0x3b7817[_0x405d('0x4c')][_0x405d('0x67')]||_0x3b7817[_0x405d('0x68')]['id'];_0x498d1b[_0x405d('0x69')]['id']=_0x3b7817[_0x405d('0x4c')]['UserId'];return db[_0x405d('0x2e')][_0x405d('0x4a')]({'where':{'id':_0x3b7817[_0x405d('0x47')]['id'],'UserId':null}})[_0x405d('0x17')](handleEntityNotFound(_0x576269,null))['then'](saveUpdates(_0x3b7817[_0x405d('0x4c')],null))[_0x405d('0x17')](function(_0x42080e){if(_0x42080e){_0x498d1b['message']=_0x42080e['get']({'plain':!![]});return db[_0x405d('0x6a')][_0x405d('0x4a')]({'where':{'id':_0x42080e[_0x405d('0x6b')]}});}return null;})[_0x405d('0x17')](handleEntityNotFound(_0x576269,null))[_0x405d('0x17')](function(_0x2a38ee){if(_0x2a38ee){return _0x2a38ee[_0x405d('0x4b')]({'UserId':_0x3b7817[_0x405d('0x4c')][_0x405d('0x67')],'read1stAt':_['isNil'](_0x2a38ee[_0x405d('0x6c')])?moment()[_0x405d('0x62')]('YYYY-MM-DD\x20HH:mm:ss'):undefined});}return null;})['then'](function(_0x89e864){if(_0x89e864){_0x498d1b['interaction']=_0x89e864['get']({'plain':!![]});interaction_log[_0x405d('0x18')](_0x405d('0x6d'),_0x3b7817['user']['id'],_0x3b7817[_0x405d('0x68')][_0x405d('0x2c')],_0x3b7817[_0x405d('0x68')]['role'],_0x498d1b['interaction']['id'],_0x3b7817[_0x405d('0x4c')]?JSON[_0x405d('0x1d')](_0x3b7817['body']):'null');return respondWithRpcPromise(_0x405d('0x6e'),'acceptMessage',_0x498d1b);}return null;})[_0x405d('0x17')](function(_0x119766){var _0x129d13=_0x405d('0x6f')+_0x119766[_0x405d('0x20')][_0x405d('0x70')];return db[_0x405d('0x71')][_0x405d('0x34')](_0x129d13,{'type':db[_0x405d('0x72')][_0x405d('0x73')][_0x405d('0x74')],'raw':!![]})['then'](function(_0x2c77cb){return _0x2c77cb;});})[_0x405d('0x17')](function(_0xedead5){if(_0xedead5){_0x498d1b[_0x405d('0x20')][_0x405d('0x75')]=_0xedead5[0x0];if(!_0x3b7817[_0x405d('0x4c')][_0x405d('0x67')])return;return db['User']['find']({'where':{'id':_0x3b7817['body'][_0x405d('0x67')],'role':'agent'},'attributes':['id',_0x405d('0x2c'),_0x405d('0x76'),'email',_0x405d('0x77')],'raw':!![]});}return null;})['then'](function(_0x42703a){if(!_0x42703a)return null;_0x498d1b[_0x405d('0x20')][_0x405d('0x69')]=_0x42703a;return _0x498d1b;})[_0x405d('0x17')](function(_0x34e944){if(_0x34e944){if(_0x3b7817[_0x405d('0x4c')]['manual']){_0x498d1b[_0x405d('0x20')][_0x405d('0x78')]=util[_0x405d('0x62')](_0x405d('0x79'),_0x3b7817[_0x405d('0x68')][_0x405d('0x2c')]);_0x498d1b[_0x405d('0x20')]['channel']=_0x498d1b[_0x405d('0x7a')];_0x498d1b[_0x405d('0x20')][_0x405d('0x7b')]=_0x498d1b['channel'];_0x498d1b['message'][_0x405d('0x7c')]=_0x405d('0x63');_0x498d1b[_0x405d('0x20')][_0x405d('0x4c')]=htmlToText['fromString'](_0x498d1b[_0x405d('0x20')][_0x405d('0x4c')]);return respondWithRpcPromise('EventManager','EventManager',{'event':'acceptmessage','message':_0x498d1b[_0x405d('0x20')]},client9002)[_0x405d('0x17')](function(){return _0x498d1b;});}return _0x498d1b;}return null;})[_0x405d('0x17')](respondWithResult(_0x576269,null))[_0x405d('0x22')](handleError(_0x576269,null));};exports[_0x405d('0x7d')]=function(_0x351f3f,_0x3c3eb5){var _0x11434d={'agent':{},'channel':'mail'};if(_0x351f3f[_0x405d('0x4c')]['id']){delete _0x351f3f[_0x405d('0x4c')]['id'];}_0x351f3f['body'][_0x405d('0x67')]=_0x351f3f['body'][_0x405d('0x67')]||_0x351f3f[_0x405d('0x68')]['id'];_0x11434d[_0x405d('0x69')]['id']=_0x351f3f[_0x405d('0x4c')][_0x405d('0x67')];return db[_0x405d('0x2e')][_0x405d('0x4a')]({'where':{'id':_0x351f3f[_0x405d('0x47')]['id'],'UserId':null}})[_0x405d('0x17')](handleEntityNotFound(_0x3c3eb5,null))[_0x405d('0x17')](function(_0x3705d2){if(_0x3705d2){_0x11434d['message']=_0x3705d2[_0x405d('0x7e')]({'plain':!![]});return db[_0x405d('0x6a')]['find']({'where':{'id':_0x3705d2['MailInteractionId']}});}return null;})[_0x405d('0x17')](handleEntityNotFound(_0x3c3eb5,null))[_0x405d('0x17')](function(_0x2373c3){if(_0x2373c3){_0x11434d[_0x405d('0x7f')]=_0x2373c3[_0x405d('0x7e')]({'plain':!![]});interaction_log[_0x405d('0x18')](_0x405d('0x80'),_0x351f3f['user']['id'],_0x351f3f[_0x405d('0x68')][_0x405d('0x2c')],_0x351f3f[_0x405d('0x68')][_0x405d('0x81')],_0x11434d[_0x405d('0x7f')]['id'],_0x351f3f[_0x405d('0x4c')]?JSON[_0x405d('0x1d')](_0x351f3f[_0x405d('0x4c')]):_0x405d('0x82'));return respondWithRpcPromise(_0x405d('0x83'),_0x405d('0x84'),_0x11434d);}return null;})[_0x405d('0x17')](function(_0x4f08b6){var _0x360ea5='SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20'+_0x4f08b6[_0x405d('0x20')][_0x405d('0x70')];return db[_0x405d('0x71')][_0x405d('0x34')](_0x360ea5,{'type':db[_0x405d('0x72')][_0x405d('0x73')][_0x405d('0x74')],'raw':!![]})[_0x405d('0x17')](function(_0x564576){return _0x564576;});})[_0x405d('0x17')](function(_0x5cb6b7){if(_0x5cb6b7){_0x11434d['message'][_0x405d('0x75')]=_0x5cb6b7[0x0];if(!_0x351f3f[_0x405d('0x4c')][_0x405d('0x67')])return;return db[_0x405d('0x85')]['find']({'where':{'id':_0x351f3f[_0x405d('0x4c')][_0x405d('0x67')],'role':_0x405d('0x69')},'attributes':['id',_0x405d('0x2c'),_0x405d('0x76'),_0x405d('0x86'),_0x405d('0x77')],'raw':!![]});}return null;})[_0x405d('0x17')](function(_0x2c15dc){if(!_0x2c15dc)return null;_0x11434d[_0x405d('0x20')][_0x405d('0x69')]=_0x2c15dc;return _0x11434d;})[_0x405d('0x17')](function(_0x242212){if(_0x242212){_0x242212['message']['interface']=util[_0x405d('0x62')]('SIP/%s',_0x351f3f['user'][_0x405d('0x2c')]);_0x242212[_0x405d('0x20')][_0x405d('0x7a')]=_0x11434d[_0x405d('0x7a')];_0x242212['message'][_0x405d('0x7b')]=_0x11434d['channel'];_0x242212['message'][_0x405d('0x7c')]=_0x405d('0x7d');_0x242212['message']['body']=htmlToText['fromString'](_0x11434d['message'][_0x405d('0x4c')]);respondWithRpcPromise(_0x405d('0x87'),_0x405d('0x87'),{'event':_0x405d('0x88'),'message':_0x242212[_0x405d('0x20')]},client9002);return _0x11434d;}return null;})[_0x405d('0x17')](respondWithResult(_0x3c3eb5,null))['catch'](handleError(_0x3c3eb5,null));};exports[_0x405d('0x89')]=function(_0x12657b,_0x1895e1){var _0x2bc811=moment()[_0x405d('0x8a')]()[_0x405d('0x8b')]();var _0xfddc21=path['join'](config['root'],_0x405d('0x8c'),_0x405d('0x8d'),_0x405d('0x8e'));var _0x28a5ae=path[_0x405d('0x5c')](config[_0x405d('0x5d')],_0x405d('0x8c'),_0x405d('0x8d'),_0x405d('0x5b'));var _0x157242=util[_0x405d('0x62')]('message-%s.eml',_0x2bc811);return db[_0x405d('0x2e')][_0x405d('0x4a')]({'where':{'id':_0x12657b[_0x405d('0x47')]['id']},'attributes':['id',_0x405d('0x4c'),_0x405d('0x8f'),'to','cc','bcc',_0x405d('0x90'),_0x405d('0x91')],'include':_0x12657b[_0x405d('0x34')][_0x405d('0x5b')]?[{'model':db['Attachment'],'as':_0x405d('0x92')}]:undefined})[_0x405d('0x17')](handleEntityNotFound(_0x1895e1,null))['then'](function(_0x53d6e3){if(_0x53d6e3){var _0x402503=_0x53d6e3;var _0x874a13={'from':_0x402503[_0x405d('0x8f')],'to':_0x402503['to'],'subject':_0x402503[_0x405d('0x90')],'html':htmlEntities[_0x405d('0x93')](_0x402503['body']),'headers':{'Date':moment(_0x402503[_0x405d('0x91')])['format'](_0x405d('0x94'))},'attachments':[]};if(_0x53d6e3['cc']){_0x874a13[_0x405d('0x95')]['Cc']=_0x53d6e3['cc'];}if(_0x53d6e3[_0x405d('0x96')]){_0x874a13[_0x405d('0x95')][_0x405d('0x97')]=_0x53d6e3[_0x405d('0x96')];}return new BPromise(function(_0x478cca,_0x5d1174){if(_0x53d6e3['Attachments']){for(var _0x4e6c75=0x0;_0x4e6c75<_0x53d6e3[_0x405d('0x92')][_0x405d('0x39')];_0x4e6c75++){var _0x1c28d3=_0x53d6e3[_0x405d('0x92')][_0x4e6c75];var _0x48dcf8=path[_0x405d('0x5c')](_0x28a5ae,_0x1c28d3[_0x405d('0x5e')]);if(fs[_0x405d('0x98')](_0x48dcf8)){_0x874a13['attachments']['push']({'name':_0x1c28d3[_0x405d('0x2c')],'contentType':_0x1c28d3[_0x405d('0x30')],'data':fs[_0x405d('0x99')](_0x48dcf8)});}}}emlformat['build'](_0x874a13,function(_0x254976,_0x543139){if(_0x254976)return _0x5d1174(_0x254976);fs[_0x405d('0x9a')](path[_0x405d('0x5c')](_0xfddc21,_0x157242),_0x543139);return _0x478cca(_0x543139);});});}})[_0x405d('0x17')](function(_0x491e58){if(_0x491e58){return _0x1895e1[_0x405d('0x89')](path[_0x405d('0x5c')](_0xfddc21,_0x157242),_0x157242,function(_0x5ee508){if(!_0x5ee508)fs[_0x405d('0x9b')](path[_0x405d('0x5c')](_0xfddc21,_0x157242));});}})[_0x405d('0x22')](handleError(_0x1895e1,null));};