We were inspired to develop a solution to aid emergency dispatchers and citizens during crises events. As crises become more prevalent a system that enables emergency dispatchers to contact citizens in order to determine the immediate needs caused by crises events and respond accordingly is a valuable and effective tool for developing a safe and stable community.
What It Does
bAware SOS is a website that allows first responders to communicate to citizens in a specific location during a crisis. It automates the process of collecting information such as need, location, and identity from citizens via SMS and displays information in real-time to help first responders act as rapidly, efficiently, and effectively as possible. This allows first responders to better serve their community, identifying the scale of crises, where a crisis has affected citizens, where those citizens are, and what situations they will encounter on-site.
How we built it
The project was built with the Meteor JS framework, Python language, and Mongo Database as well as the Twilio SMS, Algolia Search, and MapBox APIs. Python is used because it allows us to separate the collection of data into a separate thread and not block up single-threaded Meteor whenever new messages are received. The Python script and Meteor framework communicate through the MongoDB database; Meteor monitors Mongo for changes and automatically pushes them to our website. Twilio is used to send and receive SMS messages between first responder clients and citizen users. Using Algolia's Places API and integrating with the MapBox API, we are able to create a real-time view that allows a first responder to choose from identified crises locations and instantly view those locations as map data. Algolia processes citizen responses in order to extrapolate the relevant data for first responders to make more rapid and effective decisions and actions.
Challenges we ran into
We had issues initially implementing the Twilio API to successfully send and receive text messages, but we were eventually able to overcome that challenge. We also had to identify the strongest capable libraries available using Twilio, which results in us choosing to code in Python. Finally, we needed to process and display locations, which led to our use of the Algolia and Mapbox APIs.
Accomplishments that we're proud of
We are proud to build a fully functioning website within 24 hours, which is a first for our team. There was a steep learning curve, but we all tried our best to learn from each other. One of our members with minimal experience was able to effectively utilize python with support from other teammates, working with virtual environments, and another learned to use Linux systems.
What we learned
We learned to divide up tasks based on what each person was skilled at and how to collaborate in a way that would maximize our time. We learned to utilize our different strengths and work with each other so we could exchange our knowledge to leave this hackathon knowing much more than we came with.
What's next for bAware
We're going to add more functionality to the website and try to make it more effective for Emergency Medical Staff.