public async Task CreateGroup(string userName) { var id = Context.ConnectionId; var context = Context.GetHttpContext(); var i = context.Request.Path.Value; if (!Users.Any(x => x.ConnectionId == id)) { string group = RoomIdGenerator.GetRoomNumber().ToString(); Users.Add(new User { ConnectionId = id, Name = userName, GroupId = group }); await Groups.AddToGroupAsync(Context.ConnectionId, group).ConfigureAwait(false); } }
public async Task JoinGroup(string group, string userName) { if (RoomIdGenerator.IsRoomCreated(int.Parse(group))) { var id = Context.ConnectionId; var context = Context.GetHttpContext(); var i = context.Request.Path.Value; if (!Users.Any(x => x.ConnectionId == id)) { Users.Add(new User { ConnectionId = id, Name = userName, GroupId = group }); await Groups.AddToGroupAsync(Context.ConnectionId, group).ConfigureAwait(false); } } }
public IActionResult Index() { ViewBag.RoomNumber = RoomIdGenerator.GetCurrentNumber(); return(View()); }