Best Practices for Designing Alexa Skills for Automotive
When you develop a skill for Alexa-enabled automotive devices, including Echo Auto, keep the following best practices in mind.
- Design skills for automotive
- Design for the driver
- Design for on-the-go situations
- Enable continuity of experiences
- Design to be location-aware
- Be succinct
- Limit app and phone interactions
Design skills for automotive
Automotive is an exciting space for Alexa, as drivers and passengers alike want to do more while they drive. Voice enables drivers to engage in productive experiences while keeping their hands on the wheel and their eyes on the road. The most useful and successful skills adapt to the automotive environment. While it is up to you as the developer to determine what scenarios are appropriate for automotive, this document covers some best practices that you can adopt to build engaging, delightful experiences.
Design for the driver
Consider your audience: When a skill is used in an automotive environment, the skill should always be optimized for the driver because you will not know if the driver or passengers are interacting with your skill. While being in a vehicle provides an immersive environment that might lead to a potential increase in a skill's average session duration, remember that the driver should be primarily focused on driving. For example, if you have a puzzle skill where one of the modes requires customers to remember a long string of randomly generated words, you might omit that game mode for customers on automotive endpoints.
Refrain from using any distracting or sudden noises: Do not surprise the driver with sudden or repeating noises, and do not use any sounds that may distract or startle the driver.
Don't rely on visuals: All skills should be fully functional when using voice alone. Skill experiences in an automotive environment should not rely on video, animations, nor display templates, as the automotive device may not have a screen and visual content could be distracting. In addition, limit the use of display cards and instead focus on voice-first experiences.
Design for on-the-go situations
When you determine what functionality to provide in your skill, think about what a driver may want to accomplish while on-the-go. Drivers are often looking to make their ride more enjoyable and productive. Think about situations that enable drivers to do more while driving. They may think of something to add to a to-do list, or seek the answer to a question that has boggled their mind. They may want to find a more interesting route home. These areas of focus are indicative of what drivers may think about. Be creative when thinking about what people could do while driving.
Enable continuity of experiences
Take your skill from the home to on-the-go: Think of designing experiences that carry from within the home to on-the-go. Customers often interact with your skill on a number of different devices. Devices that are mobile can be used in a variety of different environments. Let your skill take advantage of these new environments. For instance, if your skill helps customers find a restaurant for dinner, at home the skill can focus on searching for different cuisines and can help the customer visualize the results on an Alexa-enabled device with a screen, such as an Echo Show. When a customer invokes your skill in an automotive environment, your skill can ask if the customer wants to go directly to the restaurant and could even update the restaurant with the customer's arrival time.
Allow for pauses and breaks: The driving situation determines the level of attention that a driver can dedicate to interacting with Alexa. A driver may want to pick up with the skill at a later time. Your skill can allow a customer to re-invoke your skill at any point and continue where they left off by saving any relevant customer intents in a persistent data store. If your skill prompts the customer, and the customer fails to respond, you can let them know that they can continue at any time and then exit the skill. When a customer re-invokes the skill, you can ask if the customer wants to continue where they left off. Even better, you can add a
Wait intent to your interaction model that supports sample utterances such as "Wait", "Hold on", or "One minute". This intent could directly exit the skill and let the customer know they can continue where they left off at any point by re-invoking the skill.
Design to be location-aware
Think about integrating location services into your skill to provide contextual experiences. You can help customers find nearby establishments or understand how long it takes to get places. In addition, you can provide localized responses by suggesting nearby places or responding with a local idiom. For example, with a skill that provides sports updates, this skill could respond with the pre-recorded voice of a player from the local sports team, wherever the customer may be.
Accomplish tasks quickly: Focus on getting a task accomplished as quickly and efficiently as possible. Minimize the number of turns in a dialog by asking for more information up front. This can be accomplished by using dialog management to allow customers to supply all information in a one-shot utterance and then only ask follow-up questions when needed. For example, a skill that allows a customer to book an appointment could allow the customer to say, "Book an appointment for this Tuesday at 9pm with Carl".
Make your responses concise: Present the customer with only the information that they need immediately. When more information is available, let the customer know that they can always ask for more. Ask straightforward questions and do not ask the customer to remember large amounts of information in order to continue. For example, if a customer asks a recipe skill for cooking instructions, the skill can give a two-sentence overview and tell the customer to ask for the ingredient list or cooking steps.
Consider list length: If your skill presents long lists audibly, the customer has to keep a lot of information in their head. Instead, present clear options and limit the length of lists. If you need to present numerous options, you can paginate the responses by allowing the customer to ask for more. For example, "Would you like to go to the coffee house on First Street, Jackson Avenue, or somewhere else?" When possible, consider offering binary decisions rather than a list. For example, "Would you like to play the first episode or the most recent episode?"
Limit app and phone interactions
Limit app interaction: While there are a few scenarios that might necessitate interacting with the Alexa app, limit any additional references for customers using your skill in an automotive environment. If you need to direct customers to your app or the Alexa app, remind them to do so when it is safe. For example "I've sent additional information to your Alexa app. Please take a look when it is safe to do so".
Let customers enable your skill without account linking: The process of account linking requires a customer to type their credentials into the Alexa app, and this should not be done while driving. For functionality that does not require account linking, consider an experience that allows your skill to answer some customer intents directly. If account linking is required for your skill content, you can suggest customers link their account when they are interacting with your skill on non-automotive devices, or when it is safe to do so. For example, consider a fast food skill that requires account linking to place an order. A customer can ask in an automotive environment where the closest fast food establishment is, and the skill can respond without directing customers to link their account. When the customer asks this same question from the home, the skill can respond and then suggest the customer link their account now so that they can place orders later while on-the-go.