8 Directing conversation flow
Voice interactions benefit from proactive guidance because, unlike visual UIs, they lack persistent navigation and impose no natural limits on input. This chapter explains how to steer conversations with suggestive prompts, constrained choices, and incremental information gathering so users provide responses the system can reliably handle. It emphasizes using dialog to break complex tasks into smaller steps, confirming only when necessary, and “training” users with consistent, preferred terminology and example phrases. The goal is a guided path that reduces ambiguity while preserving a natural, conversational feel.
Alexa’s dialog interface provides a structured way to manage this flow by defining required slots, when and how to elicit them, and when to confirm either individual slots or the full intent. Developers configure slot samples and prompt variations, order slot elicitation for natural progression, and decide whether Alexa, the fulfillment code, or both coordinate the steps via dialogState and delegation. Prompts can implicitly acknowledge prior inputs, employ discourse markers to convey progress, and include dynamic values. Fulfillment can seed defaults, transform values (for example, making times sound natural), override slot values before confirmation, and occasionally take control to offer explicit choices (such as enumerating available showtimes) to reduce user effort and errors.
Robust error handling underpins a smooth experience. The chapter distinguishes user-caused and system-caused errors and recommends graceful recovery without blame, escalating guidance when users repeat mistakes, and clear pathways to correct misunderstandings. It covers denying intent confirmation and adapting responses accordingly, using Unhandled to reorient users, narrowing possible inputs and leveraging entity resolution, and accommodating gaps like “I don’t know” by shifting to answerable questions. The overarching principles are to confirm only high-risk actions, be forgiving and reversible, guide with concise prompts that get more specific as needed, and combine platform-driven dialogs with fulfillment logic to keep users on track.
Figure 8.1. Flow of data in the dialog model
Figure 8.2. The states of a dialog
Figure 8.3. The fulfillment flow between user, Alexa, and fulfillment
Figure 8.4. Guidance becomes more specific as the user makes errors
Summary
- The limitations of voice-first necessitate adding bumpers and constraints to the VUI, including using leading questions, limiting possible inputs, and chunking information gathering.
- The dialog model for Alexa allows developers to hand control for slot elicitation, slot confirmation, and intent confirmation to Alexa, then responding once the dialog is finished.
- Errors should be handled smoothly, by re-orienting the user toward what is possible.
- Error responses can be escalated to give users the right amount of information to proceed without bogging them down.
FAQ
Why do voice apps need to actively direct conversation flow?
Because voice has no visible menus or constrained input, users can easily get lost. Guiding with suggestive prompts and limited choices helps users provide responses your skill can handle, reducing confusion and error.What is the Alexa dialog interface and when should I use it?
The dialog interface is a model that defines required slots, how to ask for (elicit) them, and when/how to confirm slots or the overall intent. Use it when you need to gather multiple pieces of information over several turns (for example, movie, theater, time, number of tickets).What do slot elicitation, slot confirmation, and intent confirmation each do?
- Slot elicitation: asks for a missing slot value (e.g., “Which theater?”).- Slot confirmation: verifies a just-captured slot value (e.g., “Two for 8:40, is that right?”).
- Intent confirmation: summarizes all slot values and asks to proceed (useful for high‑stakes actions like charging money).
Voice Applications for Alexa and Google Assistant ebook for free