Monitors Texas A&M College Scheduler course availability, sends Discord notifications, and can attempt registration when a desired section opens.
-
Copy environment and config templates:
cp .env.example .env cp config.example.py config.py
-
Edit
.env—USERID,TERMCODE,DISCORD_WEBHOOK, and the four cookie values (from your browser session).
USERIDis the ID that collegescheduler uses to schedule classes, it is not the UIN.TERMCODEis the specific term you are registering for.DISCORD_WEBHOOKallows you to send registration notifications to a Discord server.- When pasting your cookies, log in first, then use a cookie extension to copy the exact values. This will allow the script to authenticate.
- Edit
config.py—ROOT_URL,DESIRED,TRACKED, and optionalSWAP_MATRIX.
- Do not edit
ROOT_URL DESIREDholds the classes that you would like to register for.TRACKEDcan track specific sections or courses and send you a Discord message, but it won't register.SWAP_MATRIXis an advanced feature that will drop a current section before attempting to register for a desired section. This is best used for time conflicts.
-
Install and run:
pip install -r requirements.txt python course_checker.py
Ensure .env and config.py exist locally, then:
docker compose up --build| File | Purpose |
|---|---|
.env |
Secrets: user id, term code, webhook, cookies (gitignored) |
config.py |
Course dicts and term API URL (gitignored; copy from config.example.py) |
course_checker.py |
Monitor logic |
settings.py |
Loads .env into runtime variables |
getcookie.py, test1.py, and discord_bot.py are local WIP scripts and are not tracked in git.
Refresh COOKIE_ASPNET and COOKIE_REQUEST_VERIFICATION when the script reports auth failures. These are the most important.
Part of the repository was created with the use of AI