Built motion from commit ddca4d0d.|2.5.47
[motion2.git] / server / services / routing / server / applications / amazonlex.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 _0xd4aa=['amazonlex','providerName','providerResponse','Message','dialogState','Failed','lodash','moment','aws-sdk','../../../../config/logger','routing','../../rpc/openchannelMessage','../../rpc/faxMessage','../../rpc/whatsappMessage','isNil','interaction','UserId','info','[%s][AMAZONLEX]\x20%s','Agent\x20is\x20managing\x20the\x20interaction.\x20Go\x20to\x20next\x20application.','next','contact','YYYY-MM-DD\x20HH:mm:ss','channel','whatsapp','phone','chat','account','upperFirst','AccountId','InteractionId','created','body','create','then','catch','error','stringify','[%s][AMAZONLEX]\x20Welcome\x20Message\x20has\x20been\x20sent!','stop','[%s][AMAZONLEX]\x20Welcome\x20Message\x20is\x20empty.\x20It\x20will\x20wait\x20for\x20a\x20message\x20from\x20customer!','LexRuntime','$LATEST','postText','message'];(function(_0x4550ba,_0x53e6ce){var _0x26cb95=function(_0x1c0203){while(--_0x1c0203){_0x4550ba['push'](_0x4550ba['shift']());}};_0x26cb95(++_0x53e6ce);}(_0xd4aa,0x8d));var _0xad4a=function(_0x3ab51d,_0x2fa01d){_0x3ab51d=_0x3ab51d-0x0;var _0x29a04e=_0xd4aa[_0x3ab51d];return _0x29a04e;};'use strict';var _=require(_0xad4a('0x0'));var moment=require(_0xad4a('0x1'));var AWS=require(_0xad4a('0x2'));var utils=require('./utils');var logger=require(_0xad4a('0x3'))(_0xad4a('0x4'));var rpc={'chatMessage':require('../../rpc/chatMessage'),'openchannelMessage':require(_0xad4a('0x5')),'mailMessage':require('../../rpc/mailMessage'),'smsMessage':require('../../rpc/smsMessage'),'faxMessage':require(_0xad4a('0x6')),'whatsappMessage':require(_0xad4a('0x7'))};exports['consequence']=function(_0x3e8f36,_0x17d4d1){return function(_0xa1c1c){try{if(!_[_0xad4a('0x8')](this[_0xad4a('0x9')][_0xad4a('0xa')])){logger[_0xad4a('0xb')](_0xad4a('0xc'),_0x3e8f36,_0xad4a('0xd'));return _0xa1c1c[_0xad4a('0xe')]();}var _0x5af005={'ContactId':this[_0xad4a('0xf')]['id'],'sentAt':moment()['format'](_0xad4a('0x10')),'direction':'out'};if(this['channel']==='sms'||this[_0xad4a('0x11')]===_0xad4a('0x12')){_0x5af005['phone']=this[_0xad4a('0x9')][_0xad4a('0x13')];}var _0x56f074=this[_0xad4a('0x11')];if(_0x56f074===_0xad4a('0x14')){_0x5af005['ChatWebsiteId']=this[_0xad4a('0x15')]['id'];}else{_0x5af005[_[_0xad4a('0x16')](_0x56f074)+_0xad4a('0x17')]=this[_0xad4a('0x15')]['id'];}_0x5af005[_['upperFirst'](_0x56f074)+_0xad4a('0x18')]=this[_0xad4a('0x9')]['id'];if(this[_0xad4a('0x9')][_0xad4a('0x19')]){var _0x32781c=_0x17d4d1[0x4];if(!_['isEmpty'](_0x32781c)){_0x5af005[_0xad4a('0x1a')]=utils['getMustacheRender'](_0x32781c,this);return rpc[_0x56f074+'Message'][_0xad4a('0x1b')](_0x5af005)[_0xad4a('0x1c')](function(_0x10c0c2){logger[_0xad4a('0xb')](_0xad4a('0xc'),_0x3e8f36,_0x5af005[_0xad4a('0x1a')]);})[_0xad4a('0x1d')](function(_0xe9f51c){logger[_0xad4a('0x1e')](_0xad4a('0xc'),_0x3e8f36,JSON[_0xad4a('0x1f')](_0xe9f51c));})['finally'](function(){logger['info'](_0xad4a('0x20'),_0x3e8f36);_0xa1c1c[_0xad4a('0x21')]();});}else{logger[_0xad4a('0xb')](_0xad4a('0x22'),_0x3e8f36);_0xa1c1c[_0xad4a('0x21')]();}}else{var _0x478d81=this;var _0x37a2de=new AWS[(_0xad4a('0x23'))]({'accessKeyId':_0x17d4d1[0x0],'secretAccessKey':_0x17d4d1[0x1],'region':_0x17d4d1[0x2]});var _0x700eac={'botAlias':_0xad4a('0x24'),'botName':_0x17d4d1[0x3],'inputText':this['message'][_0xad4a('0x1a')],'userId':this[_0xad4a('0x11')]+':'+this['interaction']['id']['toString']()};_0x37a2de[_0xad4a('0x25')](_0x700eac,function(_0x586508,_0x481903){if(_0x586508){logger[_0xad4a('0x1e')](_0xad4a('0xc'),_0x3e8f36,_0x586508[_0xad4a('0x26')]);_0xa1c1c[_0xad4a('0xe')]();}else if(_0x481903&&_0x481903[_0xad4a('0x26')]){_0x478d81[_0xad4a('0x1a')][_0xad4a('0x27')]=_0x481903;_0x5af005[_0xad4a('0x1a')]=_0x481903[_0xad4a('0x26')];_0x5af005[_0xad4a('0x28')]=_0xad4a('0x27');_0x5af005[_0xad4a('0x29')]=JSON[_0xad4a('0x1f')](_0x481903);return rpc[_0x56f074+_0xad4a('0x2a')]['create'](_0x5af005)[_0xad4a('0x1c')](function(_0x2ea2df){logger[_0xad4a('0xb')]('[%s][AMAZONLEX]\x20%s',_0x3e8f36,_0x5af005[_0xad4a('0x1a')]);if(_0x481903[_0xad4a('0x2b')]==_0xad4a('0x2c')){_0xa1c1c[_0xad4a('0xe')]();}else{_0xa1c1c['stop']();}})[_0xad4a('0x1d')](function(_0x4ad4ba){logger[_0xad4a('0x1e')](_0xad4a('0xc'),_0x3e8f36,JSON[_0xad4a('0x1f')](_0x4ad4ba));_0xa1c1c[_0xad4a('0xe')]();});}else{_0xa1c1c[_0xad4a('0xe')]();}});}}catch(_0x2ec555){logger[_0xad4a('0x1e')]('[%s][AMAZONLEX]\x20%s',_0x3e8f36,JSON[_0xad4a('0x1f')](_0x2ec555));_0xa1c1c['stop']();}};};