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