
Delivering a top-quality Voice User Interface (VUI) requires consistency; in prompt wording, error recovery strategies, abilities to barge in, abilities to seek help, and in the quality of speech recognition. This issue article provides some specific Site Builder tips that will help the voice developer build and maintain voice applications that observe the rules of consistency.
Associate Site Variables with different versions of a Question Page
Site Variables provide the voice developer with a powerful device for crafting context sensitive Question Pages. Prior to Site Variables, a Question Page doubled both as the component for soliciting information and the component for storing that information. This forced the developer to write elaborate error strategies to account for the various contexts of failure, or to work with numerous Question Pages and resolve the need to have them all point to the same variable through a back-end script. This often resulted in inconsistent error strategies across Question Pages.
This technique spares the developer the pain of having to create no-input and no-match prompts with wording that tries to accommodate various contexts of entry. Instead, the prompts can focus on the error and leave the re-prompting to the main prompt in the second Question Page.
This technique can also be used in situations where the application may have a choice between using a verbose version of a question or a more compact one. For instance, the caller can be asked at the opening of the dialog if they are a first-time user of the system, and if they are, the application can route them to the more verbose version of the dialog.
Work with template pages
Decoupling main prompts from error prompts enables site developers to establish a uniform, consistent style in dialog flow and recovery strategies. For instance, if the application is a 10-question caller satisfaction survey, where the answer is a number between 1 and 5, the no-input and no-match error strategies for all questions may consist of prompting the caller to answer with a number between 1 and 5. Since all Question Pages in such an application are structured similarly, site developers can increase their efficiency and assure consistency by first creating a template Question Page that implements these strategies, and then subsequently making copies of this page as more questions are created.
Remember that you can create templates not only for Question Pages but for all the other types of Voice Site pages as well. Parameter settings on your page templates don't need to be restricted to error strategies. Confirmation strategies, barge-in settings, disabling site commands, and speech settings are all valid parameters to build templates around. The trick is to invest some effort in the planning stage to determine what template pages you will need and to constantly keep an eye for re-usable components.
Other re-usable templates that you should include are Error Pages and Hang Up Pages. Any Transaction Pages that are used in your application should always be explicitly directed to an Error Page if an error is encountered. Hang Up Pages will enable you to exit gracefully from error situations.
A simple way to accomplish all this is to set up a template Voice Site with the various re-usable components that you feel your voice applications can use. Then, rather than starting from scratch when you want to create a new voice application, simply make a copy of the template Voice Site.
Use the "Go Back" action
A powerful technique often overlooked in Voice Site development is making use of the "Go Back" option as the next action in a Message Page. One example of how to effectively use a "Go Back" action is to have a help page that provides the caller with more details on how use the application.
Moreover, Question Pages that listen for numbers and/or keywords can have context-sensitive help pages associated with them. Thus, when a caller says, "help" within a specific Question Page, detailed help that takes the context of the question into account can be played back. To accomplish this, simply add as a page command in a Question Page for the "help" keyword and point it to a message page that provides context sensitive help and includes an action "Go Back."
Make sure that your application always has a help page. Whenever possible, associate a help page with each Question Page that uses keywords.
