Automated Vaccine Appointment Schedular
For faster reply to queries join Telegram Group.
This is python script which can notifiy vaccine availability in your given pincode/district and also automatically schedules the appointment for vaccination.
Note: This will work online when used in Android Phones, although this can be used in ios if there's an alternative for Termux app on ios to use python
- Schedules Vaccine Appointment Automatically
- Supports booking of slots for multiple person
- Sends Vaccine Availability SMS using Twilio
- Supports vaccine search by pincode or district
- Can notify multiple persons at once
1. If token expired goto 2 else 3
2. Login
a. Send OTP
b. fetch message extract OTP
c. Verify OTP get token
3. gets vaccine availability
4. gets beneficiary
5. get and solve captcha
6. schedule appointment
To use this script follow the below steps:
- Install Airmore application from Google play store (Click here)
- Install Termux application from Google play store (Click here)
- Run below command on Termux to install git and clone repository
pkg up && pkg install git && git clone https://github.com/abhishek72850/avas.git
- Open
users.json
on any editor and enter the details of the user for which you want schedule and notify for vaccine availability.
- Sample User:
[ { "search_by": "pincode", "beneficiary_reference_id": "72255782401234", "login_mobile": "1234567890", "mobile": "1234567890", "email": "[email protected]", "pincode": "800001", "district_id": "312", "min_age": "18", "max_age": "44", "dose": 1 } ]
search_by
: Takes by how you want to search for vaccine availability it can be eitherpincode
ordistrict
beneficiary_reference_id
: Provide beneficiary ref id, you can get this by logging in CoWin portallogin_mobile
: Provide mobile number through which you will registering the givenbeneficiary_reference_id
Note: given beneficiary reference id should be added under this account registered using the mobile number present in login_mobile
mobile
: Provide mobile number on which you to sent vaccine availability sms at the given pincode or district center'semail
: Provide any email (It doesn't send any emails right now)pincode
: Provide pincode ifsearch_by
value ispincode
otherwise remove this keydistrict_id
: Provide district_id ifsearch_by
value isdistrict
otherwise remove this key (Get the district_id from here: https://avas.herokuapp.com/)min_age
: Takes minimum age limit for which vaccine should be searched, it takes either18
or45
max_age
: Provide any value (This is not used as of now)dose
: Provide1
if registering for first dose else provide2
if registering for second dose
Note: Whichever mobile number is provided in
login_mobile
the script should be run on that phone only and it should be same in every user entry.
- Open the Airmore application, click on the 3 dot icon Get IP and copy the IP ADDRESS only and keep the app running in background
- Open the
prod.env
on any editor then:- Paste the IP in the
AIRMORE_IP_ADDRESS
value - Fill out the API keys for Twilio SMS (https://www.twilio.com/sms). (If you don't have or want Twilio skip this step)
- Paste the IP in the
- On Termux cd to the path where you have cloned the repo
- Run the command to install dependencies:
bash install.sh
- Run this command to exceute scheduler:
(Note: If you don't have Twilio API keys, give the
-skip_notify
valueTrue
)python avas.py -env prod.env -skip_notify False -manual_otp False -interval 30
-env
: Provide the environment file-skip_notify
: Specifies when to send vaccine availability sms or not-manual_otp
: To enter OTP manually provide True-interval
: To adjust time interval between each checks default is 30 seconds