Built motion from commit (unavailable).|2.5.6
[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 _0x3710=['create','[%s][AUTOREPLY]\x20%s','stringify','catch','error','[RPC][%s][AUTOREPLY]\x20%s','then','stop','lodash','moment','./utils','../../../../config/logger','routing','../../rpc/openchannelMessage','../../rpc/mailMessage','../../rpc/smsMessage','../../rpc/whatsappMessage','../../mailRpc','consequence','isNil','interaction','created','info','Autoreply\x20already\x20sent','next','getMustacheRender','contact','out','message','from','phone','read','subject','Re:','Re:\x20','account','upperFirst','channel','AccountId','InteractionId','Message','mail','Smtp','service','host','port','secure','authentication','auth','user','pass','inReplyTo','messageId','html','<div\x20id=\x22xm-mail-content\x22>','replace','body','<div','sendMailMessage','[%s][AUTOREPLY]\x20SMTP\x20SENT'];(function(_0x3d203c,_0x4877b0){var _0xf12c16=function(_0xaa7326){while(--_0xaa7326){_0x3d203c['push'](_0x3d203c['shift']());}};_0xf12c16(++_0x4877b0);}(_0x3710,0x1ac));var _0x0371=function(_0x49a818,_0xee5de){_0x49a818=_0x49a818-0x0;var _0x2c0157=_0x3710[_0x49a818];return _0x2c0157;};'use strict';var _=require(_0x0371('0x0'));var moment=require(_0x0371('0x1'));var utils=require(_0x0371('0x2'));var logger=require(_0x0371('0x3'))(_0x0371('0x4'));var rpc={'chatMessage':require('../../rpc/chatMessage'),'openchannelMessage':require(_0x0371('0x5')),'mailMessage':require(_0x0371('0x6')),'smsMessage':require(_0x0371('0x7')),'faxMessage':require('../../rpc/faxMessage'),'whatsappMessage':require(_0x0371('0x8'))};var mailRpc=require(_0x0371('0x9'));exports[_0x0371('0xa')]=function(_0x114f2e,_0x343e20){return function(_0x5d0d1c){try{if(_0x343e20[0x0]==='1'&&(_[_0x0371('0xb')](this[_0x0371('0xc')][_0x0371('0xd')])||!this[_0x0371('0xc')][_0x0371('0xd')])){logger[_0x0371('0xe')]('[%s][AUTOREPLY]\x20%s',_0x114f2e,_0x0371('0xf'));return _0x5d0d1c[_0x0371('0x10')]();}var _0x3eac06=this['channel'];var _0x5ab6cc={'body':utils[_0x0371('0x11')](_0x343e20[0x1],this),'ContactId':this[_0x0371('0x12')]['id'],'sentAt':moment()['format']('YYYY-MM-DD\x20HH:mm:ss'),'direction':_0x0371('0x13')};if(this[_0x0371('0x14')]){_0x5ab6cc['to']=this[_0x0371('0x14')][_0x0371('0x15')]||'';_0x5ab6cc['cc']=this[_0x0371('0x14')]['cc']||'';_0x5ab6cc[_0x0371('0x15')]=this[_0x0371('0x14')]['to']||'';_0x5ab6cc[_0x0371('0x16')]=this[_0x0371('0x14')][_0x0371('0x16')]||'';_0x5ab6cc[_0x0371('0x17')]=!![];if(this[_0x0371('0x14')][_0x0371('0x18')]){_0x5ab6cc[_0x0371('0x18')]='';_0x5ab6cc[_0x0371('0x18')]+=_['startsWith'](this[_0x0371('0x14')]['subject'],_0x0371('0x19'))?'':_0x0371('0x1a');_0x5ab6cc['subject']+=this[_0x0371('0x14')][_0x0371('0x18')];}}if(this['channel']==='chat'){_0x5ab6cc['ChatWebsiteId']=this[_0x0371('0x1b')]['id'];}else{_0x5ab6cc[_[_0x0371('0x1c')](this[_0x0371('0x1d')])+_0x0371('0x1e')]=this[_0x0371('0x1b')]['id'];}_0x5ab6cc[_[_0x0371('0x1c')](this[_0x0371('0x1d')])+_0x0371('0x1f')]=this[_0x0371('0xc')]['id'];if(rpc[this[_0x0371('0x1d')]+_0x0371('0x20')]){if(this[_0x0371('0x1d')]===_0x0371('0x21')){var _0x130c7a={'tls':{'rejectUnauthorized':![]}};if(this['account'][_0x0371('0x22')][_0x0371('0x23')]){_0x130c7a[_0x0371('0x23')]=this[_0x0371('0x1b')]['Smtp'][_0x0371('0x23')];}else{_0x130c7a[_0x0371('0x24')]=this[_0x0371('0x1b')]['Smtp'][_0x0371('0x24')];_0x130c7a[_0x0371('0x25')]=this[_0x0371('0x1b')][_0x0371('0x22')][_0x0371('0x25')];_0x130c7a[_0x0371('0x26')]=this[_0x0371('0x1b')][_0x0371('0x22')][_0x0371('0x26')];}if(this['account'][_0x0371('0x22')][_0x0371('0x27')]){_0x130c7a[_0x0371('0x28')]={'user':this[_0x0371('0x1b')]['Smtp'][_0x0371('0x29')],'pass':this[_0x0371('0x1b')]['Smtp'][_0x0371('0x2a')]};}_0x5ab6cc[_0x0371('0x2b')]=this[_0x0371('0x14')][_0x0371('0x2c')];_0x5ab6cc[_0x0371('0x2d')]=_0x0371('0x2e')+_[_0x0371('0x2f')](_0x5ab6cc[_0x0371('0x30')],'<div\x20id=\x22xm-mail-content\x22',_0x0371('0x31'))+'</div>';return mailRpc[_0x0371('0x32')](_0x130c7a,_0x5ab6cc)['then'](function(_0x2782ed){logger[_0x0371('0xe')](_0x0371('0x33'),_0x114f2e);_0x5ab6cc[_0x0371('0x2c')]=_0x2782ed[_0x0371('0x14')][_0x0371('0x2c')];return rpc[_0x3eac06+_0x0371('0x20')][_0x0371('0x34')](_0x5ab6cc);})['then'](function(_0xeb78d1){logger[_0x0371('0xe')](_0x0371('0x35'),_0x114f2e,JSON[_0x0371('0x36')](_0xeb78d1));})[_0x0371('0x37')](function(_0x295520){logger[_0x0371('0x38')](_0x0371('0x39'),_0x114f2e,JSON['stringify'](_0x295520));})['finally'](function(){_0x5d0d1c[_0x0371('0x10')]();});}else{return rpc[this[_0x0371('0x1d')]+_0x0371('0x20')][_0x0371('0x34')](_0x5ab6cc)[_0x0371('0x3a')](function(_0x291780){logger[_0x0371('0xe')](_0x0371('0x35'),_0x114f2e,_0x5ab6cc[_0x0371('0x30')]);})[_0x0371('0x37')](function(_0x571b47){logger[_0x0371('0x38')](_0x0371('0x35'),_0x114f2e,JSON[_0x0371('0x36')](_0x571b47));})['finally'](function(){_0x5d0d1c['next']();});}}}catch(_0xf38fe4){logger[_0x0371('0x38')](_0x0371('0x35'),_0x114f2e,JSON[_0x0371('0x36')](_0xf38fe4));_0x5d0d1c[_0x0371('0x3b')]();}};};