Built motion from commit 775e2a94.|2.6.3
[motion2.git] / server / services / routing / server / applications / autoreply.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 _0x35f1=['./utils','../../../../config/logger','routing','../../rpc/chatMessage','../../rpc/openchannelMessage','../../rpc/mailMessage','../../rpc/smsMessage','../../rpc/faxMessage','../../rpc/whatsappMessage','../../rpc/chatInteraction','../../rpc/openchannelInteraction','../../rpc/mailInteraction','../../rpc/smsInteraction','../../rpc/whatsappInteraction','../../mailRpc','consequence','channel','body','isAutoreply','info','[%s][AUTOREPLY]\x20%s','Autoreply\x20not\x20executed\x20(message\x20is\x20autoreply)','next','interaction','created','Autoreply\x20already\x20sent','autoreplyExecuted','[%s][AUTOREPLY][autoreplyExecuted]\x20%s','contact','format','YYYY-MM-DD\x20HH:mm:ss','out','mail','getMustacheRender','message','from','read','subject','startsWith','Re:','Re:\x20','chat','ChatWebsiteId','account','upperFirst','AccountId','InteractionId','Message','inReplyTo','messageId','html','<div\x20id=\x22xm-mail-content\x22>','<div\x20id=\x22xm-mail-content\x22','<div','</div>','auto-replied','All','auto_reply','sendMailMessage','smtpOptions','then','[%s][AUTOREPLY]\x20SMTP\x20SENT','create','catch','error','[RPC][%s][AUTOREPLY]\x20%s','stringify','finally','resolve','update','stop','lodash','moment'];(function(_0x57c625,_0x181023){var _0xf5e34b=function(_0x4d37dd){while(--_0x4d37dd){_0x57c625['push'](_0x57c625['shift']());}};_0xf5e34b(++_0x181023);}(_0x35f1,0x122));var _0x135f=function(_0x3d3817,_0x5d0b91){_0x3d3817=_0x3d3817-0x0;var _0x4f23ce=_0x35f1[_0x3d3817];return _0x4f23ce;};'use strict';var _=require(_0x135f('0x0'));var moment=require(_0x135f('0x1'));var utils=require(_0x135f('0x2'));var logger=require(_0x135f('0x3'))(_0x135f('0x4'));var rpc={'chatMessage':require(_0x135f('0x5')),'openchannelMessage':require(_0x135f('0x6')),'mailMessage':require(_0x135f('0x7')),'smsMessage':require(_0x135f('0x8')),'faxMessage':require(_0x135f('0x9')),'whatsappMessage':require(_0x135f('0xa')),'chatInteraction':require(_0x135f('0xb')),'openchannelInteraction':require(_0x135f('0xc')),'mailInteraction':require(_0x135f('0xd')),'smsInteraction':require(_0x135f('0xe')),'faxInteraction':require('../../rpc/faxInteraction'),'whatsappInteraction':require(_0x135f('0xf'))};var mailRpc=require(_0x135f('0x10'));exports[_0x135f('0x11')]=function(_0x3a8849,_0x37aa9a,_0x26b9bd,_0x20388f){return function(_0x4115fe){try{var _0x8611d1=this[_0x135f('0x12')];if(_0x8611d1==='mail'&&_0x20388f[_0x135f('0x13')][_0x135f('0x14')]){logger[_0x135f('0x15')](_0x135f('0x16'),_0x3a8849,_0x135f('0x17'));return _0x4115fe[_0x135f('0x18')]();}if(_0x37aa9a[0x0]==='1'&&(_['isNil'](this[_0x135f('0x19')][_0x135f('0x1a')])||!this[_0x135f('0x19')][_0x135f('0x1a')])){logger[_0x135f('0x15')](_0x135f('0x16'),_0x3a8849,_0x135f('0x1b'));return _0x4115fe[_0x135f('0x18')]();}if(_0x37aa9a[0x0]==='2'&&this[_0x135f('0x19')][_0x135f('0x1c')]){logger['info'](_0x135f('0x1d'),_0x3a8849,'One\x20Time\x20already\x20sent');return _0x4115fe[_0x135f('0x18')]();}var _0x5b51f0={'ContactId':this[_0x135f('0x1e')]['id'],'sentAt':moment()[_0x135f('0x1f')](_0x135f('0x20')),'direction':_0x135f('0x21')};if(this[_0x135f('0x12')]===_0x135f('0x22')){_0x5b51f0[_0x135f('0x13')]=utils[_0x135f('0x23')](_0x37aa9a[0x2],this);}else{_0x5b51f0[_0x135f('0x13')]=utils[_0x135f('0x23')](_0x37aa9a[0x1],this);}if(this[_0x135f('0x24')]){_0x5b51f0['to']=this[_0x135f('0x24')]['from']||'';if(this['channel']===_0x135f('0x22')&&_0x37aa9a[0x1]==='1'){_0x5b51f0['cc']=this[_0x135f('0x24')]['cc']||'';}_0x5b51f0[_0x135f('0x25')]=this['message']['to']||'';_0x5b51f0['phone']=this['message']['phone']||'';_0x5b51f0[_0x135f('0x26')]=!![];if(this[_0x135f('0x24')][_0x135f('0x27')]){_0x5b51f0[_0x135f('0x27')]='';_0x5b51f0['subject']+=_[_0x135f('0x28')](this[_0x135f('0x24')][_0x135f('0x27')],_0x135f('0x29'))?'':_0x135f('0x2a');_0x5b51f0[_0x135f('0x27')]+=this[_0x135f('0x24')][_0x135f('0x27')];}}if(this['channel']===_0x135f('0x2b')){_0x5b51f0[_0x135f('0x2c')]=this[_0x135f('0x2d')]['id'];}else{_0x5b51f0[_[_0x135f('0x2e')](this[_0x135f('0x12')])+_0x135f('0x2f')]=this['account']['id'];}_0x5b51f0[_[_0x135f('0x2e')](this['channel'])+_0x135f('0x30')]=this[_0x135f('0x19')]['id'];var _0x45bc96=this[_0x135f('0x19')];if(rpc[this['channel']+_0x135f('0x31')]){if(this[_0x135f('0x12')]===_0x135f('0x22')){_0x5b51f0[_0x135f('0x32')]=this['message'][_0x135f('0x33')];_0x5b51f0[_0x135f('0x34')]=_0x135f('0x35')+_['replace'](_0x5b51f0[_0x135f('0x13')],_0x135f('0x36'),_0x135f('0x37'))+_0x135f('0x38');_0x5b51f0['headers']={'Auto-Submitted':_0x135f('0x39'),'X-Auto-Response-Suppress':_0x135f('0x3a'),'Precedence':_0x135f('0x3b')};return mailRpc[_0x135f('0x3c')](this[_0x135f('0x2d')][_0x135f('0x3d')],_0x5b51f0)[_0x135f('0x3e')](function(_0xeeeb8b){logger[_0x135f('0x15')](_0x135f('0x3f'),_0x3a8849);_0x5b51f0[_0x135f('0x33')]=_0xeeeb8b[_0x135f('0x24')][_0x135f('0x33')];return rpc[_0x8611d1+_0x135f('0x31')][_0x135f('0x40')](_0x5b51f0);})[_0x135f('0x3e')](function(_0x50fefb){logger[_0x135f('0x15')](_0x135f('0x16'),_0x3a8849,JSON['stringify'](_0x50fefb));})[_0x135f('0x41')](function(_0x20213a){logger[_0x135f('0x42')](_0x135f('0x43'),_0x3a8849,JSON[_0x135f('0x44')](_0x20213a));})[_0x135f('0x45')](function(){Promise[_0x135f('0x46')]()['then'](function(){if(_0x37aa9a[0x0]!=='2'||_0x45bc96[_0x135f('0x1c')])return;return rpc[_0x8611d1+'Interaction'][_0x135f('0x47')](_0x45bc96['id'],{'autoreplyExecuted':!![]})[_0x135f('0x3e')](function(_0x3bfe0c){logger[_0x135f('0x15')](_0x135f('0x1d'),_0x3a8849,JSON[_0x135f('0x44')](_0x3bfe0c));})[_0x135f('0x41')](function(_0x2c01ac){logger[_0x135f('0x42')]('[RPC][%s][AUTOREPLY][autoreplyExecuted]\x20%s',_0x3a8849,JSON[_0x135f('0x44')](_0x2c01ac));});})[_0x135f('0x3e')](function(){_0x4115fe[_0x135f('0x18')]();});});}else{return rpc[this[_0x135f('0x12')]+_0x135f('0x31')]['create'](_0x5b51f0)[_0x135f('0x3e')](function(){logger[_0x135f('0x15')](_0x135f('0x16'),_0x3a8849,_0x5b51f0[_0x135f('0x13')]);})[_0x135f('0x41')](function(_0xb7d1ee){logger[_0x135f('0x42')](_0x135f('0x16'),_0x3a8849,JSON['stringify'](_0xb7d1ee));})[_0x135f('0x45')](function(){Promise[_0x135f('0x46')]()[_0x135f('0x3e')](function(){if(_0x37aa9a[0x0]!=='2'||_0x45bc96['autoreplyExecuted'])return;return rpc[_0x8611d1+'Interaction']['update'](_0x45bc96['id'],{'autoreplyExecuted':!![]})[_0x135f('0x3e')](function(_0x4e04a1){logger['info'](_0x135f('0x1d'),_0x3a8849,JSON['stringify'](_0x4e04a1));})[_0x135f('0x41')](function(_0x1851b2){logger[_0x135f('0x42')]('[RPC][%s][AUTOREPLY][autoreplyExecuted]\x20%s',_0x3a8849,JSON['stringify'](_0x1851b2));});})[_0x135f('0x3e')](function(){_0x4115fe[_0x135f('0x18')]();});});}}}catch(_0x29b7e2){logger[_0x135f('0x42')](_0x135f('0x16'),_0x3a8849,JSON[_0x135f('0x44')](_0x29b7e2));_0x4115fe[_0x135f('0x48')]();}};};