{"id":27101400,"url":"https://github.com/tsembp/wg-course-task-notifier-bot","last_synced_at":"2025-07-22T17:34:05.524Z","repository":{"id":286342086,"uuid":"961077492","full_name":"tsembp/WG-Course-Task-Notifier-Bot","owner":"tsembp","description":"A discord bot designed to notify the students of Wargaming's Backend SWE Course for when a new task is uploaded into the platform.","archived":false,"fork":false,"pushed_at":"2025-04-07T15:44:38.000Z","size":206,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-09T21:12:40.732Z","etag":null,"topics":["discord-bot","python","scraper"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tsembp.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2025-04-05T17:49:14.000Z","updated_at":"2025-04-07T15:44:41.000Z","dependencies_parsed_at":"2025-04-09T21:12:40.665Z","dependency_job_id":null,"html_url":"https://github.com/tsembp/WG-Course-Task-Notifier-Bot","commit_stats":null,"previous_names":["tsembp/wg-course-task-notifier-bot"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/tsembp/WG-Course-Task-Notifier-Bot","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tsembp%2FWG-Course-Task-Notifier-Bot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tsembp%2FWG-Course-Task-Notifier-Bot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tsembp%2FWG-Course-Task-Notifier-Bot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tsembp%2FWG-Course-Task-Notifier-Bot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tsembp","download_url":"https://codeload.github.com/tsembp/WG-Course-Task-Notifier-Bot/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tsembp%2FWG-Course-Task-Notifier-Bot/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":266539404,"owners_count":23945008,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-07-22T02:00:09.085Z","response_time":66,"last_error":null,"robots_txt_status":null,"robots_txt_updated_at":null,"robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["discord-bot","python","scraper"],"created_at":"2025-04-06T14:36:47.031Z","updated_at":"2025-07-22T17:34:05.514Z","avatar_url":"https://github.com/tsembp.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 🤖 Wargaming Course - New Task Notifier Discord Bot\n\nA Discord bot that scrapes Wargaming's Backend SWE Course platform for new tasks and immediately notifies users in our Discord server.\n\nThe idea came to me after constantly having to check for updates manually—I wanted a solution that would help not just me, but also the 50 other course participants stay on top of new assignments effortlessly. Currently, the bot runs locally, and I'm planning to deploy it soon for 24/7 automated monitoring.\n\n## Features\n\n- 🔄 **Automated Monitoring:** Checks for new course tasks every 10 minutes using Selenium web automation.\n- 🔔 **Real-Time Notifications:** Posts instant alerts in a designated Discord channel when new tasks are detected.\n- 💾 **Task Tracking:** Maintains a record of previously seen tasks to prevent duplicate notifications.\n- 🤖 **Command Interface:** Enables users to retrieve current tasks or check for updates on demand using simple commands.\n\n## Screenshots of usage\n\n### Listing All Tasks\n![List of tasks command output](Screenshots/list_tasks.png)\n\n### New Task Notifications\n![New task notification](Screenshots/message_notification.png)\n\n### Manual Update Check\n![Update check command](Screenshots/updates.png)\n\n\n## Installation\n\n1. Clone this repository:\n   ```\n   git clone https://github.com/tsembp/WG-Course-Task-Notifier-Bot.git\n   cd WG-Course-Task-Notifier-Bot\n   ```\n\n2. Install required dependencies:\n   ```\n   pip install -r requirements.txt\n   ```\n\n3. Set up your environment variables (see Configuration section)\n\n## Configuration\n\nCreate a `.env` file in the project root with the following variables:\n\n```\n# Wargaming Board Platform Credentials\nwg_username = \"username\"\nwg_password = \"password\"\nlogin_url = \"url/login\"\ntasks_url = \"url/tasks\"\n\n# Discord Bot Config Parameters\nbot_token = \"token\"\nbot_url = \"url\"\nchannel_id = \"id\"\npermissions_int = \"perms\"\n```\n\n### Getting Discord Bot Token\n\n1. Go to the [Discord Developer Portal](https://discord.com/developers/applications)\n2. Create a new application\n3. Navigate to the \"Bot\" tab and click \"Add Bot\"\n4. Copy the token from the \"Token\" section\n\n### Getting Channel ID\n\n1. Enable Developer Mode in Discord (Settings \u003e Advanced \u003e Developer Mode)\n2. Right-click on the channel you want to use and select \"Copy ID\"\n\n## Usage\n\nRun the bot:\n\n```\npython bot.py\n```\n\nThe bot will automatically check for new tasks every 10 minutes and post notifications to the configured Discord channel.\n\n## Commands\n\n- `!tasks` - Displays all available tasks from the course platform\n- `!updates` - Checks for new tasks\n\n\n## Dependencies\n\n- discord.py - Discord API wrapper\n- selenium - Web automation\n- python-dotenv - Environment variable management\n\n## License\n\n[MIT License](LICENSE)","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftsembp%2Fwg-course-task-notifier-bot","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftsembp%2Fwg-course-task-notifier-bot","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftsembp%2Fwg-course-task-notifier-bot/lists"}