-- 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