{"id":19440439,"url":"https://github.com/sahasourav17/tickettracker","last_synced_at":"2025-06-28T04:32:47.785Z","repository":{"id":299024567,"uuid":"881960991","full_name":"sahasourav17/TicketTracker","owner":"sahasourav17","description":"A bot that tracks ticket availability from links stored in a Google Sheet. It checks each link, and if tickets are available, sends a notification to a specified Telegram channel. The bot includes an adjustable cooldown to control notification frequency, ensuring you only get timely, relevant alerts. ","archived":false,"fork":false,"pushed_at":"2024-11-01T15:48:09.000Z","size":16,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-06-14T08:02:28.263Z","etag":null,"topics":["beautifulsoup4","notifier","python","selenium-python","telegram-bot","ticket-tracker"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sahasourav17.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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,"zenodo":null}},"created_at":"2024-11-01T15:26:26.000Z","updated_at":"2025-05-08T16:53:11.000Z","dependencies_parsed_at":"2025-06-14T08:02:30.775Z","dependency_job_id":null,"html_url":"https://github.com/sahasourav17/TicketTracker","commit_stats":null,"previous_names":["sahasourav17/tickettracker"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/sahasourav17/TicketTracker","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sahasourav17%2FTicketTracker","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sahasourav17%2FTicketTracker/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sahasourav17%2FTicketTracker/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sahasourav17%2FTicketTracker/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sahasourav17","download_url":"https://codeload.github.com/sahasourav17/TicketTracker/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sahasourav17%2FTicketTracker/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":259782947,"owners_count":22910295,"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","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":["beautifulsoup4","notifier","python","selenium-python","telegram-bot","ticket-tracker"],"created_at":"2024-11-10T15:29:21.674Z","updated_at":"2025-06-14T08:06:06.858Z","avatar_url":"https://github.com/sahasourav17.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# TicketTracker\n\nIt is a bot designed to automate ticket availability tracking. It reads links from a Google Sheet, checks each link to see if tickets are available, and sends a notification to a designated Telegram channel when they are. The bot also includes an adjustable cooldown timer to prevent duplicate notifications within a specified period.\n\n## Features:\n\n- Reads ticket URLs from a Google Sheet\n- Checks each link for ticket availability\n- Sends Telegram notifications when tickets become available\n- Customizable notification cooldown period\n\nEasily keep track of ticket availability with real-time alerts!\n\n## Prerequisites\n\n- **Generate Google service keys**\n\n  - Navigate to `https://console.cloud.google.com/` and create a new project\n  - Select the newly created project from the project selection dropdown menu\n  - On the `Enabled API and services` page, click on the `+ Enable APIS AND SERVICES` button\n\n  - Now, search and enable the following services\n    - Google Sheets API\n    - Google Drive API\n  - From the `Credentials` drawer, click on the `+ CREATE CREDENTIALS` button and select the `Service account` option.\n  - Now fill the required fields and hit `Create and Continue` button. After that select a role. For simplicity, you can select the role of `owner`\n  - Now, you will see a new account added under the `Service account` tab and then click on that new account.\n\n  - Now, go to the `KEYS` tab and click on the `ADD KEY` button and select `Create new key` option.\n  - Finally, you will see a pop up of How you want to download the key.\n    Select the JSON format and rename this to `sheet_reader_service_account.json`\n\n- **Generate Telegram Credentials**\n\n  - search for `BotFather` in Telegram\n  - write command `/start`\n  - write command `/newbot`\n  - give it a name\n  - give it an unique username (ends with \\_bot)\n\n  - copy the API token: For example 5401329997:AAF2ZHcsn93lj_qkqKGYyZRlNKC_isV_Vh8 `[Not a valid key]`\n\n  - Now create a channel/group in Telegram\n  - Make the bot an admin of the channel\n  - Send a hello message in the channel\n  - Go to the url`https://api.telegram.org/bot{API_KEY}/getUpdates`to get the chat_id, for example -1002119021579\n\n## Setup\n\n1. Clone the repository using the following command\n\n   ```bash\n   git clone https://github.com/md-Salah/ticket-checking\n   ```\n\n2. Change the directory to `TicketTracker`\n\n## Installation\n\n1. Create and activate a virtual environment by running the following command\n\n   ```bash\n    python -m venv venv\n\n    .\\venv\\Scripts\\activate\n   ```\n\n2. Run the following command to install the dependencies\n\n   ```bash\n   pip install -r requirements.txt\n   ```\n\n## Run\n\n1. Create a `.env` file in the source directory and place the below contents\n\n   ```\n   TELEGRAM_BOT_API_KEY=\n   TELEGRAM_CHAT_ID=\n   ```\n\n2. Now, run the `main.py` file to start the bot\n\n   ```bash\n   py main.py\n   ```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsahasourav17%2Ftickettracker","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsahasourav17%2Ftickettracker","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsahasourav17%2Ftickettracker/lists"}