Skip to content

Commit 63476f7

Browse files
committed
Add ping mechanism
1 parent b3d415a commit 63476f7

File tree

2 files changed

+13
-2
lines changed

2 files changed

+13
-2
lines changed

RLBotCS/Main.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
if (args.Length > 0 && args[0] == "--version")
1111
{
1212
Console.WriteLine(
13-
"RLBotServer v5.beta.7.10\n"
13+
"RLBotServer v5.beta.7.11\n"
1414
+ $"Bridge {BridgeVersion.Version}\n"
1515
+ "@ https://www.rlbot.org & https://github.com/RLBot/core"
1616
);

RLBotCS/Server/FlatBuffersSession.cs

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,8 @@ public readonly record struct DistributeBallPrediction(BallPredictionT BallPredi
3636
public readonly record struct StopMatch(bool Force) : SessionMessage;
3737

3838
public readonly record struct UpdateRendering(RenderingStatus Status) : SessionMessage;
39+
40+
public readonly record struct PingResponse() : SessionMessage;
3941
}
4042

4143
class FlatBuffersSession
@@ -306,12 +308,16 @@ await _bridge.WriteAsync(
306308

307309
var desiredGameState = msg.MessageAsDesiredGameState().UnPack();
308310
await _bridge.WriteAsync(new SetGameState(desiredGameState));
309-
310311
break;
312+
311313
case InterfaceMessage.RenderingStatus:
312314
var renderingStatus = msg.MessageAsRenderingStatus();
313315
await _rlbotServer.WriteAsync(new UpdateRendering(renderingStatus));
314316
break;
317+
318+
case InterfaceMessage.PingRequest:
319+
_incomingMessages.Writer.TryWrite(new SessionMessage.PingResponse());
320+
break;
315321
}
316322

317323
return true;
@@ -427,6 +433,11 @@ private async Task HandleInternalMessages()
427433
}
428434
}
429435
break;
436+
case SessionMessage.PingResponse m:
437+
SendPayloadToClient(
438+
CoreMessageUnion.FromPingResponse(new PingResponseT())
439+
);
440+
break;
430441
}
431442
}
432443

0 commit comments

Comments
 (0)