Commit Graph

6 Commits

Author SHA1 Message Date
Torsten Schulz (local)
6b49fff85e Verbessere SSLServer-Fehlerbehandlung und füge Verzögerung beim Start hinzu
- Ergänze eine Fehlerbehandlung im SSLServer-Thread, um Ausnahmen zu protokollieren, anstatt sie auszulösen.
- Modifiziere die `startServer`-Methode, um bei einem Fehler beim Erstellen des LWS-Kontexts eine Fehlermeldung auszugeben und den Server ordnungsgemäß zu stoppen.
- Füge eine Verzögerung von 100 Millisekunden in `main.cpp` hinzu, um dem SSL-Server Zeit zum Initialisieren zu geben.
2025-09-04 14:47:27 +02:00
Torsten Schulz (local)
2c6901f989 Verbessere Shutdown-Logik und Ressourcenbereinigung in Server- und ChatRoom-Klassen
- Implementiere eine ordnungsgemäße Bereinigung von Server- und ChatRoom-Ressourcen beim Herunterfahren.
- Aktualisiere die Destruktoren in `ChatRoom` und `Server`, um sicherzustellen, dass alle Benutzer-Threads gestoppt und aufgeräumt werden.
- Füge Überprüfungen hinzu, um doppelte Stop-Vorgänge zu vermeiden und die Stabilität zu erhöhen.
- Optimiere die Logging-Ausgaben für den Server-Stopp-Prozess zur besseren Nachverfolgbarkeit.
2025-09-04 14:32:12 +02:00
Torsten Schulz (local)
8d0d1bc187 Implementiere sanften Shutdown und verbessere Server-Stopp-Logik
- Füge Signalhandler in `main.cpp` hinzu, um einen sanften Shutdown bei SIGINT und SIGTERM zu ermöglichen.
- Aktualisiere die `Server`- und `SSLServer`-Klassen, um die Stopp-Logik zu verbessern und Threads ordnungsgemäß zu beenden.
- Optimiere die Timeout-Werte in der `run`-Methode für eine schnellere Reaktion auf Shutdown-Signale.
- Ergänze Logging für den Server-Stopp-Prozess zur besseren Nachverfolgbarkeit.
2025-09-04 14:22:01 +02:00
Torsten Schulz (local)
b394b5d8a1 Füge SSLServer-Klasse hinzu und verbessere SSL/TLS-Unterstützung
- Integriere die `SSLServer`-Klasse zur Handhabung von SSL/TLS-Verbindungen.
- Aktualisiere `main.cpp`, um die SSL-Server-Instanz zu erstellen und zu starten, wenn SSL aktiviert ist.
- Modifiziere die `handleWebSocketMessage`-Methode in `ssl_server.cpp`, um die Benutzerverwaltung zu optimieren.
- Ergänze die `generateToken`-Methode in `base.cpp`, um Token für Benutzer zu generieren.
- Aktualisiere die Header-Dateien, um neue Methoden und Klassen zu berücksichtigen.
2025-09-04 12:21:52 +02:00
Torsten Schulz (local)
d619d70a76 Füge Unterstützung für SSL/TLS in die Konfiguration und das Build-System ein
- Integriere die libwebsockets-Bibliothek für SSL/TLS WebSocket-Unterstützung in `CMakeLists.txt`.
- Aktualisiere `chatconfig.json`, um SSL-Optionen wie `ssl_enabled`, `ssl_cert_path` und `ssl_key_path` hinzuzufügen.
- Ergänze das `deploy.sh`-Skript um einen Schritt zur optionalen Einrichtung von SSL/TLS.
- Modifiziere `update_config.sh`, um die SSL-Konfiguration in die Servereinstellungen zu integrieren.
- Implementiere eine Überprüfung in `main.cpp`, um den SSL-Status zu prüfen und entsprechende Meldungen auszugeben.
2025-09-04 12:05:22 +02:00
Torsten Schulz (local)
864d86aa09 Refactor chat system: Introduce ChatRoom and ChatUser classes
- Created ChatRoom class to manage chat room functionalities, including user management, message handling, and game mechanics.
- Developed ChatUser class to represent individual users, handling user-specific actions and interactions within chat rooms.
- Implemented a Config class for loading configuration settings from a JSON file.
- Established a Server class to manage connections, handle requests, and facilitate communication between users and chat rooms.
- Introduced a Database class for database interactions, utilizing PostgreSQL for user and room data management.
- Added utility functions in the Base class for JSON handling and socket communication.
- Created Object classes for Room and User to encapsulate their properties and behaviors.
- Updated main function to initialize server and load chat rooms from configuration.
2025-08-11 16:07:15 +02:00