Poprawiono error handling socketów

This commit is contained in:
2022-07-06 15:14:24 +02:00
parent 2f4a65be07
commit 1530cf52af
4 changed files with 17 additions and 2 deletions
+8
View File
@@ -204,10 +204,18 @@ export default defineComponent({
deep: true,
handler(statuses: StoreState['dataStatuses']) {
const connectionStatus = statuses.connection;
const sceneryDataStatus = statuses.sceneries;
const trainsDataStatus = statuses.trains;
const dispatcherDataStatus = statuses.dispatchers;
if (connectionStatus == DataStatus.Error) {
this.setSignalStatus(connectionStatus);
this.indicator.status = connectionStatus;
this.indicator.message = 'data-status.S1a-connection';
return;
}
if (sceneryDataStatus == DataStatus.Error) {
this.setSignalStatus(sceneryDataStatus);
this.indicator.status = sceneryDataStatus;
+1 -1
View File
@@ -11,7 +11,7 @@
"migration-confirm": "Roger that!"
},
"data-status": {
"S1a-connection": "<b>S1a signal</b> <br> Cannot connect with SWDR API service!",
"S1a-connection": "<b>S1a signal</b> <br> Cannot connect with Stacjownik API service!",
"S1a-sceneries": "<b>S1a signal</b> <br> Cannot load online stations data!",
"S2": "<b>S2 signal</b> <br> All data loaded successfully!",
"S3": "<b>S3 signal</b> <br> Loading data...",
+1 -1
View File
@@ -12,7 +12,7 @@
},
"data-status": {
"S1a-connection": "<b>Sygnał S1a</b> <br> Błąd podczas próby połączenia się z serwisem SWDR!",
"S1a-connection": "<b>Sygnał S1a</b> <br> Błąd podczas próby połączenia się z API Stacjownika!",
"S1a-sceneries": "<b>Sygnał S1a</b> <br> Błąd podczas pobierania danych o sceneriach online!",
"S2": "<b>Sygnał S2</b> <br> Pomyślnie załadowano dane!",
"S3": "<b>Sygnał S3</b> <br> Pobieranie danych...",
+7
View File
@@ -334,6 +334,12 @@ export const useStore = defineStore('store', {
transports: ['websocket', 'polling'],
rememberUpgrade: true,
reconnection: true,
timeout: 10000
});
socket.on('connect_error', (err) => {
this.dataStatuses.connection = DataStatus.Error;
this.webSocket = undefined;
});
socket.on('UPDATE', (data: APIData) => {
@@ -347,6 +353,7 @@ export const useStore = defineStore('store', {
});
this.webSocket = socket;
this.dataStatuses.connection = DataStatus.Loaded;
},
async connectToAPI() {