OPAL  Version 3.10.4
IAX2IeCauseCode Class Reference

#include <causecode.h>

Inheritance diagram for IAX2IeCauseCode:
IAX2IeByte IAX2Ie

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

- Protected Member Functions inherited from IAX2IeByte
virtual void WriteBinary (BYTE *data)
- Protected Attributes inherited from IAX2IeByte
BYTE dataValue
- Protected Attributes inherited from IAX2Ie
PBoolean validData

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: