// TODO? [Authorize] public async Task CreateRoom(CreateRoomRequest request) { try { var room = await _roomService.CreateRoom(request.GameTypeID); var response = _hubService.CreateGame(Context.ConnectionId, room, request); if (response.GetType() == typeof(HubErrorResponse)) { await SendErrorResponseToCaller((HubErrorResponse)response); return; } var successResponse = (HubSuccessResponse)response; var data = (CreateRoomResponse)successResponse.Data; await Groups.AddToGroupAsync(Context.ConnectionId, data.Player.GroupName); await SendSuccessResponseToCaller(successResponse); } catch (Exception ex) { await SendErrorResponseToCaller(new HubErrorResponse { Message = ex.Message, Method = "CreateRoom" }); } }