Skip to content

How to skip initial intent for Amazon Lex in Amazon Connect?

0

I have an Amazon Lex bot that requires a "Help" intent before it presents a Quick Reply menu. Is it possible to directly go to the Quick Reply menu?


What I've tried:

I have tried calling RecognizeUtterance, RecognizeText and PutSession using $.ContactId as session id in a lambda before my GetCustomerInput block in the Amazon Connect flow, but none of them seems to change the bot's state.

The answer here does not work:

https://repost.aws/questions/QUtDAMdcdpTZO-jabIhp18jw/invoke-lex-intent-without-sample-utterances-or-initial-response-amazon-connect-call-flow

When calling RecognizeText, it'll return something like this:

messages: [ { content: '{"templateType":"QuickReply","version":"1.0","data":{"content":{"title":"Choose item:","elements":[{"title":"Option A"},{"title":"Option B"},{"title":"Option C"}]}}}', contentType: 'CustomPayload' } ]

The content when used in GetCustomerInput block displays as a json instead of displaying as a quick reply in amazon connect.

3 Answers
0

Hello,

Unfortunately it is not possible to skip the get-customer-input to in-turn skip the initial intent for the Lex Bot in Amazon Connect, and the input needs to be sent from the caller end so that it can be passed to Lex Bot via Contact flow.

In addition to that, to ensure that you have setup for quick-reply responses correctly, kindly confirm if you have followed the steps mentioned in the blog here [1].

I hope this helps, however, please feel free to reach out using a Support case, should you want to share additional details about the setup on your end.

[1] https://aws.amazon.com/blogs/contact-center/easily-set-up-interactive-messages-for-your-amazon-connect-chatbot/

AWS
SUPPORT ENGINEER
answered 2 years ago
EXPERT
reviewed 2 years ago
0

This is a common ask and is being worked on. For now you could look at using step-by-step guides in a contact flow to present the initial options as buttons. Once an option has been selected you could push that to the Lex-bot using the API.

https://docs.aws.amazon.com/connect/latest/adminguide/step-by-step-guides-chat.html

AWS
answered 2 years ago
EXPERT
reviewed 2 years ago
0

I find a way to make this work. Basically, when Connect starts the Lex bot for chat it will use the participantId as Lex SessionId. The participantId is returned by the StartChat command when you start the Connect chat. The issue is that the participantId is not present in the Contact Attributes.

What we have done is to update the contact attributes with the participantId right after starting the chat and use that is in the Lambda when invoking Lex. This way we start a Lex session with the same id that is then used in the Lex bot.

I hope this can be useful!

answered a year ago

You are not logged in. Log in to post an answer.

A good answer clearly answers the question and provides constructive feedback and encourages professional growth in the question asker.