Inspiration
We really wanted to expirement with alexa and see what she is capable of. We were also interested using image recognition. We combined these two ideas with our love of music to create the perfect party tool.
What it does
You take a photo with your phone and then ask Alexa to play music. Google vision analyzes the photo and gives us data back. The data is taken and ran through an algorithm that determines mood. Alexa then plays different music based on the mood given.
How we built it
We created a new Alexa skill using node.js and connected it to a dynamodb using Amazon web services. We then developed a server in node.js capable interacting with google vision api and updatin the dynamodb. In addition, the node.js server uses a custom algorithm to determine mood based on google vision data
Challenges we ran into
We ran into issues when sending photos the google vision api. We had to send the photo to imgur to be hosted so that it works with google vision correctly. The step by step tutorial we used to ply music does not work with Amazon's online testing tools. We had to use the echo to test directly. Next, we had issues getting the Alexa skill and the server to contact the dynamodb. Everyone on the team is also completely new to node.js, so we had to overcome learning some of the syntax and nuances of how it works.
Accomplishments that we're proud of
We used node.js succesfully. We were to able have both the alexa skill and custom node.js code contact the same dynamodb. We wrote an algorithm that interprets the google api vision data and determines a mood based on the data. Lastly, we got Alexa to play custom internet radio streams.
What we learned
We learned how to use node.js, amazon web services, and google vision api. We learned how to have node.js code contact a database. We learned how to create a custom Alexa skill.
What's next for DJ for me
Eventually we would like to have Alexa update music periodically by herself. We would like to allow use of custom music services such as Spotify or Pandora and implement the ability to allow users to define what type of music plays for each mood. We could see this service being used with technologies similar to google glass to play music based the environment around you and also connect music to other visual projects such as photo collages.
Built With
- amazon-alexa
- amazon-dynamodb
- amazon-web-services
- google-drive
- google-vision-api
- imagur-api
- node.js
Log in or sign up for Devpost to join the conversation.