Änderungen:
- Implementierung des neuen Routers für TaxiHighscore zur Verwaltung von Highscore-Daten.
- Anpassung der Datenbankmodelle zur Unterstützung von TaxiHighscore-Associations.
- Erweiterung der Vue-Komponenten zur Anzeige und Speicherung von Highscores im Taxi-Spiel.
- Verbesserung der Statusanzeige im AppHeader zur besseren Benutzerinteraktion.
Diese Anpassungen erweitern die Spielmechanik und Benutzererfahrung, indem sie die Verwaltung von Highscores integrieren und die Benutzeroberfläche optimieren.
Änderungen:
- Entfernen von Konsolenausgaben zur Verbesserung der Codequalität und Reduzierung von Debugging-Informationen in der Produktionsumgebung.
- Anpassung der Fehlerbehandlung in der fetchStatus-Methode, um die Lesbarkeit zu erhöhen und die Fehlerprotokollierung zu vereinfachen.
- Verbesserung der Socket.io- und Daemon-WebSocket-Verbindungslogik zur Unterstützung lokaler Entwicklungsumgebungen.
Diese Anpassungen erhöhen die Effizienz und Benutzerfreundlichkeit der Anwendung, indem sie die Codebasis bereinigen und die Fehlerbehandlung optimieren.
Änderungen:
- Erweiterung der Logik zur Erkennung der Browsersprache in main.js und im Store, um auch spezifische deutsche Dialekte und Länder zu berücksichtigen.
- Implementierung einer Überwachung der Sprachänderungen im Store, die die i18n-Konfiguration entsprechend aktualisiert.
Diese Anpassungen verbessern die Benutzererfahrung durch präzisere Sprachenerkennung und dynamische Anpassung der Sprache in der Anwendung.
Änderungen:
- Hinzufügung eines Verbindungsstatus-Indicators in der AppHeader.vue, der den aktuellen Verbindungsstatus anzeigt.
- Erweiterung der MultiChatDialog.vue um verbesserte Netzwerkereignisbehandlungen und eine Herzschlag-Logik zur Aufrechterhaltung der WebSocket-Verbindung.
- Anpassungen im Store zur Verwaltung des Verbindungsstatus und zur Implementierung von Wiederverbindungslogik mit exponentiellem Backoff.
- Diese Anpassungen verbessern die Benutzererfahrung durch klare Statusanzeigen und erhöhen die Stabilität der WebSocket-Verbindungen.
Änderungen:
- Die Logik zur Übertragung der Benutzer-ID an den Socket wurde aktualisiert, um die Verwendung von `hashedId` zu unterstützen.
- In `BranchView.vue` wurde die Socket-Verbindung um zusätzliche Live-Events erweitert und die Handhabung der Socket-Events optimiert.
- Protokollausgaben wurden hinzugefügt, um die Nachverfolgbarkeit der Socket-Interaktionen zu verbessern.
Diese Anpassungen erhöhen die Flexibilität und Robustheit der Socket.io-Integration in der Anwendung.
Änderungen:
- Eine neue Umgebungsvariable `VITE_SOCKET_IO_URL` wurde zur .env.server-Datei hinzugefügt, um die Socket.io-URL zu definieren.
- Die Logik zur Initialisierung der Socket.io-Verbindung wurde aktualisiert, um die neue Umgebungsvariable zu verwenden und einen Fallback auf die API-URL zu implementieren.
- Der Transportmodus für die Socket.io-Verbindung wurde auf 'websocket' und 'polling' erweitert.
Diese Anpassungen verbessern die Flexibilität der Socket.io-Verbindung und ermöglichen eine bessere Handhabung der Umgebungsvariablen.
Änderungen:
- Die Umgebungsvariablen für die API-URLs wurden auf lokale Adressen geändert, um die Entwicklung zu erleichtern.
- Der Socket.io-Verbindungsaufbau wurde angepasst, um nur das 'polling'-Transportprotokoll zu verwenden.
Diese Anpassungen verbessern die lokale Entwicklungsumgebung und vereinfachen die Verbindung zu den WebSocket-Diensten.
Änderungen:
- Der Verbindungsaufbau des Daemon WebSockets wurde angepasst, um zuerst mit einem spezifischen Subprotokoll zu versuchen und bei Misserfolg auf eine Verbindung ohne Subprotokoll zurückzugreifen.
- Zusätzliche Protokollausgaben wurden hinzugefügt, um den Verbindungsstatus und Fehlerdetails besser nachzuvollziehen.
Diese Anpassungen erhöhen die Robustheit der WebSocket-Verbindung und verbessern die Fehlerdiagnose.
Änderungen:
- Die WebSocket-URLs für Daemon und Chat wurden aktualisiert, um spezifische Ports zu verwenden.
- Der Daemon WebSocket wird nun mit dem Protokoll 'wss' initialisiert und verwendet das 'yourpart-protocol'.
Diese Anpassungen verbessern die Verbindungsstabilität und die Protokollierung der WebSocket-Interaktionen.
Änderungen:
- Der Daemon WebSocket-URL wurde von 'wss' auf 'ws' geändert, um die Verbindung zu optimieren.
- Der WebSocket wird nun ohne spezifisches Protokoll initialisiert, um Tests zu erleichtern.
- Zusätzliche Protokollausgaben wurden hinzugefügt, um Browserinformationen bei Verbindungsfehlern zu dokumentieren.
Diese Anpassungen verbessern die Fehlerdiagnose und die Flexibilität der WebSocket-Verbindung.
Änderungen:
- Der Daemon WebSocket wurde aus der Anwendung entfernt, um die Komplexität zu reduzieren und die Stabilität zu erhöhen.
- Die Event-Verarbeitung in StatusBar.vue und BranchView.vue wurde aktualisiert, um Socket.io für die Registrierung und Verarbeitung von Live-Events zu verwenden.
- Protokollausgaben wurden hinzugefügt, um den Empfang und die Verarbeitung von Events zu dokumentieren.
Diese Anpassungen verbessern die Nachvollziehbarkeit der Event-Verarbeitung und vereinfachen die Codebasis.
Änderung:
- Der Daemon WebSocket wurde aufgrund von CORS- und Protokollproblemen deaktiviert.
- Alle WebSocket-Interaktionen wurden auf Socket.io umgestellt, um die Funktionalität weiterhin zu gewährleisten.
- Entsprechende Protokollausgaben wurden hinzugefügt, um den Status der Deaktivierung zu dokumentieren.
Diese Anpassung verbessert die Stabilität der Anwendung und sorgt für eine konsistente Handhabung von WebSocket-Events.
Änderung:
- In der Klasse FalukantController wurden Protokollausgaben hinzugefügt, um die Aufrufe der Methoden getDirectorProposals und getGifts zu verfolgen.
- In der Klasse FalukantService wurde eine Protokollausgabe hinzugefügt, um die Aufrufe der Methode getFalukantUserByHashedId zu dokumentieren und das Ergebnis zu protokollieren.
Diese Anpassung verbessert die Nachvollziehbarkeit der Methodenaufrufe und erleichtert die Fehlersuche im Backend.
Änderung:
- Die WebSocket-Verbindung zum Daemon verwendet nun zuerst das 'yourpart-protocol' und versucht bei einem Protokollfehler eine Verbindung ohne Protokoll.
- Es wurde eine Retry-Logik mit exponentiellem Backoff hinzugefügt, um die Verbindung bei Fehlern stabiler zu gestalten.
- Zusätzliche Protokollausgaben für Fehler- und Verbindungsdetails wurden implementiert, um die Fehlersuche zu erleichtern.
Diese Anpassung verbessert die Zuverlässigkeit der WebSocket-Verbindung und die Fehlerdiagnose.
Änderung:
- Die WebSocket-Verbindung verwendet jetzt die Variable `daemonUrl`, die entweder den Wert von `VITE_DAEMON_SOCKET` oder einen Standardwert hat. Dies verbessert die Flexibilität und stellt sicher, dass die Verbindung auch bei fehlender Umgebungsvariable funktioniert.
Diese Anpassung sorgt dafür, dass die WebSocket-Verbindung stabiler und zuverlässiger ist.
Problem:
- Frontend versuchte native WebSocket-Verbindung zu /ws/ aufzubauen
- Backend hat nur Socket.io, keine native WebSocket-Unterstützung für /ws/
Lösung:
- Daemon WebSocket verwendet jetzt Socket.io statt native WebSocket
- Beide Verbindungen (Socket.io und Daemon) verwenden jetzt Socket.io
- Event-Handler von WebSocket auf Socket.io umgestellt
Dies löst die WebSocket-Verbindungsfehler, da der Backend-Server
nur Socket.io unterstützt, keine nativen WebSockets.
Apache-Konfiguration:
- Füge WebSocket-Proxy für /ws/ Pfad hinzu
- Leite WebSocket-Upgrade-Header korrekt weiter
Frontend-Konfiguration:
- Socket.io verwendet jetzt VITE_API_BASE_URL (über /socket.io/ Proxy)
- Daemon WebSocket verwendet wss://www.your-part.de/ws
- Chat WebSocket verwendet wss://www.your-part.de/ws
Dies löst die 'operation is insecure' Fehler und ermöglicht
WebSocket-Verbindungen über HTTPS.
- Hinzufügen von Konsolenprotokollen zur Überwachung der Verbindungsstatus für Socket.io und WebSocket.
- Fehlerbehandlung für Verbindungsfehler und -abbrüche verbessert.
- Sicherstellen, dass die Verbindungsversuche bei Fehlern korrekt behandelt werden.
- Änderung der Socket-URL von VITE_API_BASE_URL zu VITE_DAEMON_SOCKET zur Verbesserung der Sicherheit.
- Setzen von 'secure' auf true, um eine sichere Verbindung zu gewährleisten.
- Hinzufügen von Optionen für die WebSocket-Verbindung, um die Sicherheit und die Transportmethoden zu verbessern.
- Setzen von 'secure' auf false und Festlegen der Transports auf 'websocket' und 'polling'.
- Hinzufügen des neuen Typs PoliticalOfficeBenefitType zur Initialisierung von politischen Amtsvorteilen.
- Implementierung der Methode initializePoliticalOfficeBenefitTypes zur Verwaltung dieser neuen Typen.
- Anpassungen an der Match3Game-Komponente zur Unterstützung von Power-Up-Animationen, einschließlich Explosionseffekten, Raketenflügen und Regenbogenanimationen.
- Verbesserung der Benutzeroberfläche durch neue Animationen und visuelle Effekte für spezielle Items im Spiel.