Giter Club home page Giter Club logo

covid19's Introduction

Covid19 India Patients Analyzer and Telegram Bot

This project analyzes the patients data obtained from the APIs built by Covid19India (https://api.covid19india.org/) using Kafka topics and generates alerts. These alerts are picked up by Telegram Bot app which sends these alerts to anyone subscribed.

The Telegram Bot is available at https://t.me/covid19_india_alerts_bot

To subscribe, just send the command /start. To unsubscribe, send the command /stop.

New Features

  1. Send /location to get information about your area.
  2. Get latest zones information of all districts with /zones.
  3. Get latest numbers of all districts with /district.
  4. Testing data is included in every on-demand update if available. This includes tests done, positive, negative and positivity rate.
  5. District updates are included.
  6. All updates carry news sources (links to State Govt / ANI tweets).
  7. Updates include Doubling rate based on previous day statistics.
  8. New commands: /today, /summary and /total. See below for more details.
  9. Get charts ang graphs with command /charts

Below is an example of an alert sent by the bot:

Zones alert screenshot Charts screenshot Sample Telegram Bot Alert screenshot Location screenshot District screenshot Sample Telegram Bot Statewise Alert screenshot

Alert Updates

The folks at Covid19India (https://www.covid19india.org/) are doing an amazing job of continuously updating the patient information using official and unofficial (social media etc.) sources. The bot tries to capture these updates and sends alerts that links to previous alert sent for the same patient (if any). This helps you see the progress a patient makes (like recovered or deceased). Alerts are only sent if the update is significant. Currently this means either changes in status or notes.

Telegram Commands

/mystate - Set preferred state

Not interested in updates of all Indian states? Then you can use the command /mystate to set your preferred state. Once set, you will receive updates of that state only including cumulative totals across India. You will continue to receive summary updates every 4 hours.

/clearmystate - Remove preferred state

If you have set preferred state and would like to start receiving updates for every state, then send the command /clearmystate to clear your preferred state.

/getmystate - Get currently preferred state

At any time, you want to check what preferred state is set if any, then send the command /getmystate.

/start - Subscribe to automatic real-time updates

Get real-time updates of all Indian States

/stop - Unsubscribe from updates

Stop receiving updates.

/stats - On-demand Statistics

/summary - Get summary of all Indian States

/today - Get today's increase of all Indian States

/total - Get total count across India

/zones - Get zones information for any district

/district - Get latest numbers for any district

To get the current statistics of any Indian State or Total, send the command /stats.

The bot will reply with an option to choose a region:

Telegram command /stats choose region

You can select any region or choose Total to get cumulative sum of all Indian states. If you choose a region, next screen will pop-up asking to choose a state within the region.

Telegram command /stats choose state

You should get back the cumulative statistics of the chosen state at that point of time.

Telegram command /stats state summary

Architecture

Individual Patient Updates

Kafka Streams Individual Patient Updates

Cumulative + Delta + Daily Increase Updates

Kafka Streams Architecture

Python Importer

The Python script that imports the Covid19India API is available here: https://github.com/xsreality/covid19-patient-importer

Contributing

  • Contributions for new ideas and open issues are welcome!
  • Please open a GitHub issue before opening a pull request.
  • For any queries, contact me on Telegram at https://t.me/xsreality

Credits

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.