OPAL  Version 3.14.3
IAX2IeCauseCode Class Reference

#include <causecode.h>

Inheritance diagram for IAX2IeCauseCode:
Collaboration diagram for IAX2IeCauseCode:

Public Types

enum  CauseCodes {
  Unallocated = 1, NoRouteTransitNet = 2, NoRouteDestination = 3, ChannelUnacceptable = 6,
  CallAwardedDelivered = 7, NormalClearing = 16, UserBusy = 17, NoUserResponse = 18,
  NoAnswer = 19, CallRejected = 21, NumberChanged = 22, DestinationOutOfOrder = 27,
  InvalidNumberFormat = 28, FacilityRejected = 29, ResponseToStatusEnquiry = 30, NormalUnspecified = 31,
  NormalCircuitCongestion = 34, NetworkOutOfOrder = 38, NormalTemporaryFailure = 41, SwitchCongestion = 42,
  AccessInfoDiscarded = 43, RequestedChanUnavail = 44, PreEmpted = 45, FacilityNotSubscribed = 50,
  OutgoingCallBarred = 52, IncomingCallBarred = 54, BearerCapabilityNotauth = 57, BearerCapabilityNotAvail = 58,
  BearerCapabilityNotimpl = 65, ChanNotImplemented = 66, FacilityNotImplemented = 69, InvalidCallReference = 81,
  IncompatibleDestination = 88, InvalidMsgUnspecified = 95, MandatoryIeMissing = 96, MessageTypeNonexist = 97,
  WrongMessage = 98, IeNonexist = 99, InvalidIeContents = 100, WrpngCallState = 101,
  RecoveryOnTimerExpire = 102, MandatoryIeLengthError = 103, ProtocolError = 111, Interworking = 127,
  Busy = UserBusy, Failure = NetworkOutOfOrder, Normal = NormalClearing, Congestion = NormalCircuitCongestion,
  Unregistered = NoRouteDestination, NotDefined = 0, NoSuchDriver = ChanNotImplemented
}
 

Public Member Functions

 IAX2IeCauseCode (BYTE length, BYTE *srcData)
 
 IAX2IeCauseCode (BYTE newValue)
 
virtual BYTE GetKeyValue () const
 
void PrintOn (ostream &str) const
 
virtual void StoreDataIn (IAX2IeData &res)
 

Additional Inherited Members

- Static Public Member Functions inherited from IAX2Ie
static IAX2IeBuildInformationElement (BYTE _typeCode, BYTE length, BYTE *srcData)
 
- Protected Member Functions inherited from IAX2IeByte
virtual void WriteBinary (BYTE *data)
 
- Protected Attributes inherited from IAX2IeByte
BYTE dataValue
 

Detailed Description

An Information Element that contains the hangup cause code

Member Enumeration Documentation

Enums to specify why this call failed

Enumerator
Unallocated 
NoRouteTransitNet 
NoRouteDestination 
ChannelUnacceptable 
CallAwardedDelivered 
NormalClearing 
UserBusy 
NoUserResponse 
NoAnswer 
CallRejected 
NumberChanged 
DestinationOutOfOrder 
InvalidNumberFormat 
FacilityRejected 
ResponseToStatusEnquiry 
NormalUnspecified 
NormalCircuitCongestion 
NetworkOutOfOrder 
NormalTemporaryFailure 
SwitchCongestion 
AccessInfoDiscarded 
RequestedChanUnavail 
PreEmpted 
FacilityNotSubscribed 
OutgoingCallBarred 
IncomingCallBarred 
BearerCapabilityNotauth 
BearerCapabilityNotAvail 

No agreement on a common codec to use. Happens at call setup.

BearerCapabilityNotimpl 
ChanNotImplemented 
FacilityNotImplemented 
InvalidCallReference 
IncompatibleDestination 
InvalidMsgUnspecified 
MandatoryIeMissing 
MessageTypeNonexist 
WrongMessage 
IeNonexist 
InvalidIeContents 
WrpngCallState 
RecoveryOnTimerExpire 
MandatoryIeLengthError 
ProtocolError 
Interworking 
Busy 
Failure 
Normal 
Congestion 
Unregistered 
NotDefined 
NoSuchDriver 

Constructor & Destructor Documentation

IAX2IeCauseCode::IAX2IeCauseCode ( BYTE  length,
BYTE *  srcData 
)
inline
Constructor from data read from the network.

Contents are undefined if the network data is bogus/invalid

IAX2IeCauseCode::IAX2IeCauseCode ( BYTE  newValue)
inline

Construct with a predefined value (Typically used prior to transmission)

Member Function Documentation

virtual BYTE IAX2IeCauseCode::GetKeyValue ( ) const
inlinevirtual

Get the key value for this particular Information Element class

Reimplemented from IAX2Ie.

References IAX2Ie::ie_causeCode.

void IAX2IeCauseCode::PrintOn ( ostream &  str) const
virtual

print this class (nicely) to the designated stream

Reimplemented from IAX2IeByte.

virtual void IAX2IeCauseCode::StoreDataIn ( IAX2IeData res)
inlinevirtual

Take the data from this Ie, and copy it into the IeData structure. This is done on processing an incoming frame which contains Ie in the data section.

Reimplemented from IAX2Ie.

References IAX2IeData::causeCode, and IAX2IeByte::dataValue.


The documentation for this class was generated from the following file: