Add multi-user server sync (PHP server + client)
Phase 2 implementation: Multiple streamers can now merge their captions into a single stream using a PHP server. PHP Server (server/php/): - server.php: API endpoint for sending/streaming transcriptions - display.php: Web page for viewing merged captions in OBS - config.php: Server configuration - .htaccess: Security settings - README.md: Comprehensive deployment guide Features: - Room-based isolation (multiple groups on same server) - Passphrase authentication per room - Real-time streaming via Server-Sent Events (SSE) - Different colors for each user - File-based storage (no database required) - Auto-cleanup of old rooms - Works on standard PHP hosting Client-Side: - client/server_sync.py: HTTP client for sending to PHP server - Settings dialog updated with server sync options - Config updated with server_sync section Server Configuration: - URL: Server endpoint (e.g., http://example.com/transcription/server.php) - Room: Unique room name for your group - Passphrase: Shared secret for authentication OBS Integration: Display URL format: http://example.com/transcription/display.php?room=ROOM&passphrase=PASS&fade=10×tamps=true NOTE: Main window integration pending (client sends transcriptions) 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
31
server/php/.htaccess
Normal file
31
server/php/.htaccess
Normal file
@@ -0,0 +1,31 @@
|
||||
# Security settings for Multi-User Transcription Server
|
||||
|
||||
# Deny access to data directory
|
||||
<DirectoryMatch "^.*/data/.*$">
|
||||
Require all denied
|
||||
</DirectoryMatch>
|
||||
|
||||
# Deny access to config file directly (if accessed via URL)
|
||||
<Files "config.php">
|
||||
Require all denied
|
||||
</Files>
|
||||
|
||||
# Enable PHP error logging (disable display for production)
|
||||
php_flag display_errors Off
|
||||
php_flag log_errors On
|
||||
|
||||
# Set upload limits
|
||||
php_value upload_max_filesize 1M
|
||||
php_value post_max_size 1M
|
||||
|
||||
# Disable directory listing
|
||||
Options -Indexes
|
||||
|
||||
# Enable compression
|
||||
<IfModule mod_deflate.c>
|
||||
AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css text/javascript application/json
|
||||
</IfModule>
|
||||
|
||||
# Set MIME types
|
||||
AddType application/json .json
|
||||
AddType text/event-stream .php
|
||||
Reference in New Issue
Block a user