wireshark/idl/parlay/dsc.idl

343 lines
8.9 KiB
Plaintext

//Source file: dsc.idl
//Date: 11 October 2004
//Data Session Control Interfaces and Data Types for ETSI ES 203 915-08 V1.1.1, DES/TISPAN-01005-08-OSA, Parlay 5.0
#ifndef __DSC_DEFINED
#define __DSC_DEFINED
#include "osa.idl"
module org {
module csapi {
module dsc {
interface IpAppDataSessionControlManager ;
interface IpDataSessionControlManager ;
interface IpDataSession;
const TpInt32 P_DATA_SESSION_SUPERVISE_INFORM = 4;
const TpInt32 P_DATA_SESSION_SUPERVISE_DATA_SESSION_ENDED = 2;
const TpInt32 P_DATA_SESSION_SUPERVISE_MESSAGE_SENT = 4;
const TpInt32 P_DATA_SESSION_SUPERVISE_RELEASE = 1;
const TpInt32 P_DATA_SESSION_SUPERVISE_RESPOND = 2;
const TpInt32 P_DATA_SESSION_SUPERVISE_VOLUME_REACHED = 1;
struct TpChargePerVolume {
TpInt32 InitialCharge;
TpInt32 CurrentChargePerKilobyte;
TpInt32 NextChargePerKilobyte;
};
enum TpDataSessionChargeOrderCategory {
P_DATA_SESSION_CHARGE_PER_VOLUME,
P_DATA_SESSION_CHARGE_NETWORK
};
union TpDataSessionChargeOrder switch(TpDataSessionChargeOrderCategory) {
case P_DATA_SESSION_CHARGE_PER_VOLUME: TpChargePerVolume ChargePerVolume;
case P_DATA_SESSION_CHARGE_NETWORK: TpString NetworkCharge;
};
struct TpDataSessionChargePlan {
TpDataSessionChargeOrder ChargeOrderType;
TpString Currency;
TpString AdditionalInfo;
};
enum TpDataSessionErrorType {
P_DATA_SESSION_ERROR_UNDEFINED,
P_DATA_SESSION_ERROR_INVALID_ADDRESS,
P_DATA_SESSION_ERROR_INVALID_STATE
};
union TpDataSessionAdditionalErrorInfo switch(TpDataSessionErrorType) {
case P_DATA_SESSION_ERROR_INVALID_ADDRESS: TpAddressError DataSessionErrorInvalidAddress;
default: short Dummy;
};
struct TpDataSessionError {
TpDateAndTime ErrorTime;
TpDataSessionErrorType ErrorType;
TpDataSessionAdditionalErrorInfo AdditionalErrorInfo;
};
typedef TpInt32 TpDataSessionEventName;
enum TpDataSessionFault {
P_DATA_SESSION_FAULT_UNDEFINED,
P_DATA_SESSION_FAULT_USER_ABORTED,
P_DATA_SESSION_TIMEOUT_ON_RELEASE,
P_DATA_SESSION_TIMEOUT_ON_INTERRUPT
};
enum TpDataSessionMonitorMode {
P_DATA_SESSION_MONITOR_MODE_INTERRUPT,
P_DATA_SESSION_MONITOR_MODE_NOTIFY,
P_DATA_SESSION_MONITOR_MODE_DO_NOT_MONITOR
};
struct TpDataSessionEventCriteria {
TpAddressRange DestinationAddress;
TpAddressRange OriginationAddress;
TpDataSessionEventName DataSessionEventName;
TpDataSessionMonitorMode MonitorMode;
};
struct TpDataSessionEventInfo {
TpAddress DestinationAddress;
TpAddress OriginatingAddress;
TpDataSessionEventName DataSessionEventName;
TpDataSessionMonitorMode MonitorMode;
TpDataSessionQosClass QoSClass;
};
struct TpDataSessionReleaseCause {
TpInt32 Value;
TpInt32 Location;
};
enum TpDataSessionReportType {
P_DATA_SESSION_REPORT_UNDEFINED,
P_DATA_SESSION_REPORT_CONNECTED,
P_DATA_SESSION_REPORT_DISCONNECT
};
union TpDataSessionAdditionalReportInfo switch(TpDataSessionReportType) {
case P_DATA_SESSION_REPORT_DISCONNECT: TpDataSessionReleaseCause DataSessionDisconnect;
default: short Dummy;
};
struct TpDataSessionReport {
TpDataSessionMonitorMode MonitorMode;
TpDateAndTime DataSessionEventTime;
TpDataSessionReportType DataSessionReportType;
TpDataSessionAdditionalReportInfo AdditionalReportInfo;
};
struct TpDataSessionReportRequest {
TpDataSessionMonitorMode MonitorMode;
TpDataSessionReportType DataSessionReportType;
};
typedef sequence <TpDataSessionReportRequest> TpDataSessionReportRequestSet;
typedef TpInt32 TpDataSessionSuperviseReport;
typedef TpInt32 TpDataSessionSuperviseTreatment;
struct TpDataSessionSuperviseVolume {
TpInt32 VolumeQuantity;
TpInt32 VolumeUnit;
};
const TpInt32 P_EVENT_NAME_UNDEFINED = 0;
const TpInt32 P_EVENT_DSCS_SETUP = 1;
const TpInt32 P_EVENT_DSCS_ESTABLISHED = 2;
const TpInt32 P_EVENT_NAME_QOD_CHANGED = 4;
struct TpDataSessionEventCriteriaResult {
TpDataSessionEventCriteria EventCriteria;
TpAssignmentID AssignmentID;
};
typedef sequence <TpDataSessionEventCriteriaResult> TpDataSessionEventCriteriaResultSet;
const TpInt32 P_EVENT_DSCS_QOS_CHANGED = 4;
struct TpDataSessionIdentifier {
IpDataSession DataSessionReference;
TpSessionID DataSessionID;
};
interface IpAppDataSession : IpInterface {
void connectRes (
in TpSessionID dataSessionID,
in TpDataSessionReport eventReport,
in TpAssignmentID assignmentID
);
void connectErr (
in TpSessionID dataSessionID,
in TpDataSessionError errorIndication,
in TpAssignmentID assignmentID
);
void superviseDataSessionRes (
in TpSessionID dataSessionID,
in TpDataSessionSuperviseReport report,
in TpDataSessionSuperviseVolume usedVolume,
in TpDataSessionQosClass qualityOfService
);
void superviseDataSessionErr (
in TpSessionID dataSessionID,
in TpDataSessionError errorIndication
);
void dataSessionFaultDetected (
in TpSessionID dataSessionID,
in TpDataSessionFault fault
);
};
interface IpAppDataSessionControlManager : IpInterface {
void dataSessionAborted (
in TpSessionID dataSession
);
IpAppDataSession reportNotification (
in TpDataSessionIdentifier dataSessionReference,
in TpDataSessionEventInfo eventInfo,
in TpAssignmentID assignmentID
);
void dataSessionNotificationContinued ();
void dataSessionNotificationInterrupted ();
void abortMultipleDataSessions (
in TpSessionIDSet dataSessionSet
);
};
interface IpDataSession : IpService {
TpAssignmentID connectReq (
in TpSessionID dataSessionID,
in TpDataSessionReportRequestSet responseRequested,
in TpAddress targetAddress
)
raises (TpCommonExceptions,P_INVALID_NETWORK_STATE,P_INVALID_ADDRESS,P_INVALID_SESSION_ID);
void release (
in TpSessionID dataSessionID,
in TpDataSessionReleaseCause cause
)
raises (TpCommonExceptions,P_INVALID_NETWORK_STATE,P_INVALID_SESSION_ID);
void superviseDataSessionReq (
in TpSessionID dataSessionID,
in TpDataSessionSuperviseTreatment treatment,
in TpDataSessionSuperviseVolume bytes
)
raises (TpCommonExceptions,P_INVALID_NETWORK_STATE,P_INVALID_SESSION_ID);
void setDataSessionChargePlan (
in TpSessionID dataSessionID,
in TpDataSessionChargePlan dataSessionChargePlan
)
raises (TpCommonExceptions,P_INVALID_NETWORK_STATE,P_INVALID_SESSION_ID);
void setAdviceOfCharge (
in TpSessionID dataSessionID,
in TpAoCInfo aoCInfo,
in TpDuration tariffSwitch
)
raises (TpCommonExceptions,P_INVALID_NETWORK_STATE,P_INVALID_TIME_AND_DATE_FORMAT);
void deassignDataSession (
in TpSessionID dataSessionID
)
raises (TpCommonExceptions,P_INVALID_SESSION_ID);
void continueProcessing (
in TpSessionID dataSessionID
)
raises (TpCommonExceptions,P_INVALID_SESSION_ID,P_INVALID_NETWORK_STATE);
};
interface IpDataSessionControlManager : IpService {
TpAssignmentID createNotification (
in IpAppDataSessionControlManager appDataSessionControlManager,
in TpDataSessionEventCriteria eventCriteria
)
raises (TpCommonExceptions,P_INVALID_NETWORK_STATE,P_INVALID_CRITERIA,P_INVALID_EVENT_TYPE);
void destroyNotification (
in TpAssignmentID assignmentID
)
raises (TpCommonExceptions,P_INVALID_NETWORK_STATE,P_INVALID_ASSIGNMENT_ID);
void changeNotification (
in TpAssignmentID assignmentID,
in TpDataSessionEventCriteria eventCriteria
)
raises (TpCommonExceptions,P_INVALID_NETWORK_STATE,P_INVALID_ASSIGNMENT_ID,P_INVALID_CRITERIA,P_INVALID_EVENT_TYPE);
TpAssignmentID enableNotifications (
in IpAppDataSessionControlManager appDataSessionControlManager
)
raises (TpCommonExceptions);
void disableNotifications ()
raises (TpCommonExceptions);
TpDataSessionEventCriteriaResultSet getNotifications ()
raises (TpCommonExceptions,P_INVALID_NETWORK_STATE);
TpAssignmentID createNotifications (
in IpAppDataSessionControlManager appDataSessionControlManager,
in TpDataSessionEventCriteria eventCriteria
)
raises (TpCommonExceptions,P_INVALID_NETWORK_STATE,P_INVALID_CRITERIA,P_INVALID_EVENT_TYPE,P_INVALID_INTERFACE_TYPE);
};
};
};
};
#endif