live player info in client
This commit is contained in:
parent
fb675e59ff
commit
a50a9770c9
14 changed files with 193 additions and 70 deletions
|
@ -2,22 +2,24 @@ namespace TanksServer.Interactivity;
|
|||
|
||||
internal abstract class WebsocketServerConnection(
|
||||
ILogger logger,
|
||||
ByteChannelWebSocket socket)
|
||||
ByteChannelWebSocket socket
|
||||
)
|
||||
{
|
||||
protected readonly ByteChannelWebSocket Socket = socket;
|
||||
protected readonly ILogger Logger = logger;
|
||||
|
||||
public Task CloseAsync()
|
||||
{
|
||||
logger.LogDebug("closing connection");
|
||||
Logger.LogDebug("closing connection");
|
||||
return Socket.CloseAsync();
|
||||
}
|
||||
|
||||
public async Task ReceiveAsync()
|
||||
{
|
||||
await foreach (var buffer in Socket.ReadAllAsync())
|
||||
HandleMessage(buffer);
|
||||
logger.LogTrace("done receiving");
|
||||
await HandleMessageAsync(buffer);
|
||||
Logger.LogTrace("done receiving");
|
||||
}
|
||||
|
||||
protected abstract void HandleMessage(Memory<byte> buffer);
|
||||
protected abstract ValueTask HandleMessageAsync(Memory<byte> buffer);
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue