🤖 This bot updates subscribers after each men's NCAA March Madness game. Each update includes (1) the game's final score and (2) the standings of the group's Yahoo Fantasy bracket.
- Node.js + Express.
- Twilio WhatsApp API to send messages to subscribers.
- Sportradar API for NCAA data.
- Puppeteer Node library to scrape Yahoo Fantasy bracket.
- properly handle Puppeteer timeouts
- implement windows scheduler instead of setInterval()
Sign up for Twilio, add Whatsapp number, set-up sandbox
Run npm install
in root directory
Change .env.sample
to .env
and replace the following with your variables:
- TWILIO_ACCOUNT_SID=your-twilio-sid-here
- TWILIO_AUTH_TOKEN=your-twilio-auth-token-here
- TWILIO_SANDBOX_NUMBER=your-twilio-sandbox-number-here
- SPORTRADAR_API_KEY=your-sportradar-api-key-here
- GOOGLE_EMAIL=your-yahoo-fantasy-sign-in-info-here
- GOOGLE_PASSWORD=your-yahoo-fantasy-sign-in-info-here
- PHONE_NUMBER_1=subscriber-number-here
- PHONE_NUMBER_2=etc...
Update CSS-selectors and XPaths in getBracketStandings.js
to webscrape your specific Yahoo Fantasy Bracket.
Bot:
- Run
node marchMadnessBot.js
from root directory.
Backend server for responding to subscriber messages:
- Deploy
server.js
and point your Twilio sandbox endpoint url to the server.