Unfortunately, the video came out a bit laggy - Apologies for that, please reach out to us if you need any clarification or have any questions
Have you ever been stuck in some sort of an emergency situation like being lost when you have no wifi and no data, funny enough, I actually have an trust me, it’s not fun.
To solve this, we created GeoSMS, an SMS service that allows you to perform various emergency searches such as finding the directions to an address, which supports directions via transit data, and then we also added some mini-games to lighten up your mood while you wait.
What it does 🤔
First, send an SMS to the Twilio number (your number has to be authorized to be able to do this) which should include a command term. Then you will receive a reply for your request. This can be really helpful if you need directions to a certain address but don't have Wifi, or if you would like to take the bus but don't know which one to take. Other than those fundamental features, there are mini-games (like defining a word, being told a joke, generating a random piece of advice, searching google while being offline, and checking a cryptocurrency) you can play while you wait.
How we built it 💻
In terms of how it was built, we used Twilio to handle the SMS messaging which we found to be intuitive and easy-to-use. First, the client will send an SMS to our Twilio number (thanks MLH for the Twilio credit!), then Twilio will send the number to the server-side backend which we built with Flask. Depending on the given command, the server sends a request to the corresponding API to answer the given command. Our command functions are all listed on features.py as you can see to the right. Then Twilio sends an SMS back with the desired info and this process repeats for however long the client wants. The unique aspect of our service is that it is fully server-side and no processing is done client-side, meaning when you send these commands to our service you do not need any wifi, we’ll handle that for you.
Challenges we ran into 🚥
This was our first time using Twilio and we found it to be a great experience. Although we ran into some issues setting it up at first, it worked out smoothly in the end. Setting up the server-side backend was also new, but after some research we were able to get that working as well.
Accomplishments that we're proud of 😄
Being able to deploy a minimum viable product (MVP).
What we learned 📖
This has been a very educational experience as it was our first time working with Twilio, which has been great since it made SMS handling really simple. We learned to work with server-side backends, interact with upwards of 7 APIs to handle commands and deploy a fully functioning MVP.
What's next for GeoSMS 🚀
The more APIs we can make GeoSMS compatible with the better. This may include using endpoints from the Google Maps API (perhaps incorporating sending images like street view) or optimize our functions for a quicker reply time.