Inspiration

In today’s high-tech society there’s a growing tendency to interact digitally via voice, whenever possible. The ease and efficiency of using a voice application is seen as especially advantageous among the less tech-savvy populations, including the elderly. The tech-aware members of our society also find it quite appealing. Look no further than the vast array of voice applications that are available today on Alexa for confirmation.
Ever since my first interactions with Alexa, I have been thinking about how to I can use my technical skills to develop solutions that will add value to the voice-app space. After much thought, the idea to intertwine my innate desire of creating an interactive experience with building an open platform that allows anyone to launch a survey, to gauge customers feedback, manifested in the form of this solution. When presenting this idea to friends and family, the response I received was highly positive. Their feedback, along with that of some of my initial customers, was the encouragement I needed to go full speed ahead with this platform.

What it does

Survey Spring is a full-fledged platform that allows surveys to be created on the fly. Content is uploaded with the help of scripts to a database. Once the content is uploaded a new survey can be initiated within a matter of seconds. Many aspects of the survey can be customized including name, music, etc. Any Alexa user is able to take the survey and provide feedback. Questions can be multiple choice or simply yes or no. When users take the survey their responses are saved in a database that can be shared with the survey author. In addition, survey authors also have the option of receiving an email notification for every survey completed.

How I built it

I built Survey Spring with the help of Alexa Skills Kit and Dynamodb. Like many other skills Lambda is used to handle program logic. I utilized Bespoken for improving the dev pipeline and unit testing. I18next and other packages were also used to allow quick internationalization.

Challenges I ran into

When I added an intent for selecting an option from multiple surveys I discovered that using the built in slot AMAZON.NUMBER twice in a skill presents with a buggy experience for the second invocation. Due to that I had to change one of slot type to AMAZON.SearchQuery to fix some of the problems. Amazon Presentation Language implementation also posed some challenges as this is all quite new but having timely feedback available from the Amazon team was very helpful. All in all shout out to the entire team at Amazon Alexa for providing a great developer support experience.

Accomplishments that I'm proud of

I was able to create a dynamic experience where content can be updated and new survey initiated which I find pretty cool. Additionally availability of Amazon Presentation Language provided a unique opportunity where rich visual elements like Logo or other images can be added to provide recognition and familiarity.

What I learned

Creating a stellar voice experience is much more complicated than it appears. To make the experience as simple, user-friendly, and useful as possible one must look at their creation from every angle and give it the necessary time, patience, and dedication it requires. It is no easy task but the satisfaction of knowing that you are creating a solution that will help simplify the lives of others is very rewarding.

What's next for Survey Spring

I need to build the admin interface for users to upload their content without the need of back-end scripts. I would also like to launch something similar to Survey Spring focussing on other use cases such as elderly and education with a key differentiator of being able to accept feedback from users in this format.

Share this project:

Updates