I was interested in enhancing the traffic situation by allowing more bicycles to be used. I thought bike sharing could be one of the solutions to solve the traffic problem. It will be easier with Alexa to find bike sharing locations, get a bike route for a specific trip, and store the desired information on a mobile phone to access it easier.
What it does
When a user wakes up Alexa by saying "Alexa open go bike", then Alexa will instruct the user to say the start address of the user's trip. Then, Alexa will also ask whether the user wants to know the bike sharing locations around that area. If the user says "Yes", Alexa will find the bike sharing locations available for the user. This skill allows the user to select whether he or she wants to get an SMS text message about the bike sharing location and a bike route for the user's trip so that the user can access the desired information easily with just clicking the received message.
How I built it
I built it by using lambda with python language. For the database that stores each session information, I used Amazon's dynamoDB. In addition to these Amazon's features, I had to use external free APIs to get the bike sharing locations and send the SMS text messages containing appropriate information to user's mobile phone. These APIs are Twilio and Coords.
Challenges I ran into
The challenge I had was time management. Since I am a college student and did this project on my own individually, I could not manage my time well. Also, I had a hard time figuring out how to store each session information. Whenever a user invokes a new intent, Alexa used to close a previous session and open a new one. I had to overcome this situation to make the skill more like a conversation and store user's responses.
Accomplishments that I'm proud of
I am proud that I could be able to finish this skill by myself while taking 18 credits as a senior computer science student and doing a part-time job.
What I learned
I definitely learned how to build Alexa skill with lambda. Also, I could learn the dynamoDb and how to integrate APIs into Alexa app.
What's next for Go Bike
I am planning to add more details about bike sharing locations such as cost, hours, and the number of available bikes. Also, it needs to have more proper reprompt messages.