Built motion from commit (unavailable).|2.5.4
[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 _0x7a54=['../../rpc/faxMessage','../../rpc/whatsappMessage','isNil','UserId','next','format','channel','chat','ChatWebsiteId','account','upperFirst','AccountId','InteractionId','interaction','created','isEmpty','body','Message','create','then','info','catch','[%s][AMAZONLEX]\x20%s','stringify','finally','[%s][AMAZONLEX]\x20Welcome\x20Message\x20has\x20been\x20sent!','stop','[%s][AMAZONLEX]\x20Welcome\x20Message\x20is\x20empty.\x20It\x20will\x20wait\x20for\x20a\x20message\x20from\x20customer!','LexRuntime','$LATEST','message','toString','postText','error','amazonlex','dialogState','Failed','lodash','moment','aws-sdk','../../../../config/logger','routing','../../rpc/openchannelMessage','../../rpc/mailMessage','../../rpc/smsMessage'];(function(_0x5291ec,_0x4cb526){var _0x56d700=function(_0x5c2b0a){while(--_0x5c2b0a){_0x5291ec['push'](_0x5291ec['shift']());}};_0x56d700(++_0x4cb526);}(_0x7a54,0x106));var _0x47a5=function(_0x1fe34c,_0x2e56e2){_0x1fe34c=_0x1fe34c-0x0;var _0x9fbdee=_0x7a54[_0x1fe34c];return _0x9fbdee;};'use strict';var _=require(_0x47a5('0x0'));var moment=require(_0x47a5('0x1'));var AWS=require(_0x47a5('0x2'));var utils=require('./utils');var logger=require(_0x47a5('0x3'))(_0x47a5('0x4'));var rpc={'chatMessage':require('../../rpc/chatMessage'),'openchannelMessage':require(_0x47a5('0x5')),'mailMessage':require(_0x47a5('0x6')),'smsMessage':require(_0x47a5('0x7')),'faxMessage':require(_0x47a5('0x8')),'whatsappMessage':require(_0x47a5('0x9'))};exports['consequence']=function(_0x3d5629,_0x59199c){return function(_0x343372){try{if(!_[_0x47a5('0xa')](this['interaction'][_0x47a5('0xb')])){logger['info']('[%s][AMAZONLEX]\x20%s',_0x3d5629,'Agent\x20is\x20managing\x20the\x20interaction.\x20Go\x20to\x20next\x20application.');return _0x343372[_0x47a5('0xc')]();}var _0x2baee7={'ContactId':this['contact']['id'],'sentAt':moment()[_0x47a5('0xd')]('YYYY-MM-DD\x20HH:mm:ss'),'direction':'out'};var _0x1f47f4=this[_0x47a5('0xe')];if(_0x1f47f4===_0x47a5('0xf')){_0x2baee7[_0x47a5('0x10')]=this[_0x47a5('0x11')]['id'];}else{_0x2baee7[_[_0x47a5('0x12')](_0x1f47f4)+_0x47a5('0x13')]=this['account']['id'];}_0x2baee7[_[_0x47a5('0x12')](_0x1f47f4)+_0x47a5('0x14')]=this[_0x47a5('0x15')]['id'];if(this[_0x47a5('0x15')][_0x47a5('0x16')]){var _0x620ee9=_0x59199c[0x4];if(!_[_0x47a5('0x17')](_0x620ee9)){_0x2baee7[_0x47a5('0x18')]=utils['getMustacheRender'](_0x620ee9,this);return rpc[_0x1f47f4+_0x47a5('0x19')][_0x47a5('0x1a')](_0x2baee7)[_0x47a5('0x1b')](function(_0x2a2cbb){logger[_0x47a5('0x1c')]('[%s][AMAZONLEX]\x20%s',_0x3d5629,_0x2baee7['body']);})[_0x47a5('0x1d')](function(_0x4b966e){logger['error'](_0x47a5('0x1e'),_0x3d5629,JSON[_0x47a5('0x1f')](_0x4b966e));})[_0x47a5('0x20')](function(){logger[_0x47a5('0x1c')](_0x47a5('0x21'),_0x3d5629);_0x343372[_0x47a5('0x22')]();});}else{logger[_0x47a5('0x1c')](_0x47a5('0x23'),_0x3d5629);_0x343372[_0x47a5('0x22')]();}}else{var _0x4a9fcb=this;var _0x1570bc=new AWS[(_0x47a5('0x24'))]({'accessKeyId':_0x59199c[0x0],'secretAccessKey':_0x59199c[0x1],'region':_0x59199c[0x2]});var _0x47cf3c={'botAlias':_0x47a5('0x25'),'botName':_0x59199c[0x3],'inputText':this[_0x47a5('0x26')][_0x47a5('0x18')],'userId':this['channel']+':'+this[_0x47a5('0x15')]['id'][_0x47a5('0x27')]()};_0x1570bc[_0x47a5('0x28')](_0x47cf3c,function(_0x7a9f9e,_0x5ef1b1){if(_0x7a9f9e){logger[_0x47a5('0x29')](_0x47a5('0x1e'),_0x3d5629,_0x7a9f9e['message']);_0x343372[_0x47a5('0xc')]();}else if(_0x5ef1b1&&_0x5ef1b1[_0x47a5('0x26')]){_0x4a9fcb[_0x47a5('0x18')][_0x47a5('0x2a')]=_0x5ef1b1;_0x2baee7[_0x47a5('0x18')]=_0x5ef1b1['message'];return rpc[_0x1f47f4+'Message'][_0x47a5('0x1a')](_0x2baee7)['then'](function(_0x1ea9c8){logger['info'](_0x47a5('0x1e'),_0x3d5629,_0x2baee7[_0x47a5('0x18')]);if(_0x5ef1b1[_0x47a5('0x2b')]==_0x47a5('0x2c')){_0x343372[_0x47a5('0xc')]();}else{_0x343372[_0x47a5('0x22')]();}})[_0x47a5('0x1d')](function(_0x136b14){logger[_0x47a5('0x29')](_0x47a5('0x1e'),_0x3d5629,JSON[_0x47a5('0x1f')](_0x136b14));_0x343372[_0x47a5('0xc')]();});}else{_0x343372[_0x47a5('0xc')]();}});}}catch(_0x528582){logger[_0x47a5('0x29')]('[%s][AMAZONLEX]\x20%s',_0x3d5629,JSON[_0x47a5('0x1f')](_0x528582));_0x343372[_0x47a5('0x22')]();}};};