Implementiere Benutzerverbindungskontrolle und verbessere Nachrichtenverwaltung

- Füge die Methode `removeUserDisconnected` in der ChatRoom-Klasse hinzu, um Benutzer bei Verbindungsabbrüchen zu entfernen und entsprechende Nachrichten zu senden.
- Aktualisiere die ChatUser-Klasse, um einen Token-Getter bereitzustellen und die Verbindungsprüfung zu optimieren.
- Ändere die Server-Klasse, um die Benutzerverwaltung bei Raumwechseln zu verbessern und Debug-Informationen hinzuzufügen.
- Optimiere die Socket-Optionen für eine schnellere Fehlererkennung und verbessere die Handhabung von Anfragen.
This commit is contained in:
Torsten Schulz (local)
2025-09-01 15:30:19 +02:00
parent 7338f1a740
commit d92c40748e
12 changed files with 868 additions and 33 deletions

67
deploy/deploy.sh Executable file
View File

@@ -0,0 +1,67 @@
#!/bin/bash
# YourChat Haupt-Deploy Script
# Führt alle Deploy-Schritte automatisch aus
set -e # Beende bei Fehlern
echo "=== YourChat - Vollständiges Deployment Script ==="
echo "Dieses Script führt alle Deploy-Schritte automatisch aus."
echo ""
# Prüfe ob wir im richtigen Verzeichnis sind
if [ ! -f "CMakeLists.txt" ]; then
echo "Fehler: CMakeLists.txt nicht gefunden. Bitte im YourChat-Root-Verzeichnis ausführen."
exit 1
fi
# Prüfe ob deploy-Verzeichnis existiert
if [ ! -d "deploy" ]; then
echo "Fehler: deploy-Verzeichnis nicht gefunden."
exit 1
fi
echo "=== Schritt 1: Abhängigkeiten installieren ==="
echo "Führe install_dependencies.sh aus..."
./deploy/install_dependencies.sh
echo ""
echo "=== Schritt 2: Anwendung bauen ==="
echo "Führe build.sh aus..."
./deploy/build.sh
echo ""
echo "=== Schritt 3: Anwendung installieren ==="
echo "Führe install.sh aus..."
./deploy/install.sh
echo ""
echo "=== Schritt 4: Konfiguration aktualisieren ==="
echo "Führe update_config.sh aus..."
./deploy/update_config.sh
echo ""
echo "=== Deployment abgeschlossen! ==="
echo ""
echo "=== Nächste Schritte: ==="
echo "1. Konfiguration anpassen (falls nötig):"
echo " sudo nano /opt/yourchat/config/chatconfig.json"
echo ""
echo "2. Service starten:"
echo " sudo systemctl start yourchat"
echo ""
echo "3. Status prüfen:"
echo " sudo systemctl status yourchat"
echo ""
echo "4. Logs anzeigen:"
echo " sudo journalctl -u yourchat -f"
echo ""
echo "5. Firewall konfigurieren (falls nötig):"
echo " sudo ufw allow 1235/tcp"
echo ""
echo "=== Nützliche Befehle: ==="
echo "- Service stoppen: sudo systemctl stop yourchat"
echo "- Service neu starten: sudo systemctl restart yourchat"
echo "- Service deaktivieren: sudo systemctl disable yourchat"
echo "- Logs anzeigen: sudo journalctl -u yourchat -f"
echo "- Konfiguration bearbeiten: sudo nano /opt/yourchat/config/chatconfig.json"