# H323_RealTimeChannel Class Reference

`#include <channels.h>`

Inheritance diagram for H323_RealTimeChannel:

[legend]
Collaboration diagram for H323_RealTimeChannel:
[legend]

## Public Member Functions

Construction
| H323_RealTimeChannel (H323Connection &connection, const H323Capability &capability, Directions direction)
Overrides from class H323Channel
virtual PBoolean | OnSendingPDU (H245_OpenLogicalChannel &openPDU) const
virtual void | OnSendOpenAck (const H245_OpenLogicalChannel &open, H245_OpenLogicalChannelAck &ack) const
virtual void | OnSendOpenAck (H245_H2250LogicalChannelAckParameters &param) const
virtual PBoolean | OnReceivedPDU (const H245_OpenLogicalChannel &pdu, unsigned &errorCode)
virtual PBoolean | OnReceivedAckPDU (const H245_OpenLogicalChannelAck &pdu)
Operations
virtual PBoolean | OnSendingPDU (H245_H2250LogicalChannelParameters &param) const
virtual PBoolean | OnSendingAltPDU (H245_ArrayOf_GenericInformation &alternate) const =0
virtual PBoolean | OnReceivedPDU (const H245_H2250LogicalChannelParameters &param, unsigned &errorCode)
virtual PBoolean | OnReceivedAckPDU (const H245_H2250LogicalChannelAckParameters &param)
virtual PBoolean | OnReceivedAckAltPDU (const H245_ArrayOf_GenericInformation &alternate)=0
RTP_DataFrame::PayloadTypes | GetDynamicRTPPayloadType () const

## Detailed Description

This class is for encpsulating the IETF Real Time Protocol interface.

## Constructor & Destructor Documentation

H323_RealTimeChannel::H323_RealTimeChannel | ( | H323Connection & | connection,
|  | const H323Capability & | capability,
|  | Directions | direction |
| ) |  |  |

Create a new channel.

Parameters:

  connection | Connection to endpoint for channel
  capability | Capability channel is using
  direction | Direction of channel

## Member Function Documentation

RTP_DataFrame::PayloadTypes H323_RealTimeChannel::GetDynamicRTPPayloadType | ( |  | ) | const

virtual PBoolean H323_RealTimeChannel::OnReceivedAckAltPDU | ( | const H245_ArrayOf_GenericInformation & | alternate | ) | `[pure virtual]`

Alternate RTP port information for Same NAT

Parameters:

  alternate | Alternate RTP ports

Implemented in H323_RTPChannel.

virtual PBoolean H323_RealTimeChannel::OnReceivedAckPDU | ( | const H245_H2250LogicalChannelAckParameters & | param | ) | `[virtual]`

This is called after a request to create a channel occurs from the local machine via the H245LogicalChannelDict::Open() function, and the request has been acknowledged by the remote endpoint.

The default behaviour sets the remote ports to send UDP packets to.

Parameters:

  param | Acknowledgement PDU

Reimplemented in H323_RTPChannel.

virtual PBoolean H323_RealTimeChannel::OnReceivedAckPDU | ( | const H245_OpenLogicalChannelAck & | pdu | ) | `[virtual]`

This is called after a request to create a channel occurs from the local machine via the H245LogicalChannelDict::Open() function, and the request has been acknowledged by the remote endpoint.

The default makes sure the parameters are compatible and passes on the PDU to the rtp session.

Parameters:

  pdu | Acknowledgement PDU

Reimplemented from H323Channel.

virtual PBoolean H323_RealTimeChannel::OnReceivedPDU | ( | const H245_H2250LogicalChannelParameters & | param,
|  | unsigned & | errorCode |
| ) |  |  | `[virtual]`

This is called after a request to create a channel occurs from the local machine via the H245LogicalChannelDict::Open() function, and the request has been acknowledged by the remote endpoint.

The default behaviour sets the remote ports to send UDP packets to.

Parameters:

  param | Acknowledgement PDU
  errorCode | Error on failure

Reimplemented in H323_RTPChannel.

virtual PBoolean H323_RealTimeChannel::OnReceivedPDU | ( | const H245_OpenLogicalChannel & | pdu,
|  | unsigned & | errorCode |
| ) |  |  | `[virtual]`

This is called after a request to create a channel occurs from the local machine via the H245LogicalChannelDict::Open() function, and the request has been acknowledged by the remote endpoint.

The default makes sure the parameters are compatible and passes on the PDU to the rtp session.

Parameters:

  pdu | Open PDU
  errorCode | Error code on failure

Reimplemented from H323Channel.

virtual PBoolean H323_RealTimeChannel::OnSendingAltPDU | ( | H245_ArrayOf_GenericInformation & | alternate | ) | const`[pure virtual]`

Alternate RTP port information for Same NAT

Parameters:

  alternate | Alternate RTP ports

Implemented in H323_RTPChannel.

virtual PBoolean H323_RealTimeChannel::OnSendingPDU | ( | H245_H2250LogicalChannelParameters & | param | ) | const`[virtual]`

Fill out the OpenLogicalChannel PDU for the particular channel type.

Parameters:

  param | Open PDU to send.

Reimplemented in H323_RTPChannel.

virtual PBoolean H323_RealTimeChannel::OnSendingPDU | ( | H245_OpenLogicalChannel & | openPDU | ) | const`[virtual]`

Fill out the OpenLogicalChannel PDU for the particular channel type.

Parameters:

  openPDU | Open PDU to send.

Implements H323Channel.

virtual void H323_RealTimeChannel::OnSendOpenAck | ( | H245_H2250LogicalChannelAckParameters & | param | ) | const`[virtual]`

Parameters:

  param | Acknowledgement PDU

Reimplemented in H323_RTPChannel.

virtual void H323_RealTimeChannel::OnSendOpenAck | ( | const H245_OpenLogicalChannel & | open,
|  | H245_OpenLogicalChannelAck & | ack |
| ) |  |  | const`[virtual]`

This is called when request to create a channel is received from a remote machine and is about to be acknowledged.

Parameters:

  open | Open PDU
  ack | Acknowledgement PDU

Reimplemented from H323Channel.

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

- channels.h