private void loadClientAccess() { try { IAlarmClient alarmClient = _alarmClientManager.GetAlarmClient(EnvironmentManager.Instance.MasterSite.ServerId); EventLine[] events = alarmClient.GetEventLines(0, 10, new VideoOS.Platform.Proxy.Alarm.EventFilter() { Conditions = new Condition[] { new Condition() { Operator = Operator.Equals, Target = Target.Type, Value = "Access Control System Event" } } }); foreach (EventLine line in events) { BaseEvent baseevent = alarmClient.GetEvent(line.Id); AccessControlEvent accessControlEvent = baseevent as AccessControlEvent; if (accessControlEvent != null) { DataGridViewRow row = new DataGridViewRow(); row.Tag = baseevent; string credentialHolderId = ""; string systemId = ""; if (accessControlEvent.RelatedAccessControlCredentialHolderIds != null) { if (accessControlEvent.RelatedAccessControlCredentialHolderIds.Length > 0) { credentialHolderId = accessControlEvent.RelatedAccessControlCredentialHolderIds[0]; } } if (accessControlEvent.AccessControlSystemId != null) { systemId = accessControlEvent.AccessControlSystemId.ToString(); } row.CreateCells( dataGridViewAlarm, baseevent.EventHeader.Type, baseevent.EventHeader.Message, line.Timestamp.ToLocalTime(), line.SourceName, credentialHolderId, systemId); dataGridViewAlarm.Rows.Add(row); } } } catch (Exception ex) { EnvironmentManager.Instance.ExceptionDialog("loading Acces Control System Event", ex); } }
private object NewEventMessageHandler(VideoOS.Platform.Messaging.Message message, FQID destination, FQID sender) { if (InvokeRequired) { Invoke(new MessageReceiver(NewEventMessageHandler), message, destination, sender); } else { DataGridViewRow row = new DataGridViewRow(); var events = message.Data as System.Collections.Generic.IEnumerable <BaseEvent>; if (events == null) { return(null); } foreach (BaseEvent ev in events) { switch (_viewMode) { case ViewMode.Analytics: { AnalyticsEvent analyticsevent = ev as AnalyticsEvent; if (analyticsevent != null) { row.Tag = analyticsevent; String strObjectValue = ""; if (analyticsevent.ObjectList != null && analyticsevent.ObjectList.Count > 0) { strObjectValue = (analyticsevent.ObjectList[0].Name ?? "") + "=" + (analyticsevent.ObjectList[0].Value ?? ""); } row.CreateCells(dataGridViewAlarm, analyticsevent.EventHeader.Type, strObjectValue, analyticsevent.EventHeader.Message, analyticsevent.EventHeader.CustomTag, analyticsevent.EventHeader.Timestamp, analyticsevent.EventHeader.Source.Name); dataGridViewAlarm.Rows.Insert(0, row); } } break; case ViewMode.Event: { row.Tag = ev; row.CreateCells(dataGridViewAlarm, ev.EventHeader.Type, ev.EventHeader.Message, ev.EventHeader.Timestamp, ev.EventHeader.Source.Name); dataGridViewAlarm.Rows.Insert(0, row); } break; case ViewMode.Access: { AccessControlEvent accessControlEvent = ev as AccessControlEvent; if (accessControlEvent != null) { string credentialHolderId = ""; string systemId = ""; if (accessControlEvent.RelatedAccessControlCredentialHolderIds != null) { if (accessControlEvent.RelatedAccessControlCredentialHolderIds.Length > 0) { credentialHolderId = accessControlEvent.RelatedAccessControlCredentialHolderIds[0]; } } if (accessControlEvent.AccessControlSystemId != null) { systemId = accessControlEvent.AccessControlSystemId.ToString(); } row.Tag = ev; row.CreateCells(dataGridViewAlarm, ev.EventHeader.Type, ev.EventHeader.Message, ev.EventHeader.Timestamp, ev.EventHeader.Source.Name, credentialHolderId, systemId); dataGridViewAlarm.Rows.Insert(0, row); } } break; case ViewMode.LPR: { AnalyticsEvent analyticsevent = ev as AnalyticsEvent; if (analyticsevent != null) { row.Tag = analyticsevent; row.CreateCells(dataGridViewAlarm, analyticsevent.EventHeader.Type, analyticsevent.ObjectList[0].Value, analyticsevent.ObjectList[0].Confidence.ToString("F5"), analyticsevent.EventHeader.CustomTag, analyticsevent.EventHeader.Timestamp, analyticsevent.EventHeader.Source.Name); dataGridViewAlarm.Rows.Insert(0, row); } } break; } } } return(null); }