Built motion from commit (unavailable).|2.5.22
[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 _0x5fa1=['service','Smtp','port','secure','auth','user','pass','messageId','replace','<div\x20id=\x22xm-mail-content\x22','<div','</div>','headers','auto-replied','All','auto_reply','then','info','[%s][AUTOREPLY]\x20SMTP\x20SENT','create','stringify','catch','error','[RPC][%s][AUTOREPLY]\x20%s','finally','next','stop','lodash','moment','../../../../config/logger','../../rpc/chatMessage','../../rpc/openchannelMessage','../../rpc/mailMessage','../../rpc/whatsappMessage','../../mailRpc','consequence','isNil','interaction','created','[%s][AUTOREPLY]\x20%s','channel','contact','format','YYYY-MM-DD\x20HH:mm:ss','out','mail','body','getMustacheRender','message','from','phone','read','subject','startsWith','Re:','Re:\x20','ChatWebsiteId','AccountId','account','InteractionId','Message'];(function(_0x33501f,_0x2cae5){var _0x3e3713=function(_0x3278e3){while(--_0x3278e3){_0x33501f['push'](_0x33501f['shift']());}};_0x3e3713(++_0x2cae5);}(_0x5fa1,0xd2));var _0x15fa=function(_0x31424b,_0x29b478){_0x31424b=_0x31424b-0x0;var _0x3c09c6=_0x5fa1[_0x31424b];return _0x3c09c6;};'use strict';var _=require(_0x15fa('0x0'));var moment=require(_0x15fa('0x1'));var utils=require('./utils');var logger=require(_0x15fa('0x2'))('routing');var rpc={'chatMessage':require(_0x15fa('0x3')),'openchannelMessage':require(_0x15fa('0x4')),'mailMessage':require(_0x15fa('0x5')),'smsMessage':require('../../rpc/smsMessage'),'faxMessage':require('../../rpc/faxMessage'),'whatsappMessage':require(_0x15fa('0x6'))};var mailRpc=require(_0x15fa('0x7'));exports[_0x15fa('0x8')]=function(_0x43870f,_0x5eba46){return function(_0x251f6d){try{if(_0x5eba46[0x0]==='1'&&(_[_0x15fa('0x9')](this[_0x15fa('0xa')]['created'])||!this[_0x15fa('0xa')][_0x15fa('0xb')])){logger['info'](_0x15fa('0xc'),_0x43870f,'Autoreply\x20already\x20sent');return _0x251f6d['next']();}var _0x295c95=this[_0x15fa('0xd')];var _0x22f4ca={'ContactId':this[_0x15fa('0xe')]['id'],'sentAt':moment()[_0x15fa('0xf')](_0x15fa('0x10')),'direction':_0x15fa('0x11')};if(this['channel']===_0x15fa('0x12')){_0x22f4ca['body']=utils['getMustacheRender'](_0x5eba46[0x2],this);}else{_0x22f4ca[_0x15fa('0x13')]=utils[_0x15fa('0x14')](_0x5eba46[0x1],this);}if(this[_0x15fa('0x15')]){_0x22f4ca['to']=this[_0x15fa('0x15')]['from']||'';if(this['channel']===_0x15fa('0x12')&&_0x5eba46[0x1]==='1'){_0x22f4ca['cc']=this[_0x15fa('0x15')]['cc']||'';}_0x22f4ca[_0x15fa('0x16')]=this[_0x15fa('0x15')]['to']||'';_0x22f4ca['phone']=this['message'][_0x15fa('0x17')]||'';_0x22f4ca[_0x15fa('0x18')]=!![];if(this[_0x15fa('0x15')]['subject']){_0x22f4ca[_0x15fa('0x19')]='';_0x22f4ca['subject']+=_[_0x15fa('0x1a')](this['message']['subject'],_0x15fa('0x1b'))?'':_0x15fa('0x1c');_0x22f4ca[_0x15fa('0x19')]+=this[_0x15fa('0x15')]['subject'];}}if(this[_0x15fa('0xd')]==='chat'){_0x22f4ca[_0x15fa('0x1d')]=this['account']['id'];}else{_0x22f4ca[_['upperFirst'](this['channel'])+_0x15fa('0x1e')]=this[_0x15fa('0x1f')]['id'];}_0x22f4ca[_['upperFirst'](this[_0x15fa('0xd')])+_0x15fa('0x20')]=this[_0x15fa('0xa')]['id'];if(rpc[this['channel']+_0x15fa('0x21')]){if(this[_0x15fa('0xd')]===_0x15fa('0x12')){var _0x46dd2d={'tls':{'rejectUnauthorized':![]}};if(this['account']['Smtp'][_0x15fa('0x22')]){_0x46dd2d[_0x15fa('0x22')]=this[_0x15fa('0x1f')][_0x15fa('0x23')]['service'];}else{_0x46dd2d['host']=this[_0x15fa('0x1f')]['Smtp']['host'];_0x46dd2d['port']=this[_0x15fa('0x1f')][_0x15fa('0x23')][_0x15fa('0x24')];_0x46dd2d[_0x15fa('0x25')]=this[_0x15fa('0x1f')]['Smtp'][_0x15fa('0x25')];}if(this['account']['Smtp']['authentication']){_0x46dd2d[_0x15fa('0x26')]={'user':this[_0x15fa('0x1f')][_0x15fa('0x23')][_0x15fa('0x27')],'pass':this[_0x15fa('0x1f')]['Smtp'][_0x15fa('0x28')]};}_0x22f4ca['inReplyTo']=this['message'][_0x15fa('0x29')];_0x22f4ca['html']='<div\x20id=\x22xm-mail-content\x22>'+_[_0x15fa('0x2a')](_0x22f4ca['body'],_0x15fa('0x2b'),_0x15fa('0x2c'))+_0x15fa('0x2d');_0x22f4ca[_0x15fa('0x2e')]={'Auto-Submitted':_0x15fa('0x2f'),'X-Auto-Response-Suppress':_0x15fa('0x30'),'Precedence':_0x15fa('0x31')};return mailRpc['sendMailMessage'](_0x46dd2d,_0x22f4ca)[_0x15fa('0x32')](function(_0x522759){logger[_0x15fa('0x33')](_0x15fa('0x34'),_0x43870f);_0x22f4ca[_0x15fa('0x29')]=_0x522759['message'][_0x15fa('0x29')];return rpc[_0x295c95+_0x15fa('0x21')][_0x15fa('0x35')](_0x22f4ca);})[_0x15fa('0x32')](function(_0x1ca8fe){logger[_0x15fa('0x33')](_0x15fa('0xc'),_0x43870f,JSON[_0x15fa('0x36')](_0x1ca8fe));})[_0x15fa('0x37')](function(_0x2118ca){logger[_0x15fa('0x38')](_0x15fa('0x39'),_0x43870f,JSON[_0x15fa('0x36')](_0x2118ca));})[_0x15fa('0x3a')](function(){_0x251f6d['next']();});}else{return rpc[this[_0x15fa('0xd')]+_0x15fa('0x21')]['create'](_0x22f4ca)[_0x15fa('0x32')](function(_0x30f059){logger[_0x15fa('0x33')](_0x15fa('0xc'),_0x43870f,_0x22f4ca[_0x15fa('0x13')]);})[_0x15fa('0x37')](function(_0x32ba40){logger[_0x15fa('0x38')](_0x15fa('0xc'),_0x43870f,JSON[_0x15fa('0x36')](_0x32ba40));})[_0x15fa('0x3a')](function(){_0x251f6d[_0x15fa('0x3b')]();});}}}catch(_0x250c48){logger[_0x15fa('0x38')](_0x15fa('0xc'),_0x43870f,JSON[_0x15fa('0x36')](_0x250c48));_0x251f6d[_0x15fa('0x3c')]();}};};