void _sessionManager_SessionStarted(object sender, SessionEventArgs e) { var session = e.SessionInfo; if (!string.IsNullOrEmpty(session.Client) && !string.IsNullOrEmpty(session.DeviceName) && !string.IsNullOrEmpty(session.DeviceId) && !string.IsNullOrEmpty(session.ApplicationVersion)) { var keys = new List<string> { session.Client, session.DeviceName, session.DeviceId, session.ApplicationVersion }; var key = string.Join("_", keys.ToArray()).GetMD5(); _apps.GetOrAdd(key, guid => GetNewClientInfo(session)); } }
void _sessionManager_SessionStarted(object sender, SessionEventArgs e) { string name; var session = e.SessionInfo; if (string.IsNullOrWhiteSpace(session.UserName)) { name = string.Format(_localization.GetLocalizedString("DeviceOnlineWithName"), session.DeviceName); // Causing too much spam for now return; } else { name = string.Format(_localization.GetLocalizedString("UserOnlineFromDevice"), session.UserName, session.DeviceName); } CreateLogEntry(new ActivityLogEntry { Name = name, Type = "SessionStarted", ShortOverview = string.Format(_localization.GetLocalizedString("LabelIpAddressValue"), session.RemoteEndPoint), UserId = session.UserId.HasValue ? session.UserId.Value.ToString("N") : null }); }