A Python Web Application for Checking vaccine slots by pincodes and auto slot booking.

Overview

CoWIN Vaccine Slot Monitoring and Auto Booking (With Auto Capcha Solver)

View Demo · Report Bug · Request Feature

Maintained

About The Project

new_cowin

The Dashboard is developed using Bokeh and python 3.5+. This dashboard is useful for you if you are looking for something which will help you to book the vaccine slot once slots become available. Other Vaccine Finders will notify you once slots become available but you will still need to login to the portal and book the slot manually. This dashboard will look for slot availability continuously and will send the OTP itself once slots become available.

There are two modes available i.e Auto and Manual mode. In Manual mode, user will need to stay alert to enter the OTP manually.

And in Auto mode, user will need to do some installation and configuration as given here, so that script can detect the otp and will book the slot automatically. Auto Mode May not work all the time as this is a experimental feature

If you Like my work, you can Buy me a coffee (or more likely a beer)

Buy Me A Coffee

If this Dashboard has helped you to book your appointment then please don't forget to leave comment here.

Why this project

Being software developer I always try to automate things which are important to me. I really struggled to book the slot on cowin portal and other vaccine finder scripts did not helped me at all. So I wanted to do build something which will not just look for vaccine availability but also help me in automating the otp sending and slot booking tasks.

How this app different from other applications

Other apps/scripts expects you to feed otp every 15 minutes or something which is really not the cool idea. When you use this application, you don't need to feed otp's continuously rather this app will keep on searching for availability and will send otp only when there is slot available. In Auto mode if you have configured things properly then you don't even need to stay near to your laptop provided your phone is always connected to wifi or mobile data

Getting Started

Prerequisites

  • Docker: Click here to install Docker

If you don't want to use Docker then you will need python 3.5+ installed on your system and then clone this repository using into cowin-app folder using git clone https://github.com/suraj-deshmukh/CoWin-Vaccine-Slot-Monitoring-and-Auto-Booking.git cowin-app and install prequisites using pip install -r cowin-app/requirements.txt

Prior Gmail Settings and SMS Forwarder App Configuration for Auto Mode(Not required for Manual Mode)

Gmail App Password

You will need to generate gmail application password to use auto mode. The application password can be generated from here. This application password is different from you login password

Enable IMAP

Follow only Step 1 from this link

Android

You will need to install SMS Forwarder - Auto forward SMS to PC or Phone from google play store

Once you install above app from google play store. Follow below steps.

  1. Open SMS Forwarder - Auto forward SMS to PC or Phone App. Click on bottom-right plus icon like below

plus

  1. Enter your email id under Set up recipients as shown in below screenshot
drawing
  1. Enter Your OTP to register/access CoWIN is text under Rule for text as shown in below screenshot.
drawing
  1. Scroll down to More Settings and enter cowin under Filter Name and click on edit button to edit Email Subject and type [SMSForwarder] new otp %t and click on ok. Refer below image for the same.
drawing
drawing

Finally Click on SAVE button on top-right corner. You can always enable or disable this filter.

Usage for Docker

Auto Mode
  • Open Command Prompt and run docker run --pull always -p 5100:5100 -e PYTHONUNBUFFERED=1 -e TZ=Asia/Kolkata suraj20/cowin-vaccine-monitoring-n-booking-dashboard:latest --args "[email protected]" "app_password_here". The argument --pull always makes sure you are pulling latest image from docker hub.
  • Open browser and type http://localhost:5100/cowin-app.
Manual Mode
  • Open Command Prompt and run docker run --pull always -p 5100:5100 -e PYTHONUNBUFFERED=1 suraj20/cowin-vaccine-monitoring-n-booking-dashboard:latest. The argument --pull always makes sure you are pulling latest image from docker hub.
  • Open browser and type http://localhost:5100/cowin-app.

Usage for non Docker

Auto Mode
  • Make sure your system clock has set to IST(Indian Standard Time)
  • Clone this repo into folder 'cowin-app'
  • Change directory to the folder where you cloned this repository and then run bokeh serve --port 5100 cowin-app/ --args "[email protected]" "app_password_here"
  • Open browser and type http://localhost:5100/cowin-app.
Manual Mode
  • Clone this repo into folder 'cowin-app'
  • Change directory to the folder where you cloned this repository and then run bokeh serve --port 5100 cowin-app/
  • Open browser and type http://localhost:5100/cowin-app.

I recommend using docker option to run this dashboard. The docker option will make sure you always run latest image with latest features and bug fixes.

How to use

  1. Enter your name, select state, select districts, enter pincodes(incase of mulitple pincodes use csv format like 411001,411002 etc)associated with selected district only, 10 digit registered mobile number and reference ids(incase of mulitple ids use csv format like 12345678911234,12345678911111 etc. You will get this reference ids from cowin portal.
  2. Other Fields like date, dose number, age group,vaccine fee and vaccine type have default values. This are self explanatory fields and change as per your requirement.
  3. Select Mode. There are two modes i.e Auto and Manual. Select the one as per your choice
  4. For Dose 2, select the vaccine that you received on dose 1.

How does it work

  1. Enter all the details as explained above and the click on Submit Information button. All fields except OTP and Captcha one will be disabled.
  2. Once you click on Submit Information button, Start button will get enabled and then you can start the background process in seperate thread. The background thread will then monitor the given picodes continuously for slots availability as per the given filters. Once slots becomes available in any of the center in given pincodes, script will send otp to registered mobile number and background thread will stop checking for slots. You will get message as OTP sent successfully pn Reg Mob No. Please enter the OTP within 3 minutes. The center details for which slots are availbale will get populated under Center Name as shown below session
  3. If you have selected Manual mode then enter the OTP received on registered mobile number and click on Submit OTP. If otp is correct then you will get message on dashboard as below

Screenshot from 2021-06-06 22-37-15 (copy)

  1. If selected mode is Auto mode then user will not have to enter otp manually. The SMS Forwarder Application will forward the sms on given gmail id and python script has incoming email monioring code to check incoming emails related to cowin otp. Once script detects otp email it then parse the otp and book the slots directly. User will need to keep the mobile phone connected to wifi or mobile data all the time for SMS Forwarder to work

Demo

auto.mp4

To Do

  • Validations on input fields
  • Resend OTP option
  • Resend Captcha if captcha verfication fails.

How to Contribute to this repo

Follow this

A parallel branch-and-bound engine for Python.

pybnb A parallel branch-and-bound engine for Python. This software is copyright (c) by Gabriel A. Hackebeil (gabe.hacke

Gabriel Hackebeil 52 Nov 12, 2022
Python script that automates the tasks involved in starting a new coding project

Auto Project Builder Automates the repetitive tasks while starting a new project Installation Use the REQUIREMENTS.txt file to install the dependencie

Prathap S S 1 Feb 03, 2022
Multi-Process / Censorship Detection

Multi-Process / Censorship Detection

Baris Dincer 2 Dec 22, 2021
Identify and annotate mutations from genome editing assays.

CRISPR-detector Here we propose our CRISPR-detector to facilitate the CRISPR-edited amplicon and whole genome sequencing data analysis, with functions

hlcas 2 Feb 20, 2022
The earliest beta version of pytgcalls on Linux x86_64 and ARM64! Use in production at your own risk!

Public beta test. Use in production at your own risk! tgcalls - a python binding for tgcalls (c++ lib by Telegram); pytgcalls - library connecting pyt

Il'ya 21 Jan 13, 2022
Repositório de código de curso de Djavue ministrado na Python Brasil 2021

djavue-python-brasil Repositório de código de curso de Djavue ministrado na Python Brasil 2021 Completamente baseado no curso Djavue. A diferença está

Buser 15 Dec 26, 2022
A module comment generator for python

Module Comment Generator The comment style is as a tribute to the comment from the RA . The comment generator can parse the ast tree from the python s

飘尘 1 Oct 21, 2021
Course materials for a 3-day seminar "Machine Learning and NLP: Advances and Applications" at New College of Florida

Machine Learning and NLP: Advances and Applications This repository hosts the course materials used for a 3-day seminar "Machine Learning and NLP: Adv

Yoshi Suhara 11 Jun 22, 2022
Welcome to my pod transcript search webb app!

pod_transcript_search Welcome to the pod transcript search webb app! Tech stack used: Languages used: Python (for the back-end), JavaScript (for the f

3 Feb 04, 2022
Experimental Brawl Stars v36.218 server emulator written in Python.

Brawl Stars v36 Experimental Brawl Stars v36.218 server emulator written in Python. Requirements: Python 3.7 or higher colorama Running the server In

8 Oct 31, 2021
JD-backup is an advanced Python script, that will extract all links from a jDownloader 2 file list and export them to a text file.

JD-backup is an advanced Python script, that will extract all links from a jDownloader 2 file list and export them to a text file.

Kraken.snv 3 Jun 07, 2022
It is Keqin Wang first project in CMU, trying to use DRL(PPO) to control a 5-dof manipulator to draw line in space.

5dof-robot-writing this project aim to use PPO control a 5 dof manipulator to draw lines in 3d space. Introduction to the files the pybullet environme

Keqin Wang 4 Aug 22, 2022
🌌 Economics Observatory Visualisation Repository

Economics Observatory Visualisation Repository Website | Visualisations | Data | Here you will find all the data visualisations and infographics attac

Economics Observatory 3 Dec 14, 2022
PREFS is a Python library to store and manage preferences and settings.

PREFS PREFS is a Python library to store and manage preferences and settings. PREFS stores a Python dictionary in a total human-readable file, the PRE

Pat 13 May 26, 2022
Collie is for uncovering RDMA NIC performance anomalies

Collie is for uncovering RDMA NIC performance anomalies. Overview Prerequ

Bytedance Inc. 34 Dec 11, 2022
AminoAutoRegFxck/AutoReg For AminoApps.com

AminoAutoRegFxck AminoAutoRegFxck/AutoReg For AminoApps.com Termux apt update -y apt upgrade -y pkg install python git clone https://github.com/LilZev

3 Jan 18, 2022
A "multiclipboards" script for an efficient way to improve the original clipboards which are only able to save one string at a time

A "multiclipboards" script for an efficient way to improve the original clipboards which are only able to save one string at a time. Works on both Windows and Linux.

1 Jan 24, 2022
The Blinker Herald includes helpers to easily emit signals using the excellent blinker library.

Blinker Herald The Blinker Herald includes helpers to easily emit signals using the excelent blinker library. Decorate a function or method with @blin

SatelliteQE 7 Nov 03, 2022
京东自动入会获取京豆

京东入会领京豆 要求 有一定的电脑知识 or 有耐心爱折腾 需要Chrome(推荐)、Edge(Chromium)、Firefox 操作系统需是Mac(本人没在m1上测试)、Linux(在deepin上测试过)、Windows 安装方法 脚本采用Selenium遍历京东入会有礼界面,由于遍历了200

Vanke Anton 500 Dec 22, 2022
qecsim is a Python 3 package for simulating quantum error correction using stabilizer codes.

qecsim qecsim is a Python 3 package for simulating quantum error correction using stabilizer codes.

44 Dec 20, 2022