various NFOguard versions

This commit is contained in:
2025-09-12 10:30:12 -04:00
parent 08cddf7799
commit 77295cc400
48 changed files with 2051 additions and 92 deletions
+32 -18
View File
@@ -17,11 +17,11 @@ NFOGuard is a comprehensive solution to protect and preserve date metadata for T
- `<aired>` maps to Emby's `PremiereDate` field
- **Current Fix**: Writing import date to `<aired>` field (goes to PremiereDate)
### 2. NFOGuard Emby Plugin (C# DLL) - v1.0.0 🚧
**Status**: Built, ready for testing
### 2. NFOGuard Emby Plugin (C# DLL) - v2.0.0-automatic ✅
**Status**: Production-ready with automatic subscription system
- **Purpose**: Automatically sync `PremiereDate``DateCreated` in Emby
- **Approach**: Real-time processing via library events (not scheduled tasks)
- **Architecture**: Clean, standards-compliant Emby plugin
- **Approach**: Real-time processing + scheduled tasks with licensing tiers
- **Architecture**: Professional plugin with automatic subscription validation
## What We've Tried
@@ -43,16 +43,17 @@ NFOGuard is a comprehensive solution to protect and preserve date metadata for T
- Comprehensive logging and error handling
- CI/CD pipeline with automated testing
### Emby Plugin Features ✅ - READY FOR TESTING
- **Real-time processing**: Library event hooks (`ItemAdded`/`ItemUpdated`)
- **Scheduled task mode**: Weekly batch processing of existing episodes
- **Flexible processing modes**: Real-time only, scheduled only, or both
- **Configuration UI**: Full settings page in Emby dashboard
- **TV episode detection**: Automatic filtering and processing
### Emby Plugin Features ✅ - PRODUCTION READY
- **Real-time processing**: Library event hooks (`ItemAdded`/`ItemUpdated`)
- **Scheduled task mode**: Weekly batch processing with free tier limits
- **Percentage-based free tier**: 2% of TV episodes + 5% of movies per month
- **Automatic subscription system**: Patreon/PayPal integration (no manual keys)
- **Machine-based activation**: Unique installation IDs prevent piracy
- **Usage tracking**: Monthly quotas with automatic reset
- **TV + Movie support**: Full media library coverage
- **Core sync logic**: `PremiereDate``DateCreated` synchronization
- **Verbose logging**: Configurable detailed logging for troubleshooting
- **License framework**: Ready for future licensing (currently disabled)
- **Standard architecture**: Follows official Emby plugin guidelines
- **Professional licensing**: TimeLord-style automatic activation
- **Offline mode**: Graceful fallback to free tier
## Technical Details
@@ -106,11 +107,24 @@ episode.UpdateToRepository(ItemUpdateType.MetadataEdit);
4. **Verify database sync**: `DateCreated` = `PremiereDate`
5. **Monitor logs for proper operation**
### Production Features
8. **Add licensing system** - Custom server integration
9. **Performance optimization**
10. **Error handling improvements**
11. **Documentation and user guides**
### Plugin Version History
- **v1.0.0-working**: Basic functionality, unlimited processing (TESTED ✅)
- **v1.1.0-free-tier**: Fixed 500 items/month, no real-time
- **v1.2.0-production**: Unlimited with manual license keys
- **v1.3.0-unified**: Single DLL with license key activation
- **v2.0.0-automatic**: Professional subscription system (CURRENT 🚀)
### Version Recommendations
- **Development/Testing**: Use v1.0.0-working (unlimited, no licensing)
- **Production/Commercial**: Use v2.0.0-automatic (percentage-based free tier + subscriptions)
### API Requirements for v2.0.0-automatic
```
Domain: nfoguard.com
POST /api/register # Machine registration
GET /api/patreon/check?machine_id=XXX # Patreon validation
GET /api/paypal/check?machine_id=XXX # PayPal validation
```
## File Structure
```