Built motion from commit (unavailable).|2.5.5
[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 _0xbc28=['port','secure','authentication','auth','user','messageId','html','replace','body','<div','</div>','sendMailMessage','then','[%s][AUTOREPLY]\x20SMTP\x20SENT','create','stringify','catch','error','[RPC][%s][AUTOREPLY]\x20%s','finally','stop','lodash','moment','./utils','../../../../config/logger','routing','../../rpc/openchannelMessage','../../rpc/mailMessage','../../rpc/smsMessage','../../rpc/whatsappMessage','consequence','created','interaction','info','[%s][AUTOREPLY]\x20%s','Autoreply\x20already\x20sent','next','channel','getMustacheRender','format','YYYY-MM-DD\x20HH:mm:ss','message','from','phone','read','subject','startsWith','Re:\x20','account','upperFirst','AccountId','InteractionId','Message','mail','Smtp','service','host'];(function(_0x38c2d2,_0x4b381e){var _0x47ed2e=function(_0x2461d7){while(--_0x2461d7){_0x38c2d2['push'](_0x38c2d2['shift']());}};_0x47ed2e(++_0x4b381e);}(_0xbc28,0xf9));var _0x8bc2=function(_0x362cd2,_0xcda51a){_0x362cd2=_0x362cd2-0x0;var _0x4d150f=_0xbc28[_0x362cd2];return _0x4d150f;};'use strict';var _=require(_0x8bc2('0x0'));var moment=require(_0x8bc2('0x1'));var utils=require(_0x8bc2('0x2'));var logger=require(_0x8bc2('0x3'))(_0x8bc2('0x4'));var rpc={'chatMessage':require('../../rpc/chatMessage'),'openchannelMessage':require(_0x8bc2('0x5')),'mailMessage':require(_0x8bc2('0x6')),'smsMessage':require(_0x8bc2('0x7')),'faxMessage':require('../../rpc/faxMessage'),'whatsappMessage':require(_0x8bc2('0x8'))};var mailRpc=require('../../mailRpc');exports[_0x8bc2('0x9')]=function(_0x56890e,_0x598f57){return function(_0x232bc3){try{if(_0x598f57[0x0]==='1'&&(_['isNil'](this['interaction'][_0x8bc2('0xa')])||!this[_0x8bc2('0xb')]['created'])){logger[_0x8bc2('0xc')](_0x8bc2('0xd'),_0x56890e,_0x8bc2('0xe'));return _0x232bc3[_0x8bc2('0xf')]();}var _0x256f9b=this[_0x8bc2('0x10')];var _0x4d95cb={'body':utils[_0x8bc2('0x11')](_0x598f57[0x1],this),'ContactId':this['contact']['id'],'sentAt':moment()[_0x8bc2('0x12')](_0x8bc2('0x13')),'direction':'out'};if(this[_0x8bc2('0x14')]){_0x4d95cb['to']=this['message'][_0x8bc2('0x15')]||'';_0x4d95cb['cc']=this[_0x8bc2('0x14')]['cc']||'';_0x4d95cb[_0x8bc2('0x15')]=this[_0x8bc2('0x14')]['to']||'';_0x4d95cb[_0x8bc2('0x16')]=this[_0x8bc2('0x14')][_0x8bc2('0x16')]||'';_0x4d95cb[_0x8bc2('0x17')]=!![];if(this['message'][_0x8bc2('0x18')]){_0x4d95cb[_0x8bc2('0x18')]='';_0x4d95cb[_0x8bc2('0x18')]+=_[_0x8bc2('0x19')](this[_0x8bc2('0x14')][_0x8bc2('0x18')],'Re:')?'':_0x8bc2('0x1a');_0x4d95cb['subject']+=this[_0x8bc2('0x14')][_0x8bc2('0x18')];}}if(this[_0x8bc2('0x10')]==='chat'){_0x4d95cb['ChatWebsiteId']=this[_0x8bc2('0x1b')]['id'];}else{_0x4d95cb[_[_0x8bc2('0x1c')](this[_0x8bc2('0x10')])+_0x8bc2('0x1d')]=this['account']['id'];}_0x4d95cb[_[_0x8bc2('0x1c')](this[_0x8bc2('0x10')])+_0x8bc2('0x1e')]=this[_0x8bc2('0xb')]['id'];if(rpc[this[_0x8bc2('0x10')]+_0x8bc2('0x1f')]){if(this['channel']===_0x8bc2('0x20')){var _0x1dfacd={'tls':{'rejectUnauthorized':![]}};if(this[_0x8bc2('0x1b')][_0x8bc2('0x21')][_0x8bc2('0x22')]){_0x1dfacd[_0x8bc2('0x22')]=this[_0x8bc2('0x1b')][_0x8bc2('0x21')][_0x8bc2('0x22')];}else{_0x1dfacd[_0x8bc2('0x23')]=this['account'][_0x8bc2('0x21')]['host'];_0x1dfacd['port']=this[_0x8bc2('0x1b')]['Smtp'][_0x8bc2('0x24')];_0x1dfacd[_0x8bc2('0x25')]=this[_0x8bc2('0x1b')][_0x8bc2('0x21')][_0x8bc2('0x25')];}if(this[_0x8bc2('0x1b')][_0x8bc2('0x21')][_0x8bc2('0x26')]){_0x1dfacd[_0x8bc2('0x27')]={'user':this[_0x8bc2('0x1b')][_0x8bc2('0x21')][_0x8bc2('0x28')],'pass':this['account'][_0x8bc2('0x21')]['pass']};}_0x4d95cb['inReplyTo']=this['message'][_0x8bc2('0x29')];_0x4d95cb[_0x8bc2('0x2a')]='<div\x20id=\x22xm-mail-content\x22>'+_[_0x8bc2('0x2b')](_0x4d95cb[_0x8bc2('0x2c')],'<div\x20id=\x22xm-mail-content\x22',_0x8bc2('0x2d'))+_0x8bc2('0x2e');return mailRpc[_0x8bc2('0x2f')](_0x1dfacd,_0x4d95cb)[_0x8bc2('0x30')](function(_0x48d9a7){logger[_0x8bc2('0xc')](_0x8bc2('0x31'),_0x56890e);_0x4d95cb[_0x8bc2('0x29')]=_0x48d9a7[_0x8bc2('0x14')][_0x8bc2('0x29')];return rpc[_0x256f9b+_0x8bc2('0x1f')][_0x8bc2('0x32')](_0x4d95cb);})[_0x8bc2('0x30')](function(_0x26e373){logger['info'](_0x8bc2('0xd'),_0x56890e,JSON[_0x8bc2('0x33')](_0x26e373));})[_0x8bc2('0x34')](function(_0x55af3c){logger[_0x8bc2('0x35')](_0x8bc2('0x36'),_0x56890e,JSON[_0x8bc2('0x33')](_0x55af3c));})[_0x8bc2('0x37')](function(){_0x232bc3['next']();});}else{return rpc[this[_0x8bc2('0x10')]+_0x8bc2('0x1f')][_0x8bc2('0x32')](_0x4d95cb)[_0x8bc2('0x30')](function(_0x2c2e6c){logger[_0x8bc2('0xc')](_0x8bc2('0xd'),_0x56890e,_0x4d95cb[_0x8bc2('0x2c')]);})[_0x8bc2('0x34')](function(_0x159fc2){logger[_0x8bc2('0x35')](_0x8bc2('0xd'),_0x56890e,JSON[_0x8bc2('0x33')](_0x159fc2));})[_0x8bc2('0x37')](function(){_0x232bc3[_0x8bc2('0xf')]();});}}}catch(_0x267491){logger[_0x8bc2('0x35')](_0x8bc2('0xd'),_0x56890e,JSON[_0x8bc2('0x33')](_0x267491));_0x232bc3[_0x8bc2('0x38')]();}};};