With Dialog Management, you can specify prompts and user utterances for slot elicitation and provide prompts for slot and intent confirmation. All of this can be done in the Developer Console.

These features take care of slot/intent collection/confirmation so that your skill’s Lambda function can focus on its core functionality, like recommending videos or booking a flight. If it also had to manage the state of the conversation — has the user provided the values for all required slots? has the user confirmed the slots? — it would need a mess of hard-to-maintain logic.

Instead, Alexa keeps track of the status of slot collection (called dialogState) and includes it as part of the JSON request sent to your skill. Your Lambda function can check this status and act accordingly: as long as slot collection is incomplete, delegate control back to Alexa so it can prompt the user for more slot values.

In this lesson we’ll learn about the dialogState in the JSON request and how to delegate control to Alexa in Lambda functions.


Get familiar with the conversation on the right. You’ll be seeing it throughout this lesson.

Take this course for free

Mini Info Outline Icon
By signing up for Codecademy, you agree to Codecademy's Terms of Service & Privacy Policy.

Or sign up using:

Already have an account?