You haven't known fear until you sit on your rooftop, surrounded by water, and call 911 only to get a busy signal. What happens then?
I am a Houston resident that went through Harvey. On the first night we created an app that helped connect victims with rescuers. That rudimentary web page was created in the middle of a hurricane and led to saving over 37,000 people in Harvey and Irma.
Disrupt Rescue is the app we wish we created. It handles the pitfalls (low technology users, misinformation), it consolidates the information (shelters, rally points, launch points, hospitals), and tracks rescuers/dispatchers better.
This app has open source and crowd source principles. By allowing open access to everybody during a crisis, we can get more eyes on more people and rescue more victims before 911. By crowd sourcing tips we are able to consolidate information in to one place, verify it, then display it for the world to see.
What it does
In summary, it helps cut down the chaos during a hurricane by being a broker of information. Who needs to be rescued where, what shelters are open, where are rescuers (not quite done, but you'll see in our database we are pretty close to tracking rescuers through web tech), who are dispatchers, how do we get from Point A to B?
This app will handle our 12,000 rescuers and 3,000 dispatchers/volunteers. Where are they at, what are they doing, where do they need to go?
Mostly comprehensive list:
- add a request for rescue
- add a request for shelter needs
- view real-time driving directions to a rescue point that includes checkpoints and road hazards (flooding)
- manage shelters
- manage volunteers/donors
- organize dispatch-rescue teams
- manage rescuers
- integrated tip line where all data flows into and multiple people can send out from.
- correspondance via SMS between dispatchers and rescuers
- correspondance via SMS between dispatchers and rescue cases
- correspondance via SMS between rescuers
- view volunteer hours (for fema.... we track when our dispatchers login and are active and can then give that information to the city to give to FEMA for relief moneys)
Anybody can add anything, but a verified dispatcher has to come behind and double verify the information. E.g. A rescuer marks a case as confirmed, but a verified dispatcher
How I built it
We used CakePHP with Postgres. Nothing special, minus a few fancy HTML5 geolocators. We used Waze for driving directions; during Harvey and Irma we had volunteers manually entering road blocks there.
We went with a web application for extremely specific reasons: we were NOT creating an app that a developer would want to get rescued from, we were NOT creating an app that a programmer or tech executive would want to use to rescue people. We created an app that a 65 year old grandfather, trapped in his home with rising flood water and rising panic, could reasonably figure out in under a minute. We created an app that a 50 year Cajun Navy boat captain won't have to download,
A hurricane is chaos, it causes sheer panic and adrenaline; we've been in one and ran rescue operations in another in the last two weeks. We made this app so that rescuers and rescuees could easily understand how to operate it in under 60 seconds, without having to download anything or configure anything or mess with anything. Nobody is going to download a mobile app in the middle of a hurricane so we didn't make one.
We have shifted the onus onto the dispatcher. They are the only ones with a clear head. While rescuees and rescuers pour in data, the dispatchers sift through the information and verify (was this person actually rescued? is this shelter actually open? Is this road still open?).
We integrated Nexmo SMS and Voice. For voice we have two voice functions that periodically call rescuees and shelters, asking if they need to be rescued or if they are still accepting victims respectively... they'll enter 1 or 2 which will update their case and cause a follow up SMS message confirming their decision. For Nexmo SMS we have an integrated tip line: everyone can text into one line, from which dispatchers can respond to requests or verify info.
Challenges I ran into
We tried to create a function that connected rescuees to the closet 20 rescuers, but Nexmo's Voice API doesn't reasonably support that per the help desk. We are lacking in voice options right now - communication can always be made better.
Accomplishments that I'm proud of
Our backend rescuer geolocating tracking is nifty. :) I want to spend a significant amount of time on it before the next storm. Its awesome to pull up a map of seeing which rescuers are where, but for high-level maneuvering and operations we want more high-res tracking without draining battery in a mobile app.
This is a really solid base that we can move forward with. Fixed a lot of the problems, gives us a lot of room for growth.
What I learned
To start my app earlier. 9:28. Uh oh.
Its not finished, but our voice transfers (rescuee calls the line, gets connected to the nearest rescuer) is going to be really cool. We're planning on implementing it for the next storm. If we get nothing else out of this hackathon, learning more about the feasibility of voice capabilities would make it worth it.
Also we like the idea of overlaying power maps onto the rescue map a la Esri.
What's next for Disrupt Rescue
Pending Hurricane Jose, we might be making most of these changes live on Monday and running with them. Hopefully not :0
verified dispatcher account (you can't make this one, we'll have to verify you) email@example.com disrupt
rescuer account firstname.lastname@example.org disrupt