public override Task <SensorsUpdateMessage> GetMonitoringUpdates(Empty request, ServerCallContext context) { var httpContext = context.GetHttpContext(); //User user = _userManager.GetUserByCertificateThumbprint(httpContext.Connection.ClientCertificate.Thumbprint); var updatesList = _monitoringCore.GetSensorUpdates(httpContext.User as User); return(Task.FromResult(Convert(updatesList))); }
private void Timer_Tick(object state) { var dictionary = _sessionsManager.UserConnectionDictionary; foreach (var pair in dictionary) { var updates = _monitoringCore.GetSensorUpdates(pair.Key); if (updates.Count < 1) { continue; } _monitoringDataHubContext.Clients.Client(pair.Value) .SendAsync(nameof(IMonitoringDataHub.SendSensorUpdates), updates); } }