#include <q931.h>
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, TrasnferUnrestrictedDigitalWithTones = 17, TransferVideo = 24 } |
| enum | CauseValues { UnknownCauseIE = 0, UnallocatedNumber = 1, NoRouteToNetwork = 2, NoRouteToDestination = 3, SendSpecialTone = 4, MisdialledTrunkPrefix = 5, ChannelUnacceptable = 6, 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, NetworkOutOfOrder = 38, TemporaryFailure = 41, Congestion = 42, RequestedCircuitNotAvailable = 44, ResourceUnavailable = 47, ServiceOptionNotAvailable = 63, InvalidCallReference = 81, ClearedRequestedCallIdentity = 86, IncompatibleDestination = 88, IENonExistantOrNotImplemented = 99, TimerExpiry = 102, 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, PBoolean fromDest) |
| void | BuildInformation (int callRef, PBoolean fromDest) |
| void | BuildProgress (int callRef, PBoolean fromDest, unsigned description, unsigned codingStandard=0, unsigned location=0) |
| void | BuildNotify (int callRef, PBoolean fromDest) |
| void | BuildCallProceeding (int callRef) |
| void | BuildSetupAcknowledge (int callRef) |
| void | BuildAlerting (int callRef) |
| void | BuildSetup (int callRef=-1) |
| void | BuildConnect (int callRef) |
| void | BuildStatus (int callRef, PBoolean fromDest) |
| void | BuildStatusEnquiry (int callRef, PBoolean fromDest) |
| void | BuildReleaseComplete (int callRef, PBoolean fromDest) |
| PBoolean | Decode (const PBYTEArray &data) |
| PBoolean | Encode (PBYTEArray &data) const |
| void | PrintOn (ostream &strm) const |
| PString | GetMessageTypeName () const |
| unsigned | GetCallReference () const |
| PBoolean | IsFromDestination () const |
| MsgTypes | GetMessageType () const |
| PBoolean | HasIE (InformationElementCodes ie) const |
| PBYTEArray | GetIE (InformationElementCodes ie, PINDEX idx=0) const |
| void | SetIE (InformationElementCodes ie, const PBYTEArray &userData, bool append=FALSE) |
| void | RemoveIE (InformationElementCodes ie) |
| void | SetBearerCapabilities (InformationTransferCapability capability, unsigned transferRate, unsigned codingStandard=0, unsigned userInfoLayer1=5) |
| PBoolean | 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) |
| PBoolean | 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) |
| PBoolean | 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) |
| PBoolean | 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) |
| PBoolean | 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) |
| PBoolean | 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) |
| PBoolean | GetChannelIdentification (unsigned *interfaceType=NULL, unsigned *preferredOrExclusive=NULL, int *channelNumber=NULL) const |
Static Public Member Functions | |
| static unsigned | GenerateCallReference () |
Protected Member Functions | |
| PARRAY (InternalInformationElement, PBYTEArray) | |
| PDICTIONARY (InternalInformationElements, POrdinalKey, InternalInformationElement) | |
Protected Attributes | |
| unsigned | callReference |
| PBoolean | fromDestination |
| unsigned | protocolDiscriminator |
| MsgTypes | messageType |
| InternalInformationElements | informationElements |
Friends | |
| ostream & | operator<< (ostream &strm, InformationElementCodes ie) |
| ostream & | operator<< (ostream &strm, CauseValues cause) |
| enum Q931::MsgTypes |
| enum Q931::CauseValues |
| enum Q931::CallStates |
| enum Q931::SignalInfo |
| Q931::Q931 | ( | ) |
| Q931::Q931 | ( | const Q931 & | other | ) |
| void Q931::BuildFacility | ( | int | callRef, | |
| PBoolean | fromDest | |||
| ) |
| void Q931::BuildInformation | ( | int | callRef, | |
| PBoolean | fromDest | |||
| ) |
| void Q931::BuildProgress | ( | int | callRef, | |
| PBoolean | fromDest, | |||
| unsigned | description, | |||
| unsigned | codingStandard = 0, |
|||
| unsigned | location = 0 | |||
| ) |
| void Q931::BuildNotify | ( | int | callRef, | |
| PBoolean | fromDest | |||
| ) |
| void Q931::BuildCallProceeding | ( | int | callRef | ) |
| void Q931::BuildSetupAcknowledge | ( | int | callRef | ) |
| void Q931::BuildAlerting | ( | int | callRef | ) |
| void Q931::BuildSetup | ( | int | callRef = -1 |
) |
| void Q931::BuildConnect | ( | int | callRef | ) |
| void Q931::BuildStatus | ( | int | callRef, | |
| PBoolean | fromDest | |||
| ) |
| void Q931::BuildStatusEnquiry | ( | int | callRef, | |
| PBoolean | fromDest | |||
| ) |
| void Q931::BuildReleaseComplete | ( | int | callRef, | |
| PBoolean | fromDest | |||
| ) |
| PBoolean Q931::Decode | ( | const PBYTEArray & | data | ) |
| PBoolean Q931::Encode | ( | PBYTEArray & | data | ) | const |
| void Q931::PrintOn | ( | ostream & | strm | ) | const |
| PString Q931::GetMessageTypeName | ( | ) | const |
| static unsigned Q931::GenerateCallReference | ( | ) | [static] |
| unsigned Q931::GetCallReference | ( | ) | const [inline] |
| PBoolean Q931::IsFromDestination | ( | ) | const [inline] |
| MsgTypes Q931::GetMessageType | ( | ) | const [inline] |
| PBoolean Q931::HasIE | ( | InformationElementCodes | ie | ) | const |
| PBYTEArray Q931::GetIE | ( | InformationElementCodes | ie, | |
| PINDEX | idx = 0 | |||
| ) | const |
| void Q931::SetIE | ( | InformationElementCodes | ie, | |
| const PBYTEArray & | userData, | |||
| bool | append = FALSE | |||
| ) |
| void Q931::RemoveIE | ( | InformationElementCodes | ie | ) |
| void Q931::SetBearerCapabilities | ( | InformationTransferCapability | capability, | |
| unsigned | transferRate, | |||
| unsigned | codingStandard = 0, |
|||
| unsigned | userInfoLayer1 = 5 | |||
| ) |
| transferRate | Number of 64k B channels |
| codingStandard | 0 = ITU-T standardized coding |
| userInfoLayer1 | 5 = Recommendations H.221 and H.242 |
| PBoolean Q931::GetBearerCapabilities | ( | InformationTransferCapability & | capability, | |
| unsigned & | transferRate, | |||
| unsigned * | codingStandard = NULL, |
|||
| unsigned * | userInfoLayer1 = NULL | |||
| ) |
| transferRate | Number of 64k B channels |
| void Q931::SetCause | ( | CauseValues | value, | |
| unsigned | standard = 0, |
|||
| unsigned | location = 0 | |||
| ) |
| standard | 0 = ITU-T standardized coding |
| location | 0 = User |
| CauseValues Q931::GetCause | ( | unsigned * | standard = NULL, |
|
| unsigned * | location = NULL | |||
| ) | const |
| standard | 0 = ITU-T standardized coding |
| location | 0 = User |
| void Q931::SetCallState | ( | CallStates | value, | |
| unsigned | standard = 0 | |||
| ) |
| standard | 0 = ITU-T standardized coding |
| CallStates Q931::GetCallState | ( | unsigned * | standard = NULL |
) | const |
| standard | 0 = ITU-T standardized coding |
| void Q931::SetSignalInfo | ( | SignalInfo | value | ) |
| SignalInfo Q931::GetSignalInfo | ( | ) | const |
| void Q931::SetKeypad | ( | const PString & | digits | ) |
| PString Q931::GetKeypad | ( | ) | const |
| void Q931::SetProgressIndicator | ( | unsigned | description, | |
| unsigned | codingStandard = 0, |
|||
| unsigned | location = 0 | |||
| ) |
| PBoolean Q931::GetProgressIndicator | ( | unsigned & | description, | |
| unsigned * | codingStandard = NULL, |
|||
| unsigned * | location = NULL | |||
| ) | const |
| void Q931::SetDisplayName | ( | const PString & | name | ) |
| PString Q931::GetDisplayName | ( | ) | const |
| void Q931::SetCallingPartyNumber | ( | const PString & | number, | |
| unsigned | plan = 1, |
|||
| unsigned | type = 0, |
|||
| int | presentation = -1, |
|||
| int | screening = -1 | |||
| ) |
| number | Number string |
| plan | 1 = ISDN/Telephony numbering system |
| type | 0 = Unknown number type |
| presentation | 0 = presentation allowed, -1 = no octet3a |
| screening | 0 = user provided, not screened |
| PBoolean Q931::GetCallingPartyNumber | ( | PString & | number, | |
| unsigned * | plan = NULL, |
|||
| unsigned * | type = NULL, |
|||
| unsigned * | presentation = NULL, |
|||
| unsigned * | screening = NULL, |
|||
| unsigned | defPresentation = 0, |
|||
| unsigned | defScreening = 0 | |||
| ) | const |
| number | Number string |
| plan | ISDN/Telephony numbering system |
| type | Number type |
| presentation | Presentation indicator |
| screening | Screening indicator |
| defPresentation | Default value if octet3a not present |
| defScreening | Default value if octet3a not present |
| void Q931::SetCalledPartyNumber | ( | const PString & | number, | |
| unsigned | plan = 1, |
|||
| unsigned | type = 0 | |||
| ) |
| number | Number string |
| plan | 1 = ISDN/Telephony numbering system |
| type | 0 = Unknown number type |
| PBoolean Q931::GetCalledPartyNumber | ( | PString & | number, | |
| unsigned * | plan = NULL, |
|||
| unsigned * | type = NULL | |||
| ) | const |
| number | Number string |
| plan | ISDN/Telephony numbering system |
| type | Number type |
| void Q931::SetRedirectingNumber | ( | const PString & | number, | |
| unsigned | plan = 1, |
|||
| unsigned | type = 0, |
|||
| int | presentation = -1, |
|||
| int | screening = -1, |
|||
| int | reason = -1 | |||
| ) |
| number | Number string |
| plan | 1 = ISDN/Telephony numbering system |
| type | 0 = Unknown number type |
| presentation | 0 = presentation allowed, -1 = no octet3a |
| screening | 0 = user provided, not screened |
| reason | 0 = Unknown reason , -1 = no octet 3b |
| PBoolean Q931::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 |
| number | Number string |
| plan | ISDN/Telephony numbering system |
| type | Number type |
| presentation | Presentation indicator |
| screening | Screening indicator |
| reason | Reason for redirection |
| defPresentation | Default value if octet3a not present |
| defScreening | Default value if octet3a not present |
| defReason | Default value if octet 3b not present |
| void Q931::SetConnectedNumber | ( | const PString & | number, | |
| unsigned | plan = 1, |
|||
| unsigned | type = 0, |
|||
| int | presentation = -1, |
|||
| int | screening = -1, |
|||
| int | reason = -1 | |||
| ) |
| number | Number string |
| plan | 1 = ISDN/Telephony numbering system |
| type | 0 = Unknown number type |
| presentation | 0 = presentation allowed, -1 = no octet3a |
| screening | 0 = user provided, not screened |
| reason | 0 = Unknown reason , -1 = no octet 3b |
| PBoolean Q931::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 |
| number | Number string |
| plan | ISDN/Telephony numbering system |
| type | Number type |
| presentation | Presentation indicator |
| screening | Screening indicator |
| reason | Reason for redirection |
| defPresentation | Default value if octet3a not present |
| defScreening | Default value if octet3a not present |
| defReason | Default value if octet 3b not present |
| void Q931::SetChannelIdentification | ( | unsigned | interfaceType = 0, |
|
| unsigned | preferredOrExclusive = 0, |
|||
| int | channelNumber = 1 | |||
| ) |
Set the limitations to ChannelIdentification.
| interfaceType | 0 = basic, 1 = other (e.g. primary) |
| preferredOrExclusive | 0 = preferred, 1 = exclusive |
| channelNumber | -1 = any, 0 = none/D, 1 = channel 1/B1, etc. 1-15,17-31 |
| PBoolean Q931::GetChannelIdentification | ( | unsigned * | interfaceType = NULL, |
|
| unsigned * | preferredOrExclusive = NULL, |
|||
| int * | channelNumber = NULL | |||
| ) | const |
Get the limitations to ChannelIdentification.
| interfaceType | Interface type |
| preferredOrExclusive | Channel negotiation preference |
| channelNumber | Channel number |
| Q931::PARRAY | ( | InternalInformationElement | , | |
| PBYTEArray | ||||
| ) | [protected] |
| Q931::PDICTIONARY | ( | InternalInformationElements | , | |
| POrdinalKey | , | |||
| InternalInformationElement | ||||
| ) | [protected] |
| ostream& operator<< | ( | ostream & | strm, | |
| InformationElementCodes | ie | |||
| ) | [friend] |
| ostream& operator<< | ( | ostream & | strm, | |
| CauseValues | cause | |||
| ) | [friend] |
unsigned Q931::callReference [protected] |
PBoolean Q931::fromDestination [protected] |
unsigned Q931::protocolDiscriminator [protected] |
MsgTypes Q931::messageType [protected] |
InternalInformationElements Q931::informationElements [protected] |
1.5.1