Skip to content

Commit 08d7f38

Browse files
committed
Remove active match from headless if headless has crashed
1 parent 5c3ca40 commit 08d7f38

File tree

2 files changed

+7
-1
lines changed

2 files changed

+7
-1
lines changed

src/services/FikaClientService.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@ import { SaveServer } from "@spt/servers/SaveServer";
88
import { FikaClientModHashesHelper } from "../helpers/FikaClientModHashesHelper";
99
import { IFikaConfigHeadless } from "../models/fika/config/IFikaConfigHeadless";
1010
import { IFikaConfigNatPunchServer } from "../models/fika/config/IFikaConfigNatPunchServer";
11-
import { IFikaConfigServer } from "../models/fika/config/IFikaConfigServer";
1211
import { IFikaCheckModRequestData } from "../models/fika/routes/client/check/IFikaCheckModRequestData";
1312
import { IFikaCheckModResponse, IVersionCheckResponse } from "../models/fika/routes/client/check/IFikaCheckModResponse";
1413
import { FikaConfig } from "../utils/FikaConfig";

src/websockets/FikaHeadlessClientWebSocket.ts

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ import { SPTWebSocket } from "@spt/servers/ws/SPTWebsocket";
77
import { FikaHeadlessHelper } from "../helpers/FikaHeadlessHelper";
88
import { EFikaHeadlessWSMessageTypes } from "../models/enums/EFikaHeadlessWSMessageTypes";
99
import { IFikaHeadlessBase } from "../models/fika/websocket/IFikaHeadlessBase";
10+
import { FikaMatchService } from "../services/FikaMatchService";
1011
import { FikaHeadlessService } from "../services/headless/FikaHeadlessService";
1112

1213
@injectable()
@@ -16,6 +17,7 @@ export class FikaHeadlessClientWebSocket implements IWebSocketConnectionHandler
1617
constructor(
1718
@inject("FikaHeadlessHelper") protected fikaHeadlessHelper: FikaHeadlessHelper,
1819
@inject("FikaHeadlessService") protected fikaHeadlessService: FikaHeadlessService,
20+
@inject("FikaMatchService") protected fikaMatchService: FikaMatchService,
1921
@inject("WinstonLogger") protected logger: ILogger,
2022
) {
2123
// Keep websocket connections alive
@@ -53,6 +55,11 @@ export class FikaHeadlessClientWebSocket implements IWebSocketConnectionHandler
5355
ws.on("message", (msg) => this.onMessage(UserSessionID, msg.toString()));
5456
ws.on("close", (code, reason) => this.onClose(ws, UserSessionID, code, reason));
5557

58+
// Cleanup match if headless has crashed before re-adding it as an available client
59+
if (this.fikaMatchService.getMatchIdByProfile(UserSessionID)) {
60+
this.fikaMatchService.deleteMatch(UserSessionID);
61+
}
62+
5663
this.fikaHeadlessService.addHeadlessClient(UserSessionID, ws);
5764
}
5865

0 commit comments

Comments
 (0)