86b44be1cc
- Updated README with accurate feature descriptions - Clarified M3U8/HLS streaming support (no direct DVB cards) - Added Coinbase Commerce payment documentation - Included comprehensive patch management system details - Corrected version information throughout
314 lines
9.1 KiB
Markdown
314 lines
9.1 KiB
Markdown
# IPTV Server
|
|
|
|

|
|

|
|

|
|
|
|
- Complete Installation Package with Automatic Patch Management
|
|
|
|
Professional IPTV streaming server with M3U8/HLS support, Coinbase Commerce payments, and multi-tier user management.
|
|
|
|
## Overview
|
|
|
|
This package provides a complete enterprise IPTV server solution featuring:
|
|
|
|
- **M3U8/HLS Streaming Support** - Compatible with TVHeadend and other M3U8 sources
|
|
- **Coinbase Commerce Integration** - Cryptocurrency payment processing (Bitcoin, Ethereum, USDC)
|
|
- **Multi-tier user system** (Admin → Reseller → Sub-reseller → User)
|
|
- **Automatic Patch Management** - Git-based update system with rollback support
|
|
- **HLS streaming** with adaptive bitrate transcoding
|
|
- **VOD system** with IMDB integration capabilities
|
|
- **Progressive Web App** with modern interface
|
|
- **Docker-based deployment** with comprehensive management
|
|
- **License server integration** for software protection
|
|
|
|
## 🆕 Patch Management System
|
|
|
|
The server includes an automatic patch management system for easy updates:
|
|
|
|
### Features
|
|
- **One-Click Updates** - Apply patches directly from admin dashboard
|
|
- **Automatic Backups** - System backs up before applying patches
|
|
- **Rollback Support** - Easily revert to previous versions if needed
|
|
- **Update Notifications** - Get notified when new patches are available
|
|
- **Git-Based Distribution** - Transparent version control via Git repositories
|
|
|
|
### Checking for Updates
|
|
1. Login as admin
|
|
2. Navigate to "System Updates" in dashboard
|
|
3. Click "Check for Updates"
|
|
4. Review available patches and apply
|
|
|
|
### Update Repositories
|
|
- **Main Server**: `http://git.powerdata.dk:3000/masterdraco/IPTV-Server.git`
|
|
- **Updates**: `http://git.powerdata.dk:3000/masterdraco/IPTV-Updates.git`
|
|
|
|
## Quick Start
|
|
|
|
### 1. System Preparation
|
|
```bash
|
|
# Extract installation package
|
|
tar -xzf iptv-server-install.tar.gz
|
|
cd iptv-server-install
|
|
|
|
# Ensure user has sudo privileges (not root)
|
|
groups $USER # should include 'sudo'
|
|
```
|
|
|
|
### 2. Complete Installation
|
|
```bash
|
|
# Run interactive installation
|
|
./iptv-install.sh install
|
|
```
|
|
|
|
### 3. Configure Streaming Sources
|
|
```bash
|
|
# For M3U8/TVHeadend integration
|
|
# Add your M3U8 sources via the admin dashboard
|
|
# System automatically imports channels from M3U8 playlists
|
|
```
|
|
|
|
### 4. Start Services
|
|
```bash
|
|
# Start all services
|
|
./iptv-install.sh start
|
|
|
|
# Check comprehensive status
|
|
./iptv-install.sh status
|
|
```
|
|
|
|
### 5. Access Server
|
|
- **Web Interface**: `https://your-domain.com`
|
|
- **API Documentation**: `https://your-domain.com/docs`
|
|
- **Streaming Endpoint**: `https://your-domain.com/api/streams/`
|
|
- **Admin Panel**: `https://your-domain.com/admin`
|
|
|
|
## System Requirements
|
|
|
|
### Minimum Requirements
|
|
- **OS**: Ubuntu 20.04+ or Debian 11+
|
|
- **Memory**: 4GB RAM
|
|
- **Storage**: 50GB available space
|
|
- **CPU**: 2+ cores (quad-core recommended for transcoding)
|
|
- **Network**: Broadband connection with static IP
|
|
|
|
### Recommended for Production
|
|
- **Memory**: 8GB+ RAM
|
|
- **Storage**: 500GB+ SSD (for media storage and recordings)
|
|
- **CPU**: 6+ cores with hardware video acceleration
|
|
- **Network**: Dedicated server with high bandwidth
|
|
|
|
## Streaming Support
|
|
|
|
### M3U8/HLS Sources
|
|
- **TVHeadend Integration** - Direct import from TVHeadend servers
|
|
- **Generic M3U8** - Support for any standard M3U8 playlist
|
|
- **External Streams** - Proxy support for external HLS streams
|
|
- **Automatic Channel Import** - Bulk import from M3U8 playlists
|
|
|
|
### Note on TV Cards
|
|
While the system architecture supports TV cards, direct DVB card integration is not included in the current version. The system uses M3U8/HLS sources for channel streaming, which provides greater flexibility and compatibility with existing streaming infrastructure like TVHeadend.
|
|
|
|
## Payment Processing
|
|
|
|
### Coinbase Commerce Integration
|
|
The system uses **Coinbase Commerce** for cryptocurrency payment processing:
|
|
|
|
- **Supported Cryptocurrencies**:
|
|
- Bitcoin (BTC)
|
|
- Ethereum (ETH)
|
|
- USDC
|
|
- Litecoin (LTC)
|
|
- Dogecoin (DOGE)
|
|
|
|
- **Features**:
|
|
- Automatic payment verification
|
|
- Real-time exchange rates
|
|
- Secure webhook notifications
|
|
- No blockchain node required
|
|
|
|
### Setting Up Payments
|
|
1. Create a Coinbase Commerce account
|
|
2. Get your API key from Coinbase Commerce dashboard
|
|
3. Configure in IPTV Server admin settings
|
|
4. Enable desired cryptocurrencies
|
|
|
|
## Installation Commands
|
|
|
|
### Core Management
|
|
```bash
|
|
./iptv-install.sh install # Complete installation
|
|
./iptv-install.sh start # Start all services
|
|
./iptv-install.sh stop # Stop all services
|
|
./iptv-install.sh restart # Restart all services
|
|
./iptv-install.sh status # Check service status
|
|
./iptv-install.sh logs # View logs
|
|
```
|
|
|
|
### Update Management
|
|
```bash
|
|
./iptv-install.sh check-updates # Check for available patches
|
|
./iptv-install.sh list-patches # List all available patches
|
|
./iptv-install.sh apply-patch # Apply next patch
|
|
./iptv-install.sh apply-all # Apply all pending patches
|
|
./iptv-install.sh patch-history # View patch history
|
|
./iptv-install.sh rollback # Rollback to previous version
|
|
```
|
|
|
|
### Backup Management
|
|
```bash
|
|
./iptv-install.sh backup # Create backup
|
|
./iptv-install.sh restore # Restore from backup
|
|
```
|
|
|
|
## Docker Services
|
|
|
|
The system runs as Docker containers:
|
|
|
|
- **iptv-backend** - FastAPI application server
|
|
- **iptv-postgres** - PostgreSQL database
|
|
- **iptv-redis** - Redis cache and sessions
|
|
- **iptv-nginx** - Nginx reverse proxy
|
|
- **iptv-streaming** - FFmpeg streaming service
|
|
- **iptv-celery** - Background task processor
|
|
|
|
## API Endpoints
|
|
|
|
### Authentication
|
|
- `POST /api/auth/login` - User login
|
|
- `POST /api/auth/register` - User registration
|
|
- `POST /api/auth/refresh` - Refresh token
|
|
|
|
### Channels
|
|
- `GET /api/channels` - List channels
|
|
- `POST /api/channels/m3u8` - Add M3U8 channel
|
|
- `POST /api/m3u8/import` - Import M3U8 playlist
|
|
|
|
### Streaming
|
|
- `GET /api/streams/play/{channel_id}` - Get stream URL
|
|
- `POST /api/streams/start` - Start streaming session
|
|
- `POST /api/streams/stop` - Stop streaming session
|
|
|
|
### Patch Management
|
|
- `GET /api/patches/check` - Check for updates
|
|
- `POST /api/patches/apply-all` - Apply all patches
|
|
- `GET /api/patches/history` - View update history
|
|
|
|
## Configuration
|
|
|
|
Main configuration file: `config/iptv.env`
|
|
|
|
Key settings:
|
|
```bash
|
|
# Server Configuration
|
|
DOMAIN=your-domain.com
|
|
SERVER_NAME="IPTV Server"
|
|
SERVER_PORT=8000
|
|
|
|
# Database
|
|
DB_HOST=postgres
|
|
DB_NAME=iptv_server
|
|
DB_USER=iptv_user
|
|
|
|
# Streaming
|
|
ENABLE_M3U8_IMPORT=true
|
|
M3U8_IMPORT_INTERVAL=3600
|
|
STREAMING_QUALITY=high
|
|
|
|
# Payments
|
|
COINBASE_API_KEY=your_api_key
|
|
COINBASE_WEBHOOK_SECRET=your_webhook_secret
|
|
|
|
# Patch Management
|
|
PATCH_CHECK_ENABLED=true
|
|
PATCH_CHECK_INTERVAL=3600
|
|
PATCH_AUTO_BACKUP=true
|
|
```
|
|
|
|
## Security
|
|
|
|
- **JWT Authentication** - Secure token-based authentication
|
|
- **SSL/TLS Encryption** - Automatic SSL certificate management
|
|
- **Role-Based Access Control** - Multi-tier permission system
|
|
- **License Verification** - Hardware-bound licensing
|
|
- **Rate Limiting** - API rate limiting protection
|
|
- **Firewall Configuration** - Automated firewall setup
|
|
|
|
## Troubleshooting
|
|
|
|
### Service Issues
|
|
```bash
|
|
# Check service status
|
|
docker ps
|
|
|
|
# View logs
|
|
docker logs iptv-backend
|
|
docker logs iptv-streaming
|
|
|
|
# Restart services
|
|
./iptv-install.sh restart
|
|
```
|
|
|
|
### Streaming Issues
|
|
- Verify M3U8 sources are accessible
|
|
- Check network connectivity
|
|
- Review streaming logs: `docker logs iptv-streaming`
|
|
|
|
### Payment Issues
|
|
- Verify Coinbase Commerce API keys
|
|
- Check webhook configuration
|
|
- Review payment logs in admin dashboard
|
|
|
|
### Update Issues
|
|
- Check Git repository connectivity
|
|
- Verify disk space for backups
|
|
- Review patch logs: `tail -f logs/patch.log`
|
|
|
|
## Support
|
|
|
|
### Documentation
|
|
- Installation Guide: `docs/INSTALLATION_GUIDE.md`
|
|
- API Documentation: `https://your-server/docs`
|
|
- Patch Management: `PATCH_MANAGEMENT.md`
|
|
|
|
### Community
|
|
- Issues: Report via admin dashboard
|
|
- Updates: Check System Updates section
|
|
|
|
## 📋 License & Purchase Information
|
|
|
|
### Commercial License Required
|
|
This IPTV Server software is **commercially licensed** and requires a valid license for production use.
|
|
|
|
**🔗 Purchase License**: [https://powerdata.dk](https://powerdata.dk)
|
|
|
|
### License Features
|
|
- ✅ **Production Deployment Rights** - Deploy on your servers
|
|
- ✅ **Commercial Usage** - Use for business purposes
|
|
- ✅ **Multi-Site Support** - Run multiple instances
|
|
- ✅ **Technical Support** - Priority support access
|
|
- ✅ **Regular Updates** - Access to patches and updates
|
|
- ✅ **Source Code Access** - Full source code included
|
|
|
|
### License Validation
|
|
The software validates licenses against PowerData.dk servers and is bound to hardware IDs for security.
|
|
|
|
---
|
|
|
|
## Version History
|
|
|
|
### v2.7.1 (Current)
|
|
- Updated README with accurate feature descriptions
|
|
- Clarified M3U8/HLS streaming support
|
|
- Added Coinbase Commerce documentation
|
|
- Included patch management system details
|
|
|
|
### v2.7.0
|
|
- Initial release with patch management system
|
|
- Complete Docker-based architecture
|
|
- Multi-tier user management
|
|
- VOD system integration
|
|
|
|
---
|
|
|
|
**© 2025 PowerData.dk** - Enterprise IPTV Solutions |