/// <summary> /// 发起会话 /// </summary> /// <param name="user"></param> /// <returns></returns> public async Task <CreateResult> Create(OnlineUserViewModel user) { if (!user.IsValid()) { } user.ConnectionId = Context.ConnectionId; // 创建一个会议室 var room = await _meetingRoomManager.CreateAsync(user.Nickname); if (room == null) { return(new CreateResult(null, false, "创建失败,请重试!")); } // 加入到在线会议室列表中 var onlineRoom = _onlineMeetingRoomManager.GetOrCreate(room.SessionCode); var participant = _mapper.Map <OnlineUserViewModel, Participant>(user); onlineRoom.Join(participant); _onlineMeetingRoomManager.AddOrUpdate(room.SessionCode, onlineRoom); // 把创建者加入到会议室中 await Groups.AddToGroupAsync(user.ConnectionId, room.SessionCode); return(new CreateResult(room.SessionCode)); }
public JsonResult GetOnlineUserList(PagerInfo pageInfo) { return(ExecuteFunctionRun(() => { DataTable dt = AppUtility.OnlineUserTable; int total = dt.Rows.Count; int startIndex = pageInfo.StartIndex - 1; int endIndex = pageInfo.EndIndex >= total ? total : pageInfo.EndIndex; List <OnlineUserViewModel> list = new List <OnlineUserViewModel>(); for (int i = startIndex; i < endIndex; i++) { OnlineUserViewModel model = new OnlineUserViewModel() { UserID = dt.Rows[i]["UserID"].ToString(), UserName = dt.Rows[i]["UserAlias"].ToString(), LoginTime = dt.Rows[i]["LoginTime"].ToString() }; list.Add(model); } var gridData = new { Rows = list, Total = total }; return Json(gridData, JsonRequestBehavior.AllowGet); })); }
public static OnlineUser ToEntity(this OnlineUserViewModel entity) { return(entity.MapTo <OnlineUserViewModel, OnlineUser>()); }
public void SaveUserOnlineStatus(OnlineUserViewModel objentity) { _httpClient.PostData("User/SaveUserOnlineStatus", objentity); }