OPAL  Version 3.18.8
H323SignalPDU Class Reference

#include <h323pdu.h>

Inherits H225_H323_UserInformation.

Collaboration diagram for H323SignalPDU:

Public Member Functions

Construction
 H323SignalPDU ()
 
H225_Setup_UUIE & BuildSetup (const H323Connection &connection, const H323TransportAddress &destAddr)
 
H225_CallProceeding_UUIE & BuildCallProceeding (const H323Connection &connection)
 
H225_Connect_UUIE & BuildConnect (const H323Connection &connection)
 
H225_Alerting_UUIE & BuildAlerting (const H323Connection &connection)
 
H225_Information_UUIE & BuildInformation (const H323Connection &connection)
 
H225_ReleaseComplete_UUIE & BuildReleaseComplete (const H323Connection &connection)
 
H225_Facility_UUIE * BuildFacility (const H323Connection &connection, bool empty, unsigned reason=H225_FacilityReason::e_undefinedReason)
 
H225_Facility_UUIE & BuildFacility (const OpalGloballyUniqueID &callId)
 
H225_Progress_UUIE & BuildProgress (const H323Connection &connection)
 
H225_Status_UUIE & BuildStatus (const H323Connection &connection)
 
H225_StatusInquiry_UUIE & BuildStatusInquiry (const H323Connection &connection)
 
H225_SetupAcknowledge_UUIE & BuildSetupAcknowledge (const H323Connection &connection)
 
H225_Notify_UUIE & BuildNotify (const H323Connection &connection)
 

Operations

Q931 q931pdu
 
void PrintOn (ostream &strm) const
 
PBoolean Read (H323Transport &transport)
 
PBoolean Write (H323Transport &transport)
 
const Q931GetQ931 () const
 
Q931GetQ931 ()
 
void SetQ931 (const Q931 &_q931pdu)
 
void BuildQ931 ()
 
PString GetSourceAliases (const H323Transport *transport=NULL) const
 
PString GetDestinationAlias (PBoolean firstAliasOnly=false) const
 
PBoolean GetSourceE164 (PString &number) const
 
PBoolean GetDestinationE164 (PString &number) const
 
unsigned GetDistinctiveRing () const
 
void SetQ931Fields (const H323Connection &connection, bool insertPartyNumbers=false)
 

Detailed Description

Wrapper class for the H323 signalling channel.

Constructor & Destructor Documentation

H323SignalPDU::H323SignalPDU ( )

Create a new H.323 signalling channel (H.225/Q.931) PDU.

Member Function Documentation

H225_Alerting_UUIE& H323SignalPDU::BuildAlerting ( const H323Connection connection)

Build an ALERTING message.

Parameters
connectionConnection PDU is generated for
H225_CallProceeding_UUIE& H323SignalPDU::BuildCallProceeding ( const H323Connection connection)

Build a CALL-PROCEEDING message.

Parameters
connectionConnection PDU is generated for
H225_Connect_UUIE& H323SignalPDU::BuildConnect ( const H323Connection connection)

Build a CONNECT message.

Parameters
connectionConnection PDU is generated for
H225_Facility_UUIE* H323SignalPDU::BuildFacility ( const H323Connection connection,
bool  empty,
unsigned  reason = H225_FacilityReason::e_undefinedReason 
)

Build a FACILITY message.

Parameters
connectionConnection PDU is generated for
emptyFlag for empty facility message
reasonReason for Facility
H225_Facility_UUIE& H323SignalPDU::BuildFacility ( const OpalGloballyUniqueID callId)

Build a FACILITY message.

H225_Information_UUIE& H323SignalPDU::BuildInformation ( const H323Connection connection)

Build a INFORMATION message.

Parameters
connectionConnection PDU is generated for
H225_Notify_UUIE& H323SignalPDU::BuildNotify ( const H323Connection connection)

Build a NOTIFY message.

Parameters
connectionConnection PDU is generated for
H225_Progress_UUIE& H323SignalPDU::BuildProgress ( const H323Connection connection)

Build a PROGRESS message.

Parameters
connectionConnection PDU is generated for
void H323SignalPDU::BuildQ931 ( )

Build the Q.931 wrapper PDU for H.225 signalling PDU. This must be called after altering fields in the H.225 part of the PDU. If it has never been done, then the Write() functions will do so.

H225_ReleaseComplete_UUIE& H323SignalPDU::BuildReleaseComplete ( const H323Connection connection)

Build a RELEASE-COMPLETE message.

Parameters
connectionConnection PDU is generated for
H225_Setup_UUIE& H323SignalPDU::BuildSetup ( const H323Connection connection,
const H323TransportAddress destAddr 
)

Build a SETUP message.

Parameters
connectionConnection PDU is generated for
destAddrDestination address for packet
H225_SetupAcknowledge_UUIE& H323SignalPDU::BuildSetupAcknowledge ( const H323Connection connection)

Build a SETUP-ACKNOWLEDGE message.

Parameters
connectionConnection PDU is generated for
H225_Status_UUIE& H323SignalPDU::BuildStatus ( const H323Connection connection)

Build a STATUS message.

Parameters
connectionConnection PDU is generated for
H225_StatusInquiry_UUIE& H323SignalPDU::BuildStatusInquiry ( const H323Connection connection)

Build a STATUS-INQUIRY message.

Parameters
connectionConnection PDU is generated for
PString H323SignalPDU::GetDestinationAlias ( PBoolean  firstAliasOnly = false) const

Get the destination alias name(s) for the local endpoint. The alias returned here can be used to determine the routing of an incoming connection.

Parameters
firstAliasOnlyOnly return the first possible alias
PBoolean H323SignalPDU::GetDestinationE164 ( PString &  number) const

Get the destiation phone number. This returns false if the remote never provided any alias or Q.931 field that indicated a valid e.164 telephone number.

Parameters
numberString to receive number
unsigned H323SignalPDU::GetDistinctiveRing ( ) const

Get the distinctive ring code if present. This returns zero if no distinctive ring information is provided.

const Q931& H323SignalPDU::GetQ931 ( ) const
inline

Get the Q.931 wrapper PDU for H.225 signalling PDU.

References q931pdu.

Q931& H323SignalPDU::GetQ931 ( )
inline

Get the Q.931 wrapper PDU for H.225 signalling PDU.

References q931pdu.

PString H323SignalPDU::GetSourceAliases ( const H323Transport transport = NULL) const

Get the source alias names for the remote endpoint. This returns a human readable set of names that was provided by the remote endpoint to identify it, eg phone number, display name etc etc

Parameters
transportTransport PDU was read from.
PBoolean H323SignalPDU::GetSourceE164 ( PString &  number) const

Get the source endpoints identification as a phone number. This returns false if the remote never provided any alias or Q.931 field that indicated a valid e.164 telephone number.

Parameters
numberString to receive number
void H323SignalPDU::PrintOn ( ostream &  strm) const

Print PDU to stream.

PBoolean H323SignalPDU::Read ( H323Transport transport)

Read PDU from the specified transport.

Parameters
transportTransport to read from
void H323SignalPDU::SetQ931 ( const Q931 _q931pdu)
inline

Set the Q.931 wrapper PDU for H.225 signalling PDU

References q931pdu.

void H323SignalPDU::SetQ931Fields ( const H323Connection connection,
bool  insertPartyNumbers = false 
)

Set the Q.931 fields in the PDU. This sets the default values for various fields, eg caller party number into the Q.931 from the supplied connection.

PBoolean H323SignalPDU::Write ( H323Transport transport)

Write the PDU to the transport.

Parameters
transportTransport to write to

Field Documentation

Q931 H323SignalPDU::q931pdu
protected

Referenced by GetQ931(), and SetQ931().


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