|
Public Types |
enum | MsgTypes {
NationalEscapeMsg = 0x00,
AlertingMsg = 0x01,
CallProceedingMsg = 0x02,
ConnectMsg = 0x07,
ConnectAckMsg = 0x0f,
ProgressMsg = 0x03,
SetupMsg = 0x05,
SetupAckMsg = 0x0d,
ResumeMsg = 0x26,
ResumeAckMsg = 0x2e,
ResumeRejectMsg = 0x22,
SuspendMsg = 0x25,
SuspendAckMsg = 0x2d,
SuspendRejectMsg = 0x21,
UserInformationMsg = 0x20,
DisconnectMsg = 0x45,
ReleaseMsg = 0x4d,
ReleaseCompleteMsg = 0x5a,
RestartMsg = 0x46,
RestartAckMsg = 0x4e,
SegmentMsg = 0x60,
CongestionCtrlMsg = 0x79,
InformationMsg = 0x7b,
NotifyMsg = 0x6e,
StatusMsg = 0x7d,
StatusEnquiryMsg = 0x75,
FacilityMsg = 0x62
} |
enum | InformationElementCodes {
BearerCapabilityIE = 0x04,
CauseIE = 0x08,
ChannelIdentificationIE = 0x18,
FacilityIE = 0x1c,
ProgressIndicatorIE = 0x1e,
CallStateIE = 0x14,
DisplayIE = 0x28,
KeypadIE = 0x2c,
SignalIE = 0x34,
ConnectedNumberIE = 0x4c,
CallingPartyNumberIE = 0x6c,
CalledPartyNumberIE = 0x70,
RedirectingNumberIE = 0x74,
UserUserIE = 0x7e
} |
enum | InformationTransferCapability {
TransferSpeech,
TransferUnrestrictedDigital = 8,
TransferRestrictedDigital = 9,
Transfer3_1kHzAudio = 16,
TransferUnrestrictedDigitalWithTones = 17,
TransferVideo = 24
} |
enum | CauseValues {
UnknownCauseIE = 0,
UnallocatedNumber = 1,
NoRouteToNetwork = 2,
NoRouteToDestination = 3,
SendSpecialTone = 4,
MisdialledTrunkPrefix = 5,
ChannelUnacceptable = 6,
CallAwarded = 7,
Preemption = 8,
PreemptionCircuitReserved = 9,
NormalCallClearing = 16,
UserBusy = 17,
NoResponse = 18,
NoAnswer = 19,
SubscriberAbsent = 20,
CallRejected = 21,
NumberChanged = 22,
Redirection = 23,
ExchangeRoutingError = 25,
NonSelectedUserClearing = 26,
DestinationOutOfOrder = 27,
InvalidNumberFormat = 28,
FacilityRejected = 29,
StatusEnquiryResponse = 30,
NormalUnspecified = 31,
NoCircuitChannelAvailable = 34,
CallQueued = 35,
NetworkOutOfOrder = 38,
FrameModeOOS = 39,
FrameModeOperational = 40,
TemporaryFailure = 41,
Congestion = 42,
AccessInformationDiscarded = 43,
RequestedCircuitNotAvailable = 44,
PrecedenceCallBlocked = 46,
ResourceUnavailable = 47,
QoSNotAvailable = 49,
RequestedFacilityNotSubscribed = 50,
OutgoingCallsBarred = 52,
OutgoingCallsBarredInCUG = 53,
IncomingCallsBarred = 54,
IncomingCallsBarredInCUG = 55,
BearerCapNotAuthorised = 57,
BearerCapNotPresentlyAvailable = 58,
InconsistentOutgoingIE = 62,
ServiceOptionNotAvailable = 63,
BearerCapNotImplemented = 65,
ChannelTypeNotImplemented = 66,
RequestedFacilityNotImplemented = 69,
OnlyRestrictedDigitalBearerCapAvailable = 70,
ServiceOrOptionNotImplemented = 79,
InvalidCallReference = 81,
IdentifiedChannelNonExistent = 82,
CallIdentifyNotSuspendedCall = 83,
CallIdentifyInUse = 84,
NoCallSuspended = 85,
ClearedRequestedCallIdentity = 86,
UserNotInCUG = 87,
IncompatibleDestination = 88,
NonexistentCUG = 90,
InvalidTransitNetwork = 91,
InvalidMessageUnspecified = 95,
MandatoryIEMissing = 96,
MessageTypeNonexistent = 97,
MessageNotCompatible = 98,
IENonExistantOrNotImplemented = 99,
InvalidIEContents = 100,
MessageNotCompatibleWithCallState = 101,
TimerExpiry = 102,
ParameterNonexistent = 103,
UnrecognisedParamaterDiscarded = 110,
ProtocolErrorUnspecified = 111,
InterworkingUnspecified = 127,
ErrorInCauseIE = 0x100
} |
enum | CallStates {
CallState_Null = 0,
CallState_CallInitiated = 1,
CallState_OverlapSending = 2,
CallState_OutgoingCallProceeding = 3,
CallState_CallDelivered = 4,
CallState_CallPresent = 6,
CallState_CallReceived = 7,
CallState_ConnectRequest = 8,
CallState_IncomingCallProceeding = 9,
CallState_Active = 10,
CallState_DisconnectRequest = 11,
CallState_DisconnectIndication = 12,
CallState_SuspendRequest = 15,
CallState_ResumeRequest = 17,
CallState_ReleaseRequest = 19,
CallState_OverlapReceiving = 25,
CallState_ErrorInIE = 0x100
} |
enum | SignalInfo {
SignalDialToneOn,
SignalRingBackToneOn,
SignalInterceptToneOn,
SignalNetworkCongestionToneOn,
SignalBusyToneOn,
SignalConfirmToneOn,
SignalAnswerToneOn,
SignalCallWaitingTone,
SignalOffhookWarningTone,
SignalPreemptionToneOn,
SignalTonesOff = 0x3f,
SignalAlertingPattern0 = 0x40,
SignalAlertingPattern1,
SignalAlertingPattern2,
SignalAlertingPattern3,
SignalAlertingPattern4,
SignalAlertingPattern5,
SignalAlertingPattern6,
SignalAlertingPattern7,
SignalAlertingOff = 0x4f,
SignalErrorInIE = 0x100
} |
enum | ProgressIndication {
ProgressNotEndToEndISDN = 1,
ProgressDestinationNonISDN = 2,
ProgressOriginNotISDN = 3,
ProgressReturnedToISDN = 4,
ProgressServiceChange = 5,
ProgressInbandInformationAvailable = 8
} |
enum | NumberingPlanCodes {
UnknownPlan = 0x00,
ISDNPlan = 0x01,
DataPlan = 0x03,
TelexPlan = 0x04,
NationalStandardPlan = 0x08,
PrivatePlan = 0x09,
ReservedPlan = 0x0f
} |
enum | TypeOfNumberCodes {
UnknownType = 0x00,
InternationalType = 0x01,
NationalType = 0x02,
NetworkSpecificType = 0x03,
SubscriberType = 0x04,
AbbreviatedType = 0x06,
ReservedType = 0x07
} |
Public Member Functions |
| Q931 () |
| Q931 (const Q931 &other) |
Q931 & | operator= (const Q931 &other) |
void | BuildFacility (int callRef, BOOL fromDest) |
void | BuildInformation (int callRef, BOOL fromDest) |
void | BuildProgress (int callRef, BOOL fromDest, unsigned description, unsigned codingStandard=0, unsigned location=0) |
void | BuildNotify (int callRef, BOOL fromDest) |
void | BuildCallProceeding (int callRef) |
void | BuildSetupAcknowledge (int callRef) |
void | BuildAlerting (int callRef) |
void | BuildSetup (int callRef=-1) |
void | BuildConnect (int callRef) |
void | BuildConnectAck (int callRef, BOOL fromDest) |
void | BuildStatus (int callRef, BOOL fromDest) |
void | BuildStatusEnquiry (int callRef, BOOL fromDest) |
void | BuildReleaseComplete (int callRef, BOOL fromDest) |
BOOL | Decode (const PBYTEArray &data) |
BOOL | Encode (PBYTEArray &data) const |
void | PrintOn (ostream &strm) const |
PString | GetMessageTypeName () const |
unsigned | GetCallReference () const |
BOOL | IsFromDestination () const |
MsgTypes | GetMessageType () const |
BOOL | HasIE (InformationElementCodes ie) const |
PBYTEArray | GetIE (InformationElementCodes ie) const |
void | SetIE (InformationElementCodes ie, const PBYTEArray &userData) |
void | RemoveIE (InformationElementCodes ie) |
void | SetBearerCapabilities (InformationTransferCapability capability, unsigned transferRate, unsigned codingStandard=0, unsigned userInfoLayer1=5) |
BOOL | GetBearerCapabilities (InformationTransferCapability &capability, unsigned &transferRate, unsigned *codingStandard=NULL, unsigned *userInfoLayer1=NULL) |
void | SetCause (CauseValues value, unsigned standard=0, unsigned location=0) |
CauseValues | GetCause (unsigned *standard=NULL, unsigned *location=NULL) const |
void | SetCallState (CallStates value, unsigned standard=0) |
CallStates | GetCallState (unsigned *standard=NULL) const |
void | SetSignalInfo (SignalInfo value) |
SignalInfo | GetSignalInfo () const |
void | SetKeypad (const PString &digits) |
PString | GetKeypad () const |
void | SetProgressIndicator (unsigned description, unsigned codingStandard=0, unsigned location=0) |
BOOL | GetProgressIndicator (unsigned &description, unsigned *codingStandard=NULL, unsigned *location=NULL) const |
void | SetDisplayName (const PString &name) |
PString | GetDisplayName () const |
void | SetCallingPartyNumber (const PString &number, unsigned plan=1, unsigned type=0, int presentation=-1, int screening=-1) |
BOOL | GetCallingPartyNumber (PString &number, unsigned *plan=NULL, unsigned *type=NULL, unsigned *presentation=NULL, unsigned *screening=NULL, unsigned defPresentation=0, unsigned defScreening=0) const |
void | SetCalledPartyNumber (const PString &number, unsigned plan=1, unsigned type=0) |
BOOL | GetCalledPartyNumber (PString &number, unsigned *plan=NULL, unsigned *type=NULL) const |
void | SetRedirectingNumber (const PString &number, unsigned plan=1, unsigned type=0, int presentation=-1, int screening=-1, int reason=-1) |
BOOL | GetRedirectingNumber (PString &number, unsigned *plan=NULL, unsigned *type=NULL, unsigned *presentation=NULL, unsigned *screening=NULL, unsigned *reason=NULL, unsigned defPresentation=0, unsigned defScreening=0, unsigned defReason=0) const |
void | SetConnectedNumber (const PString &number, unsigned plan=1, unsigned type=0, int presentation=-1, int screening=-1, int reason=-1) |
BOOL | GetConnectedNumber (PString &number, unsigned *plan=NULL, unsigned *type=NULL, unsigned *presentation=NULL, unsigned *screening=NULL, unsigned *reason=NULL, unsigned defPresentation=0, unsigned defScreening=0, unsigned defReason=0) const |
void | SetChannelIdentification (unsigned interfaceType=0, unsigned preferredOrExclusive=0, int channelNumber=1) |
BOOL | GetChannelIdentification (unsigned *interfaceType=NULL, unsigned *preferredOrExclusive=NULL, int *channelNumber=NULL) const |
Static Public Member Functions |
static unsigned | GenerateCallReference () |
Protected Member Functions |
| PDICTIONARY (InternalInformationElements, POrdinalKey, PBYTEArray) |
Protected Attributes |
unsigned | callReference |
BOOL | fromDestination |
unsigned | protocolDiscriminator |
MsgTypes | messageType |
InternalInformationElements | informationElements |
Friends |
ostream & | operator<< (ostream &strm, InformationElementCodes ie) |
ostream & | operator<< (ostream &strm, CauseValues cause) |
This class embodies a Q.931 Protocol Data Unit.