-- IDL module extracted from ITU-T Q.834.4 (07/2003)

#ifndef __Q834_4_EVENTPUBLISHING_DEFINED #define __Q834_4_EVENTPUBLISHING_DEFINED #include "Q834Common.idl" #pragma prefix "itu.Int" module q834_4 { module EventPublisher { // begin definitions from other idl files - filterable data value types // From Q834Common typedef Q834Common::ManagedEntityIdType ManagedEntityIdType; typedef Q834Common::ManagedEntityIdSeqType ManagedEntityIdSeqType; typedef Q834Common::GeneralizedTimeType GeneralizedTimeType; typedef Q834Common::NameType NameType; typedef Q834Common::NameSeqType NameSeqType; typedef Q834Common::VersionType VersionType; typedef Q834Common::ProceduralStatusSetType ProceduralStatusSetType; typedef Q834Common::PerceivedSeverityType PerceivedSeverityType; typedef Q834Common::OperationalStateType OperationalStateType; typedef Q834Common::AdministrativeStateType AdministrativeStateType; typedef Q834Common::ProbableCauseType ProbableCauseType; // Values defined in Q834Common::ProbableCauseConst typedef Q834Common::NotificationIdentifierType NotificationIdentifierType; typedef Q834Common::NotificationIdentifierSeqType NotificationIdentifierSeqType; typedef Q834Common::UserLabelType UserLabelType; typedef Q834Common::MonitoredParameterType MonitoredParameterType; typedef Q834Common::EquipmentHolderFType EquipmentHolderFType; typedef Q834Common::PlugInUnitFType PlugInUnitFType; typedef Q834Common::UsageStateType UsageStateType; typedef Q834Common::ControlStatusSetType ControlStatusSetType; typedef Q834Common::SpecificProblemSetType SpecificProblemSetType; typedef Q834Common::BackedUpStatusType BackedUpStatusType; typedef Q834Common::AttributeChangeSetType AttributeChangeSetType; typedef Q834Common::SecurityAlarmCauseType SecurityAlarmCauseType; typedef Q834Common::TrackingObjectIdType TrackingObjectIdType; // End definitions from other idl files // Local data types typedef NotificationIdentifierSeqType CorrelatedNotificationType; typedef AttributeChangeSetType StateChangeDefinitionType; struct ThresholdInfoType { MonitoredParameterType monitoredParameter; unsigned long long observedValue; unsigned long long thresholdValueLow; unsigned long long thresholdValueHigh; }; /* Values for monitoredParameter are provided in Q834Common::MonitoringParameter. Currently only counters are supported for performance or traffic monitoring in BPON technology, consequently observedValue, and thresholdValueHigh are restricted to non-negative integer values, and thresholdValueLow is 0. */ typedef unsigned short EquipmentType; enum ServiceAffectingType { serviceAffecting, nonServiceAffecting, unableToDetermine }; //End local data type definitions // Local exceptions // End local exceptions interface AlarmEventSupplier : itut_x780::ManagedObject { /* Structured event fixed header mappings: domain_type is set to "telecommunications", type_name is set to "Alarm", and event_name is set to one of the following constant strings provided below. */ const string communicationAlarm = "CommunicationAlarm"; const string equipmentAlarm = "EquipmentAlarm"; const string environmentalAlarm = "EnvironmentalAlarm"; const string processingErrorAlarm = "ProcessingErrorAlarm"; const string qualityOfServiceAlarm = "QualityOfServiceAlarm"; /* Filterable data names for populating the filterable event body in the structured event are listed in order below. */ const string alarmEmittingMEId = "AlarmEmittingMEId"; const string eventTime = "EventTime"; const string probableCause = "ProbableCause"; const string specificProblems = "SpecificProblems"; const string perceivedSeverity = "PerceivedSeverity"; const string backUpStatus = "BackUpStatus"; const string backUpManagedEntityId = "BackUpManagedEntityId"; const string thresholdInfo = "ThresholdInfo"; const string notificationIdentifier = "NotificationIdentifier"; const string correlatedNotifications = "CorrelatedNotifications"; const string stateChangeDefinition = "StateChangeDefinition"; const string monitoredAttributes = "MonitoredAttributes"; const string additionalText = "AdditionalText"; const string serviceAffectingInd = "ServiceAffectingInd"; /* Remaining filterable data values. /* Names for State and Status Variables for StateChangeDefinition */ const string administrativeState = "AdministrativeState"; const string operationalState = "OperationalState"; const string usageState = "UsageState"; const string availabilityStatus = "AvailabilityStatus"; const string proceduralStatus = "ProceduralStatus"; const string controlStatus = "ControlStatus"; const string alarmStatus = "AlarmStatus"; /* Mapping to filterable data within the structured event is provided below for communication alarm, equipment alarm, processing error alarm, environmental alarm, and quality of service alarm. { {"AlarmEmittingMEId", any (ManagedEntityIdType)}, {"EventTime", any (GeneralizedTimeType)}, {"ProbableCause", any (ProbableCauseType)}, {"SpecificProblems", any (SpecificProblemSetType)}, {"PerceivedSeverity", any (PerceivedSeverityType)}, {"ServiceAffectingInd", any (ServiceAffectingType)}, {"BackUpStatus", any (BackedUpStatusType)}, {"BackUpManagedEntityId", any (ManagedEntityIdType)}, {"ThresholdInfo", any (ThresholdInfoType)}, {"NotificationIdentifier", any (NotificationIdentifierType)}, {"CorrelatedNotifications", any (CorrelatedNotificationType)}, {"StateChangeDefinition", any (StateChangeDefinitionType)}, {"AdditionalText", any (string)} } */ }; // interface AlarmEventSupplier interface SecurityEventSupplier : itut_x780::ManagedObject { /* Structured event fixed header mappings: domain_type is set to "telecommunications", type_name is set to "SecurityEvent", and event_name is set to one of the following constant strings provided below. */ const string integrityViolation = "IntegrityViolation"; const string operationalViolation = "OperationalViolation"; const string physicalViolation = "PhysicalViolation"; const string securityEventViolation = "SecurityEventViolation"; const string timeDomainViolation = "TimeDomainViolation"; const string eventEmittingMEId = "EventEmittingMEId"; const string eventTime = "EventTime"; const string securityAlarmCause = "SecurityAlarmCause"; const string securityAlarmDetector = "SecurityAlarmDetector"; const string serviceUser = "ServiceUser"; const string serviceProvider = "ServiceProvider"; const string securityEventNotificationIdentifier = "NotificationIdentifier"; const string correlatedNotifications = "CorrelatedNotifications"; const string additionalText = "AdditionalText"; /* Mapping to filterable data within the structured event is provided below for Integrity Violations, Operational Violations, Physical Violations,Security Event Violations, Time Domain Violations. { {"EventEmittingMEId", any (ManagedEntityIdType)}, {"EventTime", any (GeneralizedTimeType)}, {"SecurityAlarmCause", any (SecurityAlarmCauseType)}, {"SecurityAlarmDetector", any (ManagedEntityIdType)}, {"ServiceUser", any (ManagedEntityIdType)}, {"ServiceProvider", any (ManagedEntityIdType)}, {"NotificationIdentifier", any (NotificationIdentifierType)}, {"CorrelatedNotifications", any (CorrelatedNotificationType)}, {"AdditionalText", any (string)} } */ }; // interface SecurityEventSupplier interface DiscoveryEventSupplier : itut_x780::ManagedObject { /* Structured event fixed header mappings: domain_type is set to "telecommunications", type_name is set to "DiscoveryEvent", and event_name is set to one of the following constant strings provided below. Only installed equipment changes are declared through this interface. */ const string managedEntityCreation = "ManagedEntityCreation"; const string managedEntityDeletion = "ManagedEntityDeletion"; const string managedEntityType = "ManagedEntityType"; const string managedEntityAttributeValues = "ManagedEntityAttributeValues"; const string discoveryNotificationIdentifier = "NotificationIdentifier"; const string correlatedNotifications = "CorrelatedNotifications"; const string additionalText = "AdditionalText";" // The following items are equipment types that are discovered by the // Supplier Management System and automatically revealed to the OMS. // The data structure passed on the notification is defined in // Q834Common.idl and the mapping below refers to it as MEstruct. More // specifically, here is the list of data structures currently // supported: OLTType, ONUType,ONTType, NTType, EquipmentHolderType, and PlugInUnitFType. const unsigned short OLT_NE = 1; const unsigned short ONT_NE = 2; const unsigned short ONU_NE = 3; const unsigned short NT_NE = 4; const unsigned short EQUIPMENT_HOLDER_F = 5; const unsigned short PLUG_IN_UNIT_F = 6; /* Mapping to filterable data within the structured event is provided below for a discovery event that involves the creation of a managed entity. { {"ManagedEntityType", any (EquipmentType)}, {"EventTime", any (GeneralizedTimeType)}, {"ManagedEntityAttributeValues", any (MEstruct)}, {"NotificationIdentifier", any (NotificationIdentifierType)}, {"CorrelatedNotifications", any (CorrelatedNotificationType)}, {"AdditionalText", any (string)} } */ }; // interface DiscoveryEventSupplier interface ActivityCompletionEventSupplier : itut_x780::ManagedObject { /* Structured event fixed header mappings: domain_type is set to "telecommunications", type_name is set to "ActivityEvent", and event_name is set to one of the following constant strings provided below. */ const string softwareDownload = "SoftwareDownload"; const string softwareCommit = "SoftwareCommit"; const string softwareActivation = "SoftwareActivation"; /* Additional items to be mapped in the filterable data section of the structured event object are provided below. */ const string eventTime = "EventTime"; const string additionalText = "AdditionalText"; const string notificationIdentifier = "NotificationIdentifier"; const string correlatedNotifications = "CorrelatedNotifications"; const string successIndication = "SuccessIndication"; const string trackingObjectId = "TrackingObjectId"; /* Mapping to filterable data within the structured event is provided below for a software activity event. { {"EventTime", any (GeneralizedTimeType)}, {"NotificationIdentifier", any (NotificationIdentifierType)}, {"CorrelatedNotifications", any (CorrelatedNotificationType)}, {"TrackingObjectId", any (TrackingObjectIdType)}, {"SuccessIndication", boolean}, {"AdditionalText", any (string)} } */ }; // interface ActivityCompletionEventSupplier }; // module EventPublisher }; // module q834_4 #endif