From f04624d132229ef187b913138c8b086993826705 Mon Sep 17 00:00:00 2001 From: Abhilash Kulkarni <62510765+abhilashkulkarniofficial@users.noreply.github.com> Date: Sun, 2 May 2021 14:56:31 +0530 Subject: [PATCH 1/4] Added email template (#8) * Changed email body Added html email template to the email body to display the slots information in a cleaner template. * Removed bug in creating template * Updated Readme to add new email template --- README.md | 2 +- emailBody.png | Bin 0 -> 78748 bytes notifier.js | 31 +++++++++++++++++++++++++++++-- vaccineNotifier.js | 6 +++--- 4 files changed, 33 insertions(+), 6 deletions(-) create mode 100644 emailBody.png diff --git a/README.md b/README.md index 5c7e824..69bdaef 100644 --- a/README.md +++ b/README.md @@ -16,4 +16,4 @@ Step 3) On your terminal run: npm i && pm2 start vaccineNotifier.js To close the app run: pm2 stop vaccineNotifier.js && pm2 delete vaccineNotifier.js Here's a sample of the resultant emails: -![image info](./sampleEmail.png) +![image info](./emailBody.png) diff --git a/emailBody.png b/emailBody.png new file mode 100644 index 0000000000000000000000000000000000000000..6eca319e17949e0fba2501ac6090c245828a0f31 GIT binary patch literal 78748 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 + Vaccine is available on ${date} in the following centers: +

+ ` + for(const slot of slotDetails){ + let slotBody = ` Center Name: ${slot.name}
+ Location: ${slot.block_name}, ${slot.state_name}, ${slot.pincode}
+ From ${slot.from} to ${slot.to}
+ Fee Type: ${slot.fee_type}
+ Fee: ${slot.fee} rupees
+ Available Capacity: ${slot.available_capacity} doses available
+ Vaccine: ${slot.vaccine}
+ Slots Available:
` + for(const x of slot.slots){ + slotBody = `${slotBody} ${x}
` + } + slotBody = `${slotBody}

` + message = `${message} ${slotBody}` + } + + return message +} + + +exports.sendEmail = function (email, subjectLine, slotDetails, date, callback) { + let message = createTemplate(slotDetails, date) -exports.sendEmail = function (email, subjectLine, slotDetails, callback) { let options = { from: String('Vaccine Checker ' + process.env.EMAIL), to: email, subject: subjectLine, - text: 'Vaccine available. Details: \n\n' + slotDetails + html: message }; nodemailerTransporter.sendMail(options, (error, info) => { if (error) { diff --git a/vaccineNotifier.js b/vaccineNotifier.js index 72f7043..51f0df4 100644 --- a/vaccineNotifier.js +++ b/vaccineNotifier.js @@ -53,7 +53,7 @@ function getSlotsForDate(DATE) { let validSlots = sessions.filter(slot => slot.min_age_limit <= AGE && slot.available_capacity > 0) console.log({date:DATE, validSlots: validSlots.length}) if(validSlots.length > 0) { - notifyMe(validSlots); + notifyMe(validSlots, DATE); } }) .catch(function (error) { @@ -63,9 +63,9 @@ function getSlotsForDate(DATE) { async function -notifyMe(validSlots){ +notifyMe(validSlots, date){ let slotDetails = JSON.stringify(validSlots, null, '\t'); - notifier.sendEmail(EMAIL, 'VACCINE AVAILABLE', slotDetails, (err, result) => { + notifier.sendEmail(EMAIL, 'VACCINE AVAILABLE', slotDetails, date, (err, result) => { if(err) { console.error({err}); } From fcd2aabd35afa5ce4817d7ade02c04469cbb1dcb Mon Sep 17 00:00:00 2001 From: K Date: Mon, 3 May 2021 11:34:28 +0530 Subject: [PATCH 2/4] Revert "Added email template (#8)" Revert was done as createTemplate method iterates on a string, and throws errors. This reverts commit f04624d132229ef187b913138c8b086993826705. --- README.md | 2 +- emailBody.png | Bin 78748 -> 0 bytes notifier.js | 31 ++----------------------------- vaccineNotifier.js | 6 +++--- 4 files changed, 6 insertions(+), 33 deletions(-) delete mode 100644 emailBody.png diff --git a/README.md b/README.md index 69bdaef..5c7e824 100644 --- a/README.md +++ b/README.md @@ -16,4 +16,4 @@ Step 3) On your terminal run: npm i && pm2 start vaccineNotifier.js To close the app run: pm2 stop vaccineNotifier.js && pm2 delete vaccineNotifier.js Here's a sample of the resultant emails: -![image info](./emailBody.png) +![image info](./sampleEmail.png) diff --git a/emailBody.png b/emailBody.png deleted file mode 100644 index 6eca319e17949e0fba2501ac6090c245828a0f31..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 78748 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 - Vaccine is available on ${date} in the following centers: -

- ` - for(const slot of slotDetails){ - let slotBody = ` Center Name: ${slot.name}
- Location: ${slot.block_name}, ${slot.state_name}, ${slot.pincode}
- From ${slot.from} to ${slot.to}
- Fee Type: ${slot.fee_type}
- Fee: ${slot.fee} rupees
- Available Capacity: ${slot.available_capacity} doses available
- Vaccine: ${slot.vaccine}
- Slots Available:
` - for(const x of slot.slots){ - slotBody = `${slotBody} ${x}
` - } - slotBody = `${slotBody}

` - message = `${message} ${slotBody}` - } - - return message -} - - -exports.sendEmail = function (email, subjectLine, slotDetails, date, callback) { - let message = createTemplate(slotDetails, date) +exports.sendEmail = function (email, subjectLine, slotDetails, callback) { let options = { from: String('Vaccine Checker ' + process.env.EMAIL), to: email, subject: subjectLine, - html: message + text: 'Vaccine available. Details: \n\n' + slotDetails }; nodemailerTransporter.sendMail(options, (error, info) => { if (error) { diff --git a/vaccineNotifier.js b/vaccineNotifier.js index 51f0df4..72f7043 100644 --- a/vaccineNotifier.js +++ b/vaccineNotifier.js @@ -53,7 +53,7 @@ function getSlotsForDate(DATE) { let validSlots = sessions.filter(slot => slot.min_age_limit <= AGE && slot.available_capacity > 0) console.log({date:DATE, validSlots: validSlots.length}) if(validSlots.length > 0) { - notifyMe(validSlots, DATE); + notifyMe(validSlots); } }) .catch(function (error) { @@ -63,9 +63,9 @@ function getSlotsForDate(DATE) { async function -notifyMe(validSlots, date){ +notifyMe(validSlots){ let slotDetails = JSON.stringify(validSlots, null, '\t'); - notifier.sendEmail(EMAIL, 'VACCINE AVAILABLE', slotDetails, date, (err, result) => { + notifier.sendEmail(EMAIL, 'VACCINE AVAILABLE', slotDetails, (err, result) => { if(err) { console.error({err}); } From 4896a0add13400ee9420550f488698f1380d9dcd Mon Sep 17 00:00:00 2001 From: JPRMOhnish Date: Sun, 9 May 2021 23:02:34 +0530 Subject: [PATCH 3/4] Made an easyt ot use CLI for the same --- .env | 10 +++--- CLI/Vaccinator | 58 +++++++++++++++++++++++++++++++ package.json | 11 ++++-- services/getAvailabilityonDate.js | 26 ++++++++++++++ vaccineNotifier.js | 19 ++++------ 5 files changed, 105 insertions(+), 19 deletions(-) create mode 100755 CLI/Vaccinator create mode 100644 services/getAvailabilityonDate.js diff --git a/.env b/.env index 5c482aa..3abf8db 100644 --- a/.env +++ b/.env @@ -1,8 +1,8 @@ -PINCODE= -EMAIL= -APPLICATION_PASSWORD= -AGE= - +PINCODE=458001 +EMAIL=mohnish.cs18@nitp.ac.in +APPLICATION_PASSWORD=oyacvfqdwmaphhlz +AGE=21 +QuUANTITY=2 #Example: #PINCODE=201301 #EMAIL=mytestemail@gmail.com diff --git a/CLI/Vaccinator b/CLI/Vaccinator new file mode 100755 index 0000000..9aa266d --- /dev/null +++ b/CLI/Vaccinator @@ -0,0 +1,58 @@ +#!/usr/bin/env node +const axios=require('axios'); +const chalk=require('chalk'); +const moment=require('moment'); +const url = "https://quotes.rest/qod" +const getAvailability=require('../services/getAvailabilityonDate'); + help =() => { + console.log(chalk.white(`./logger help # Use It for asking help \n +./logger AGE PINCODE NEXTDAYS # pass exactly 3 parameters in the given order for displaying vaccine availability based on the filter\n`)); + } + errorLog=(error) => { + console.log(chalk.red(`${error}`)); + } + // console.log(chalk.blue(`${(process.argv)[2]}`)); + + if((process.argv)[2]=="help") { + help(); + } + callAPI = async (PINCODE,DAYS,QUANTITY, AGE) => { + let today=moment(); + for(let i=0 ;i <10;i++) { + let DATE = today.format('DD-MM-YYYY'); + let response = await getAvailability(PINCODE,DATE,QUANTITY,AGE); + if(response.status=='error') { + console.log(chalk.red('error occured try again!')); + } + else { + console.log(chalk.blue(`Date:${DATE}`)); + const slots=response.data.validSlots; + if(slots.length == 0) { + console.log( chalk.bgRed("No free Slot Available")); + + } + else { + console.log(chalk.yellow("Total Slots Available :\t")+chalk.bgBlue(slots.length)); + slots.map((slot) => { + console.log(chalk.yellow("Vaccine :\t")+ chalk.green(slot.vaccine)); + console.log(chalk.yellow("Fees :\t") + chalk.green(slot.fee)); + console.log(chalk.yellow("Timings are : \t")+chalk.blue(slot.slots.length)); + slot.slots.map((sl) => { + console.log(chalk.blue(sl)); + }); + }); + } + } + today.add(1,'day'); + } + } + if(process.argv.length==5) { + const DAYS=process.argv[4]; + const AGE=process.argv[2]; + const PINCODE=process.argv[3]; + const QUANTITY=1; + + callAPI(PINCODE,DAYS,QUANTITY,AGE); + } + +// prompt verison I have to learn from here https://scotch.io/tutorials/building-cli-applications-with-nodejs. and implement it.' \ No newline at end of file diff --git a/package.json b/package.json index 158624e..f199cf9 100644 --- a/package.json +++ b/package.json @@ -4,17 +4,24 @@ "description": "", "main": "vaccineNotifier.js", "scripts": { - "test": "echo \"Error: no test specified\" && exit 1" + "test": "echo \"Error: no test specified\" && exit 1", + "start": "node vaccineNotifier.js" }, "author": "sharmakartikey54@gmail.com", "license": "ISC", "dependencies": { "axios": "^0.21.1", + "chalk": "^3.0.0", "cron": "^1.8.2", "dotenv": "^8.2.0", "moment": "^2.29.1", "node-cron": "^3.0.0", - "pm2": "^4.5.6" + "pm2": "^4.5.6", + "requests": "^0.3.0", + "save": "^2.4.0" + }, + "bin": { + "outside": "bin/outside" }, "devDependencies": { "nodemailer": "^6.6.0" diff --git a/services/getAvailabilityonDate.js b/services/getAvailabilityonDate.js new file mode 100644 index 0000000..98d1b0b --- /dev/null +++ b/services/getAvailabilityonDate.js @@ -0,0 +1,26 @@ +const axios=require('axios'); +const request=require('request'); +getAvailability = async (PINCODE,DATE,QUANTITY, AGE) => { + const config = { + method: 'get', + url: 'https://cdn-api.co-vin.in/api/v2/appointment/sessions/public/findByPin?pincode=' + PINCODE + '&date=' + DATE, + headers: { + 'accept': 'application/json', + 'Accept-Language': 'hi_IN', + "Access-Control-Allow-Origin": "*", + 'Host': 'cdn-api.co-vin.in', + 'User-Agent':'Axios 0.21.1' + } + }; + try { + const slots=await axios(config); + const sessions = slots.data.sessions; + const validSlots = sessions.filter(slot => slot.min_age_limit <= AGE && slot.available_capacity >= QUANTITY) + return {status:'success',data:{date:DATE, validSlots: validSlots}}; + } + catch(err) { + console.log(err); + return {status:'error'} + } +} +module.exports= getAvailability; \ No newline at end of file diff --git a/vaccineNotifier.js b/vaccineNotifier.js index 72f7043..2e1f202 100644 --- a/vaccineNotifier.js +++ b/vaccineNotifier.js @@ -17,10 +17,10 @@ To close the app, run: pm2 stop vaccineNotifier.js && pm2 delete vaccineNotifier const PINCODE = process.env.PINCODE const EMAIL = process.env.EMAIL const AGE = process.env.AGE - +const QUANTITY=process.env.QUANTITY; async function main(){ try { - cron.schedule('* * * * *', async () => { + cron.schedule('* * * * * *', async () => { await checkAvailability(); }); } catch (e) { @@ -30,7 +30,6 @@ async function main(){ } async function checkAvailability() { - let datesArray = await fetchNext10Days(); datesArray.forEach(date => { getSlotsForDate(date); @@ -52,7 +51,7 @@ function getSlotsForDate(DATE) { let sessions = slots.data.sessions; let validSlots = sessions.filter(slot => slot.min_age_limit <= AGE && slot.available_capacity > 0) console.log({date:DATE, validSlots: validSlots.length}) - if(validSlots.length > 0) { + if(validSlots.length >= QUANTITY) { notifyMe(validSlots); } }) @@ -61,18 +60,16 @@ function getSlotsForDate(DATE) { }); } -async function - -notifyMe(validSlots){ +async function notifyMe(validSlots) { let slotDetails = JSON.stringify(validSlots, null, '\t'); notifier.sendEmail(EMAIL, 'VACCINE AVAILABLE', slotDetails, (err, result) => { if(err) { console.error({err}); } - }) + }); }; -async function fetchNext10Days(){ +async function fetchNext10Days() { let dates = []; let today = moment(); for(let i = 0 ; i < 10 ; i ++ ){ @@ -83,6 +80,4 @@ async function fetchNext10Days(){ return dates; } - -main() - .then(() => {console.log('Vaccine availability checker started.');}); +main().then(() => {console.log('Vaccine availability checker started.');}); From ec662919a828e5eb395f87fc738c8426dc91ff47 Mon Sep 17 00:00:00 2001 From: JPRMOhnish Date: Sun, 9 May 2021 23:05:10 +0530 Subject: [PATCH 4/4] security updated --- .env | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.env b/.env index 3abf8db..2766bde 100644 --- a/.env +++ b/.env @@ -1,8 +1,8 @@ -PINCODE=458001 -EMAIL=mohnish.cs18@nitp.ac.in -APPLICATION_PASSWORD=oyacvfqdwmaphhlz -AGE=21 -QuUANTITY=2 +PINCODE= +EMAIL= +APPLICATION_PASSWORD= +AGE= +QuUANTITY=1 #Example: #PINCODE=201301 #EMAIL=mytestemail@gmail.com