Built motion from commit (unavailable).|2.5.15
[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 _0x5d06=['whatsapp','phone','chat','ChatWebsiteId','account','upperFirst','AccountId','created','isEmpty','body','getMustacheRender','Message','create','then','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','providerName','amazonlex','providerResponse','dialogState','Failed','catch','moment','aws-sdk','./utils','routing','../../rpc/chatMessage','../../rpc/openchannelMessage','../../rpc/whatsappMessage','consequence','isNil','interaction','UserId','info','[%s][AMAZONLEX]\x20%s','Agent\x20is\x20managing\x20the\x20interaction.\x20Go\x20to\x20next\x20application.','next','contact','format','YYYY-MM-DD\x20HH:mm:ss','out','channel'];(function(_0x1c9d0f,_0x199efe){var _0x32d0ab=function(_0xfcaa8e){while(--_0xfcaa8e){_0x1c9d0f['push'](_0x1c9d0f['shift']());}};_0x32d0ab(++_0x199efe);}(_0x5d06,0x184));var _0x65d0=function(_0x308755,_0x28e137){_0x308755=_0x308755-0x0;var _0x526236=_0x5d06[_0x308755];return _0x526236;};'use strict';var _=require('lodash');var moment=require(_0x65d0('0x0'));var AWS=require(_0x65d0('0x1'));var utils=require(_0x65d0('0x2'));var logger=require('../../../../config/logger')(_0x65d0('0x3'));var rpc={'chatMessage':require(_0x65d0('0x4')),'openchannelMessage':require(_0x65d0('0x5')),'mailMessage':require('../../rpc/mailMessage'),'smsMessage':require('../../rpc/smsMessage'),'faxMessage':require('../../rpc/faxMessage'),'whatsappMessage':require(_0x65d0('0x6'))};exports[_0x65d0('0x7')]=function(_0x4982ba,_0x3dd89c){return function(_0x517754){try{if(!_[_0x65d0('0x8')](this[_0x65d0('0x9')][_0x65d0('0xa')])){logger[_0x65d0('0xb')](_0x65d0('0xc'),_0x4982ba,_0x65d0('0xd'));return _0x517754[_0x65d0('0xe')]();}var _0x30cf2f={'ContactId':this[_0x65d0('0xf')]['id'],'sentAt':moment()[_0x65d0('0x10')](_0x65d0('0x11')),'direction':_0x65d0('0x12')};if(this[_0x65d0('0x13')]==='sms'||this['channel']===_0x65d0('0x14')){_0x30cf2f[_0x65d0('0x15')]=this[_0x65d0('0x9')][_0x65d0('0x15')];}var _0x3b5e8b=this[_0x65d0('0x13')];if(_0x3b5e8b===_0x65d0('0x16')){_0x30cf2f[_0x65d0('0x17')]=this[_0x65d0('0x18')]['id'];}else{_0x30cf2f[_[_0x65d0('0x19')](_0x3b5e8b)+_0x65d0('0x1a')]=this[_0x65d0('0x18')]['id'];}_0x30cf2f[_[_0x65d0('0x19')](_0x3b5e8b)+'InteractionId']=this[_0x65d0('0x9')]['id'];if(this[_0x65d0('0x9')][_0x65d0('0x1b')]){var _0x4d180c=_0x3dd89c[0x4];if(!_[_0x65d0('0x1c')](_0x4d180c)){_0x30cf2f[_0x65d0('0x1d')]=utils[_0x65d0('0x1e')](_0x4d180c,this);return rpc[_0x3b5e8b+_0x65d0('0x1f')][_0x65d0('0x20')](_0x30cf2f)[_0x65d0('0x21')](function(_0x4980b9){logger['info']('[%s][AMAZONLEX]\x20%s',_0x4982ba,_0x30cf2f[_0x65d0('0x1d')]);})['catch'](function(_0x50bf12){logger['error']('[%s][AMAZONLEX]\x20%s',_0x4982ba,JSON[_0x65d0('0x22')](_0x50bf12));})[_0x65d0('0x23')](function(){logger[_0x65d0('0xb')](_0x65d0('0x24'),_0x4982ba);_0x517754[_0x65d0('0x25')]();});}else{logger[_0x65d0('0xb')](_0x65d0('0x26'),_0x4982ba);_0x517754[_0x65d0('0x25')]();}}else{var _0x2c8a96=this;var _0x58da0b=new AWS[(_0x65d0('0x27'))]({'accessKeyId':_0x3dd89c[0x0],'secretAccessKey':_0x3dd89c[0x1],'region':_0x3dd89c[0x2]});var _0x4ab2b9={'botAlias':_0x65d0('0x28'),'botName':_0x3dd89c[0x3],'inputText':this[_0x65d0('0x29')][_0x65d0('0x1d')],'userId':this[_0x65d0('0x13')]+':'+this['interaction']['id'][_0x65d0('0x2a')]()};_0x58da0b[_0x65d0('0x2b')](_0x4ab2b9,function(_0x5179a3,_0x4e699b){if(_0x5179a3){logger[_0x65d0('0x2c')](_0x65d0('0xc'),_0x4982ba,_0x5179a3[_0x65d0('0x29')]);_0x517754[_0x65d0('0xe')]();}else if(_0x4e699b&&_0x4e699b[_0x65d0('0x29')]){_0x2c8a96[_0x65d0('0x1d')]['amazonlex']=_0x4e699b;_0x30cf2f[_0x65d0('0x1d')]=_0x4e699b[_0x65d0('0x29')];_0x30cf2f[_0x65d0('0x2d')]=_0x65d0('0x2e');_0x30cf2f[_0x65d0('0x2f')]=JSON[_0x65d0('0x22')](_0x4e699b);return rpc[_0x3b5e8b+'Message'][_0x65d0('0x20')](_0x30cf2f)[_0x65d0('0x21')](function(_0x5a133f){logger[_0x65d0('0xb')](_0x65d0('0xc'),_0x4982ba,_0x30cf2f['body']);if(_0x4e699b[_0x65d0('0x30')]==_0x65d0('0x31')){_0x517754[_0x65d0('0xe')]();}else{_0x517754[_0x65d0('0x25')]();}})[_0x65d0('0x32')](function(_0xec171f){logger[_0x65d0('0x2c')](_0x65d0('0xc'),_0x4982ba,JSON[_0x65d0('0x22')](_0xec171f));_0x517754[_0x65d0('0xe')]();});}else{_0x517754['next']();}});}}catch(_0x477061){logger['error'](_0x65d0('0xc'),_0x4982ba,JSON[_0x65d0('0x22')](_0x477061));_0x517754[_0x65d0('0x25')]();}};};