One of the core customer experiences in a skill lies in how well the example phrases are executed. When a user utters the example phrases, the skill response must be relevant to the user request as mentioned in the skill description and it must be free of errors. A vocalized example is a skill prompt which the user can repeat as a direct request in an open session. For example, after an interaction, when the skill says, "say give me another fact to hear the next fact” or “say repeat to hear the current fact.” Here, “give me another fact" and "repeat" are defined as vocalized examples. It is essential that when uttering vocalized example utterances (by speaking them exactly as instructed by the skill), the skill responses should be relevant to user requests and free of errors. Here is an example of a good user experience:
User: Alexa, open encyclopedia of space and give me a fact
Skill: Scientists have estimated that our solar system is about 4.6 billion years old, which they think makes it middle aged (as far as solar system lifetimes go). The solar system will probably continue for another 5 billion years before the sun becomes a red giant, swallows Mercury, Venus, and the Earth, and then eventually collapses into a white dwarf. Say give me another space fact for the next fact.
User: Give me another space fact
Skill: About 12 billion light years away from us exists a gigantic water vapor cloud. It’s 100,000 times larger than the sun and holds 140 trillion times more water than all the oceans on our planet. We’ve all heard of fresh spring water, but space water would be out of this world!
If the skill provides an irrelevant response to the user request or if the response has errors, it is a bad user experience.
Skill description: They’re fluffy, independent, the internet's in love with them, and there is scientific proof that having a furry roommate is all kinds of good for your health. Whether you live with a cuddly lap cat or a quiet introvert who loves their space, having a feline around you can be just as rewarding and beneficial as any other animal friendship.
In honor of International Cat Day, we collected a few little-known scientific facts that prove how awesome cats really are.
User: Alexa, open cat facts and tell me a fact
Skill: How do dog catchers get paid? .. By the pound! Say give me another fact for the next fact.
User: Give me another fact
Skill: What do you call a black Eskimo dog? .. A dusky husky
This will lead to a bad user experience as the skill description and example phrases state that the skill provides cat facts. However, the skill provides dog jokes when the user utters the vocalized example. Such skills will be failed during skill certification stage.
Let’s have a look at another example.
User: Alexa, open crypto facts
Skill: welcome to crypto facts, say let’s begin to start with the first fact
User: Let’s begin
Skill provides no response
This is another example of a bad user experience. If a skill goes blank after the user utters the vocalized example, he/she is unsure of how to proceed further.
How to ensure skill responses are relevant to user requests, example phrases and free of errors?
When we create a custom skill, we create either an AWS Lambda function or a web service that can handle requests from Alexa. The code written for this service needs to recognize each incoming request that Alexa sends and return an appropriate response. We should also review the interaction model, the set of sample utterances, and the list of values for any custom slot types that are defined are correct, complete, and adhere to voice design best practices.
Below is a quick checklist to ensure relevant skill responses to example phrases while building skills:
- The code needs to recognize each incoming request that user says and return an appropriate response.
- Review the intent schema, the set of sample utterances, and the list of values for any custom slot types that are defined to ensure that they are correct, complete, and adhere to voice design best practices.
- Skill needs to send a progressive response.
- This document provides details and code examples that show how to process requests and return responses.
Happy skill building!