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