Skip to content

RodolfoFerro/DisAtBot

Repository files navigation

DisAtBot: Disaster Attention Bot

Since September 19th, 2017 (The Guardian, CNN), and the following dates in which Mexico has faced several earthquakes, I've been wondering how could reports of damaged zones, people buried under rests of buildings, injuried people in need of medicines and other situations could be handled.

What was created by that time, "Verificado 19s", was an immediate solution to follow up reports from social media and visualize the info on a map embeded in a website. The thing is that there were a lot of people that were all the time monitoring posts (of people, in real time) of all social media and the data was updated every ~10 minutes.

I've been thinking about trying to optimize this process for future situations, not only for earthquakes, but for other natural disasters. This is why I'm trying to create a solution for this, and wanted to work specifically in this bot, which will automate this task in a better way.

About DisAtBot 🤖

DisAtBot would automate the process of reporting incidents via messaging platforms, such as Telegram, Facebook Messenger, Twitter, etc. This first approach is considering only Telegram as the messaging platform for this initial phase of implementation.

You can find DisAtBot @

A general process of DisAtBot is described in the following flow (wireframing):

DisAtBot's main flow

The main idea would be that each report should have an opened ticket that will end in a database which will be accessed by the corresponding government instance/public organization/NGO/etc. to validate the data and send the corresponding assistance.


Requirements ⚙️

Besides Python 3.6 we will be using the following packages:

You can simply install each package using pip as follows:

pip install <package>

Or you can install all the packages needed with the requirements.txt file by running:

pip install -r requirements.txt

Structure 🗂

The structure of this repo is as follows:

  • The img folder contains all images of this repo.
  • The scripts folder contains all the scripts developed so far.
  • The data folder contains the geolocation database.
  • The requirements.txt file contains a listing of the required packages with their respective versions for an easy pip installation. Recommended.

Implementations so far 💻

  • DisAtBot.py, the script that contains the bot for Telegram.
  • lang_dict.py, the script with all the conversational dictionaries for two languages: English (EN) and Spanish (ES).
  • geo_app.py, the script that contains geolocation app to access and append data from location via the bot.

Future work 📈

  • Create map visualization for messaging platforms.
  • Add a SQL type DB.
  • ...

Contributing 👩🏽‍💻👨🏻‍💻

Please check our CONTRIBUTING file.

Contributors list:


License 📄

Please read the LICENSE provided in this repo.

About the robot icon used...

Icons made by Vectors Market from www.flaticon.com is licensed by CC 3.0 BY.