public BaseResponseModel Get(int eid) { var e = _services.GetExamTakers(eid); if (e != null) { var list = new List <UserBasicInfo>(); foreach (var uid in e) { var u = _userServices.GetObject(uid.Item1); if (u != null) { list.Add(new UserBasicInfo() { Id = u.Id, Nickname = u.NickName, Avatar = u.Avatar, BanReason = uid.Item2 }); } } return(new GetExamTakersResponseModel() { Code = 0, ExamTakers = list }); } return(ErrorCodes.CreateSimpleResponse(ErrorCodes.ExamNotExist)); }
/// <summary> /// (Used by proctors) /// Called when a proctor joins an exam, send message to exam takers /// </summary> /// <param name="examId"></param> public async Task ProctorJoin(string examId) { var examTakers = _examServices.GetExamTakers(int.Parse(examId)).Select(x => x.Item1); if (examTakers != null) { foreach (var taker in examTakers) { await Clients.User(taker).SendAsync("ProctorConnected", Context.UserIdentifier); } } }