示例#1
0
        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);
            }
        }
示例#2
0
 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());
 }