public async Task <IActionResult> AddPlayerAsync(string lobbyId, string playerId, CancellationToken cancellationToken)
        {
            var player = await _playerService.GetAsync(playerId, cancellationToken);

            if (player == null)
            {
                return(BadRequest());
            }
            await _lobbyService.AddPlayerAsync(lobbyId, player, cancellationToken);

            return(NoContent());
        }
예제 #2
0
        public override async Task OnConnectedAsync()
        {
            await base.OnConnectedAsync();

            var lobbyId  = GetLobbyId();
            var playerId = GetUserId();
            await Groups.AddToGroupAsync(
                Context.ConnectionId,
                lobbyId
                );

            var player = await _playerService.GetAsync(playerId);

            await _lobbyService.AddPlayerAsync(lobbyId, player);

            await Clients.Caller.SendAsync(
                LOBBY_UPDATED,
                await _lobbyService.GetAsync(lobbyId)
                );
        }