Recently Amazon announced a contest to evaluate the best Alexa skills, running on the Echo and optionally the Echo Show whilst targeting kids under the age of 13. Novoda is always up for a challenge. Here is what we built.
At Novoda we have a mission statement: Together on a journey of learning and growth. We wanted to build a skill that can help everyone learn more about astronomy and space, so we decided to create an Amazon Alexa Skill that kids can use to learn new things and also have a bit of fun.
Our skill logo: Space Quiz
What it does
This skill's aim is to help kids (but also adults too!) to learn more about space by asking them some questions and giving them the correct answers when they make a mistake, as well as giving some extra information about the topic.
The skill is very simple and easy to use, as the game begins it asks a question and gives the different possible answers, if the user gets the answer right then they get a point. After a predefined number of questions the round ends and the skill gives the user the final score, then they can decide to play again or stop the skill.
This really is a Minimal Viable Product for what can be done with the Amazon Alexa platform. We hadn’t worked in this environment before and wanted to make sure we could get something completed in the timeframe of the competition (3 weeks). All the while making sure we learnt about Alexa and the platform for our own knowledge, and to share back inside Novoda. We’ll be making a lot more chatbots in the future.
How we built it
Our code is based on the Trivia template provided by Amazon and added a few changes to make it work with the latest Alexa Skills Kit SDK version. We also improved the conversational flow, so that the user would receive additional information related to the question's topic after the answer. This way we kept our original idea of building a skill which was both fun and and practical in learning new facts about space.
Amazon provides the ASK-CLI which is an easy-to-use command-line tool to initialize, clone, deploy and interact with a Skill; it came in really handy when testing the skill since it allowed us to deploy it by running the
ask deploy command.
While the skill worked great already with a voice-only Echo device, we took it one step further and leveraged the display of the Echo Show. We used Render Template and some beautiful Creative Commons, space-themed, images as background for the displayed questions. We applied a darker overlay to these images to always ensure great legibility for the text.
You can see the skill in action in the following video:
Space Quiz works great with the Amazon Alexa ecosystem of devices, in the future we will also make it available for the Google Assistant. This will greatly increase the potential user base, thanks to the increased selection of supported devices available: from other smart speakers, like the Google Home or the JBL Link, to traditional Android phone, Android TV and Android Auto.
To do so we might extract most of the data for the game, including questions, answers and follow-up sentences, to a shared source. Firebase Cloud Firestore could be a good solution for that. Dialogflow will handle voice and context recognition, allowing us to drive the conversation and provide an increasing level of difficulty depending on the conversation flow.
If you want to know more about how to start creating a Dialogflow chat bot, we have you covered.
All the code powering Space Quiz is open source, feel free to have a look at our Alexa Space Quiz repo. You can try the skill yourself by enabling it from https://www.amazon.com/Novoda-Ltd-Space-quiz/dp/B078SD9RWL.