Major fixes: - Integrated ServerSyncClient into GUI for actual multi-user sync - Fixed CUDA device display to show actual hardware used - Optimized server sync with parallel HTTP requests (5x faster) - Fixed 2-second DNS delay by using 127.0.0.1 instead of localhost - Added comprehensive debugging and performance logging Performance improvements: - HTTP requests: 2045ms → 52ms (97% faster) - Multi-user sync lag: ~4s → ~100ms (97% faster) - Parallel request processing with ThreadPoolExecutor (3 workers) New features: - Room generator with one-click copy on Node.js landing page - Auto-detection of PHP vs Node.js server types - Localhost warning banner for WSL2 users - Comprehensive debug logging throughout sync pipeline Files modified: - gui/main_window_qt.py - Server sync integration, device display fix - client/server_sync.py - Parallel HTTP, server type detection - server/nodejs/server.js - Room generator, warnings, debug logs Documentation added: - PERFORMANCE_FIX.md - Server sync optimization details - FIX_2_SECOND_HTTP_DELAY.md - DNS/localhost issue solution - LATENCY_GUIDE.md - Audio chunk duration tuning guide - DEBUG_4_SECOND_LAG.md - Comprehensive debugging guide - SESSION_SUMMARY.md - Complete session summary 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
45 lines
1.1 KiB
Bash
Executable File
45 lines
1.1 KiB
Bash
Executable File
#!/bin/bash
|
|
# Test server sync timing
|
|
|
|
SERVER_URL="${1:-http://localhost:3000/api/send}"
|
|
ROOM="${2:-test}"
|
|
PASSPHRASE="${3:-test}"
|
|
|
|
echo "Testing server sync timing..."
|
|
echo "Server: $SERVER_URL"
|
|
echo "Room: $ROOM"
|
|
echo ""
|
|
|
|
for i in {1..5}; do
|
|
START=$(date +%s%N)
|
|
|
|
RESPONSE=$(curl -s -w "\n%{http_code}\n%{time_total}" -X POST "$SERVER_URL" \
|
|
-H "Content-Type: application/json" \
|
|
-d "{
|
|
\"room\": \"$ROOM\",
|
|
\"passphrase\": \"$PASSPHRASE\",
|
|
\"user_name\": \"TestUser\",
|
|
\"text\": \"Test message $i at $(date +%H:%M:%S)\",
|
|
\"timestamp\": \"$(date +%H:%M:%S)\"
|
|
}")
|
|
|
|
HTTP_CODE=$(echo "$RESPONSE" | tail -n2 | head -n1)
|
|
TIME_TOTAL=$(echo "$RESPONSE" | tail -n1)
|
|
|
|
END=$(date +%s%N)
|
|
DURATION=$(echo "scale=0; ($END - $START) / 1000000" | bc)
|
|
|
|
if [ "$HTTP_CODE" = "200" ]; then
|
|
echo "✓ Message $i: ${DURATION}ms (curl reports: ${TIME_TOTAL}s)"
|
|
else
|
|
echo "✗ Message $i: HTTP $HTTP_CODE"
|
|
echo "$RESPONSE" | head -n1
|
|
fi
|
|
|
|
sleep 0.2
|
|
done
|
|
|
|
echo ""
|
|
echo "All 5 messages sent. Check display at:"
|
|
echo "http://localhost:3000/display?room=$ROOM"
|