Skip to content

Conversation

@mentatbot
Copy link

@mentatbot mentatbot bot commented Aug 20, 2025

This PR adds a new Discord bot that monitors popular private torrent trackers for open signups and notifies subscribed users when registrations become available.

New Features

Torrent Tracker Bot (torrent_tracker_bot.py)

  • Monitors 6 popular private trackers: RED, OPS, PTP, BTN, HDB, and AB
  • Checks tracker signup pages every 5 minutes for availability
  • User subscription system with Discord slash commands
  • Real-time notifications when tracker signups open
  • Persistent storage of user subscriptions and tracker status
  • Comprehensive command system with help documentation

Commands Available:

  • !trackers - List all monitored trackers and their current status
  • !subscribe <tracker> - Subscribe to notifications for specific trackers
  • !unsubscribe <tracker> - Unsubscribe from tracker notifications
  • !subscriptions - View your current subscriptions
  • !status - Show bot status and statistics
  • !help - Display command help

Additional Files:

  • requirements.txt - Python dependencies for the new bot
  • README_torrent_tracker_bot.md - Comprehensive setup and usage documentation
  • Updated main README.md to document both bots in the repository

The bot respects tracker servers with appropriate delays between requests and uses simple heuristics to detect open signups. It saves user preferences and tracker status to JSON files for persistence across restarts.

Closes #1


🤖 This PR was created with Mentat. See my steps and cost here

  • Wake on any new activity.

- Created torrent_tracker_bot.py with comprehensive tracker monitoring
- Monitors 6 popular private trackers (RED, OPS, PTP, BTN, HDB, AB)
- Features user subscription system with Discord commands
- Real-time notifications when tracker signups open
- Persistent storage of subscriptions and tracker status
- Added requirements.txt for dependencies
- Created detailed README_torrent_tracker_bot.md documentation
- Updated main README.md to document both bots

The bot includes commands for:
- !trackers - List all monitored trackers and status
- !subscribe/!unsubscribe - Manage notifications
- !subscriptions - View user's subscriptions
- !status - Bot status and statistics
- !help - Command help

Bot checks tracker signup pages every 5 minutes and notifies subscribers when signups become available.

Co-authored-by: TrueBankai416 <97103466+TrueBankai416@users.noreply.github.com>
@mentatbot mentatbot bot requested a review from TrueBankai416 August 20, 2025 09:11
@mentatbot mentatbot bot mentioned this pull request Aug 20, 2025
mentatbot bot and others added 2 commits August 20, 2025 09:12
- Remove guild_messages intent (not available in discord.py 2.3+)
- Add startup validation and warnings for TARGET_CHANNEL_ID configuration
- Improve data loading with better logging and error handling
- Add input validation for subscribe/unsubscribe commands
- Fix channel filtering logic when TARGET_CHANNEL_ID is None
- Add informative startup messages for configuration status

Co-authored-by: TrueBankai416 <97103466+TrueBankai416@users.noreply.github.com>
- Remove guild_messages intent from bot.py (not available in discord.py 2.3+)
- Fix duplicate @client.event decorator in bot.py
- Use asyncio.create_task instead of client.loop.create_task for better compatibility
- Both bots should now start without AttributeError issues

Co-authored-by: TrueBankai416 <97103466+TrueBankai416@users.noreply.github.com>
@TrueBankai416
Copy link
Owner

@MentatBot you can also monitor this page for signups https://www.reddit.com/r/OpenSignups/ also include the expiration date and invite code if available. I want to monitor Usenet signups too like drunkenslug, nzbgeek and such. also want to monitor feernopeer, torrentleech, seedpool, DigitalCore, Old Toons World, anime bytes, and bakabt

mentatbot bot and others added 4 commits August 20, 2025 09:18
- Add Reddit r/OpenSignups monitoring with automatic post detection
- Extract expiration dates and invite codes from Reddit posts
- Add 6 new trackers: TorrentLeech, FeenoPeer, SeedPool, DigitalCore, Old Toons World, BakaBT
- Add 4 Usenet indexers: DrunkenSlug, NZBGeek, NZBPlanet, NZBFinder
- Support REDDIT as special subscription for r/OpenSignups notifications
- Group trackers by type (tracker/usenet) in display
- Enhanced notifications with expiration dates and invite codes
- Fix timezone issues with Discord embeds
- Improved command validation and error messages

Bot now monitors both individual tracker websites and Reddit for comprehensive signup coverage.

Co-authored-by: TrueBankai416 <97103466+TrueBankai416@users.noreply.github.com>
- Fix last_check_time to use UTC timezone for consistency
- Correct FeenoPeer URL typo (was feernopeeer.com, now feenopeer.com)
- Update help text to clarify Reddit subscription commands
- Remove "invites only" from closed indicators to reduce false negatives
- Add "registration disabled" as closed indicator

Co-authored-by: TrueBankai416 <97103466+TrueBankai416@users.noreply.github.com>
- Update README files to list all 12 trackers + 4 Usenet indexers + Reddit
- Clean up requirements.txt to remove built-in modules
- Update feature descriptions to mention Reddit monitoring
- Add comprehensive tracker/indexer lists in documentation
- Clarify Reddit subscription commands in help text

Co-authored-by: TrueBankai416 <97103466+TrueBankai416@users.noreply.github.com>
- Correct "BroadcasTheNet" to "BroadcastTheNet" in tracker name
- Update both code and documentation for consistency

Co-authored-by: TrueBankai416 <97103466+TrueBankai416@users.noreply.github.com>
@mentatbot
Copy link
Author

mentatbot bot commented Aug 20, 2025

✅ Enhanced Bot Complete!

I've significantly expanded the torrent tracker bot based on your requirements. Here's what's been added:

🔥 Reddit r/OpenSignups Monitoring

  • Automatic monitoring of Reddit's r/OpenSignups community every 5 minutes
  • Smart extraction of expiration dates and invite codes from posts
  • Rich notifications with post details, author, and direct links
  • Subscribe with !subscribe REDDIT

🎬 Additional Trackers Added

  • TorrentLeech (TL) - General tracker
  • FeenoPeer (FNP) - General tracker
  • SeedPool (SP) - General tracker
  • DigitalCore (DC) - General tracker
  • Old Toons World (OTW) - Cartoon/Animation tracker
  • BakaBT (BBT) - Anime tracker

📰 Usenet Indexers Added

  • DrunkenSlug (DS) - Usenet indexer
  • NZBGeek (GEEK) - Usenet indexer
  • NZBPlanet (PLANET) - Usenet indexer
  • NZBFinder (FINDER) - Usenet indexer

🚀 Enhanced Features

  • Expiration date detection - Automatically extracts dates like "expires 12/25/2024"
  • Invite code extraction - Finds codes in Reddit posts and displays them prominently
  • Type grouping - Trackers and Usenet indexers are visually distinguished
  • Comprehensive notifications - Rich embeds with all relevant information
  • Improved error handling - Better validation and user feedback

📋 Updated Commands

  • !trackers - Now shows all 12 trackers + 4 indexers + Reddit status
  • !subscribe REDDIT - Subscribe to Reddit r/OpenSignups notifications
  • !subscribe <CODE> - Works with all new tracker/indexer codes
  • All existing commands work with the expanded tracker list

🛠️ Technical Improvements

  • Fixed timezone issues with Discord embeds
  • Corrected FeenoPeer URL typo
  • Improved startup validation and warnings
  • Updated documentation to reflect all changes
  • Cleaned up requirements.txt

📖 Usage Examples

!subscribe REDDIT          # Get Reddit notifications
!subscribe DS              # Subscribe to DrunkenSlug
!subscribe TL              # Subscribe to TorrentLeech
!trackers                  # See all monitored sources
!subscriptions             # View your subscriptions

The bot now monitors 17 different sources (12 trackers + 4 Usenet indexers + Reddit) and provides comprehensive signup notifications with expiration dates and invite codes when available. Everything is ready to use!

Next steps:

  1. Set your TARGET_CHANNEL_ID in the script
  2. Configure your Discord bot token
  3. Run pip install -r requirements.txt
  4. Start the bot with python torrent_tracker_bot.py

The bot will check all sources every 5 minutes and notify subscribers immediately when signups become available.

mentatbot bot and others added 3 commits August 20, 2025 09:33
- Add torrent-tracker-bot.service systemd service file
- Create automated setup.sh script for easy installation
- Add comprehensive SYSTEMD_SETUP.md guide
- Include security hardening in service configuration
- Support for virtual environment and proper permissions
- Complete instructions for service management and troubleshooting

Co-authored-by: TrueBankai416 <97103466+TrueBankai416@users.noreply.github.com>
- Fix setup.sh to properly handle file copying from any location
- Add asyncio.Lock to prevent concurrent JSON file writes
- Remove placeholder token from service file to avoid confusion
- Pin dependency versions with ~= for better stability
- Handle case where script is run from different directory than target

Co-authored-by: TrueBankai416 <97103466+TrueBankai416@users.noreply.github.com>
- Add error handling for service file copy in case of partial checkouts
- Prevent script failure when optional files are missing

Co-authored-by: TrueBankai416 <97103466+TrueBankai416@users.noreply.github.com>
@TrueBankai416
Copy link
Owner

@MentatBot make this only scrape for english trackers

mentatbot bot and others added 3 commits September 26, 2025 18:29
- Remove non-English trackers: AnimeBytes, BakaBT, FeenoPeer, SeedPool, DigitalCore
- Add language metadata to all remaining trackers
- Implement English language detection for Reddit posts
- Add language filtering to skip non-English Reddit content
- Update documentation to reflect English-only focus
- Reduce tracker count from 12 to 7 English trackers
- Keep 4 English Usenet indexers and Reddit monitoring with language filtering

Bot now focuses exclusively on English-language content and trackers.

Co-authored-by: TrueBankai416 <97103466+TrueBankai416@users.noreply.github.com>
- Remove "in" and other English words from non-English indicators
- Increase threshold from 10% to 15% to reduce false positives
- Expand German word list with more specific non-English terms
- Improve accuracy of English language detection for Reddit posts

Co-authored-by: TrueBankai416 <97103466+TrueBankai416@users.noreply.github.com>
- Convert word lists to sets for O(1) lookup performance
- Simplify logic to "assume English unless >15% non-English words"
- Fix false negatives for English text with occasional foreign words
- More robust and efficient language detection

Co-authored-by: TrueBankai416 <97103466+TrueBankai416@users.noreply.github.com>
@mentatbot
Copy link
Author

mentatbot bot commented Sep 26, 2025

✅ English-Only Filtering Complete!

I've updated the bot to focus exclusively on English trackers and content as requested. Here's what changed:

🗑️ Removed Non-English Trackers

Removed these trackers that may have non-English content:

  • AnimeBytes (AB) - Anime tracker with potential Japanese content
  • BakaBT (BBT) - Anime tracker with potential Japanese content
  • FeenoPeer (FNP) - Uncertain language focus
  • SeedPool (SP) - Uncertain language focus
  • DigitalCore (DC) - Uncertain language focus

🇺🇸 Kept English-Only Trackers

Remaining 7 English trackers:

  • RED (Redacted) - English music tracker
  • OPS (Orpheus) - English music tracker
  • PTP (PassThePopcorn) - English movie tracker
  • BTN (BroadcastTheNet) - English TV tracker
  • HDB (HDBits) - English HD tracker
  • TL (TorrentLeech) - English general tracker
  • OTW (Old Toons World) - English cartoon tracker

Plus 4 English Usenet indexers:

  • DrunkenSlug, NZBGeek, NZBPlanet, NZBFinder

🧠 Smart Language Detection for Reddit

Added intelligent filtering for Reddit posts:

  • Analyzes post titles and content for language indicators
  • Uses word frequency analysis to detect English vs other languages
  • Skips posts in French, German, Spanish, and other languages
  • Only processes English posts from r/OpenSignups
  • Logs skipped non-English posts for transparency

📊 Updated Stats

  • Before: 12 trackers + 4 indexers = 16 sources
  • After: 7 English trackers + 4 English indexers = 11 sources
  • Plus: Reddit monitoring with English-only filtering

🔧 Technical Improvements

  • Added language metadata to all tracker definitions
  • Optimized language detection with set-based lookups
  • Improved detection accuracy to avoid false positives
  • Updated all documentation to reflect English-only focus

The bot now exclusively monitors English-language content and trackers, ensuring you only get notifications for content you can understand and use! 🎯

@TrueBankai416
Copy link
Owner

these can remain


    AnimeBytes (AB) - Anime tracker with potential Japanese content
    BakaBT (BBT) - Anime tracker with potential Japanese content
    FeenoPeer (FNP) - Uncertain language focus
    SeedPool (SP) - Uncertain language focus
    DigitalCore (DC) - Uncertain language focus

mentatbot bot and others added 3 commits September 26, 2025 18:39
- Add back AnimeBytes (AB), BakaBT (BBT), FeenoPeer (FNP), SeedPool (SP), DigitalCore (DC)
- Keep English language filtering for Reddit posts only
- Update documentation to reflect all 12 trackers + 4 indexers
- Maintain language detection for Reddit while keeping all tracker sources

Co-authored-by: TrueBankai416 <97103466+TrueBankai416@users.noreply.github.com>
- Remove unused english_count variable for cleaner code
- Optimize performance by avoiding unnecessary computation
- Language detection now only counts non-English indicators

Co-authored-by: TrueBankai416 <97103466+TrueBankai416@users.noreply.github.com>
- Remove unused english_indicators set from language detection
- Simplify function by only using non-English word detection
- Maintain same functionality with cleaner code

Co-authored-by: TrueBankai416 <97103466+TrueBankai416@users.noreply.github.com>
@mentatbot
Copy link
Author

mentatbot bot commented Sep 26, 2025

✅ All Trackers Restored!

I've added back all the trackers you wanted to keep:

🔄 Restored Trackers

  • AnimeBytes (AB) - Anime tracker ✅
  • BakaBT (BBT) - Anime tracker ✅
  • FeenoPeer (FNP) - General tracker ✅
  • SeedPool (SP) - General tracker ✅
  • DigitalCore (DC) - General tracker ✅

📊 Updated Stats

  • Total Sources: 12 trackers + 4 Usenet indexers + Reddit = 17 sources
  • All trackers: RED, OPS, PTP, BTN, HDB, TL, OTW, AB, BBT, FNP, SP, DC
  • All indexers: DS, GEEK, PLANET, FINDER

🎯 English Filtering Scope

The English language filtering now only applies to Reddit posts from r/OpenSignups:

  • All 16 trackers/indexers are monitored regardless of language
  • Reddit posts are filtered to show only English content
  • ✅ Non-English Reddit posts are skipped with logging

🧹 Code Optimizations

  • Cleaned up unused language detection variables
  • Optimized performance by removing unnecessary computations
  • Maintained robust Reddit language filtering

The bot now monitors all your requested sources while still filtering Reddit for English-only posts! 🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

new bot

2 participants