H323GatekeeperCall Class Reference

`#include <gkserver.h>`

Inheritance diagram for H323GatekeeperCall:

## Public Member Functions

Overrides from PObject
Comparison | Compare (const PObject &obj) const
void | PrintOn (ostream &strm) const
Operations
virtual H323GatekeeperRequest::Response | OnAdmission (H323GatekeeperARQ &request)
virtual PBoolean | Disengage (int reason=-1)
virtual H323GatekeeperRequest::Response | OnDisengage (H323GatekeeperDRQ &request)
virtual H323GatekeeperRequest::Response | OnBandwidth (H323GatekeeperBRQ &request)
virtual H323GatekeeperRequest::Response | OnInfoResponse (H323GatekeeperIRR &request, H225_InfoRequestResponse_perCallInfo_subtype &call)
virtual void | OnAlerting ()
virtual void | OnConnected ()
virtual PBoolean | OnHeartbeat ()
virtual PString | GetCallCreditAmount () const
virtual PBoolean | GetCallCreditMode () const
virtual unsigned | GetDurationLimit () const
virtual PBoolean | SendCallCreditServiceControl ()
PBoolean | AddCallCreditServiceControl (H225_ArrayOf_ServiceControlSession &serviceControl) const
virtual PBoolean | SendServiceControlSession (const H323ServiceControlSession &session)
virtual PBoolean | TranslateAliasAddress (const H225_AliasAddress &alias, H225_ArrayOf_AliasAddress &aliases, H323TransportAddress &address, PBoolean &isGkRouted)
Access functions
H323GatekeeperServer & | GetGatekeeper () const
H323RegisteredEndPoint & | GetEndPoint () const
PBoolean | IsAnsweringCall () const
unsigned | GetCallReference () const
const OpalGloballyUniqueID & | GetCallIdentifier () const
const OpalGloballyUniqueID & | GetConferenceIdentifier () const
const PString & | GetSourceNumber () const
const PStringArray & | GetSourceAliases () const
const H323TransportAddress & | GetSourceHost () const
PString | GetSourceAddress () const
const PString & | GetDestinationNumber () const
const PStringArray & | GetDestinationAliases () const
const H323TransportAddress & | GetDestinationHost () const
PString | GetDestinationAddress () const
unsigned | GetBandwidthUsed () const
PBoolean | SetBandwidthUsed (unsigned bandwidth)
const PTime & | GetLastInfoResponseTime () const
const PTime & | GetCallStartTime () const
const PTime & | GetAlertingTime () const
const PTime & | GetConnectedTime () const
const PTime & | GetCallEndTime () const
H323Connection::CallEndReason | GetCallEndReason () const

## Protected Member Functions

void | SetUsageInfo (const H225_RasUsageInformation &usage)

## Protected Attributes

H323GatekeeperServer & | gatekeeper
H323RegisteredEndPoint * | endpoint
H323GatekeeperListener * | rasChannel
Direction | direction
unsigned | callReference
OpalGloballyUniqueID | callIdentifier
OpalGloballyUniqueID | conferenceIdentifier
PString | srcNumber
PStringArray | srcAliases
H323TransportAddress | srcHost
PString | dstNumber
PStringArray | dstAliases
H323TransportAddress | dstHost
unsigned | bandwidthUsed
unsigned | infoResponseRate
PTime | lastInfoResponse
PBoolean | drqReceived
PTime | callStartTime
PTime | alertingTime
PTime | connectedTime
PTime | callEndTime
H323Connection::CallEndReason | callEndReason

## Construction

enum | Direction { AnsweringCall, OriginatingCall, UnknownDirection }
| H323GatekeeperCall (H323GatekeeperServer &server, const OpalGloballyUniqueID &callIdentifier, Direction direction)
| ~H323GatekeeperCall ()

## Detailed Description

This class describes an active call on a gatekeeper.

## Member Enumeration Documentation

enum H323GatekeeperCall::Direction

Enumerator
AnsweringCall |
OriginatingCall |
UnknownDirection |

## Constructor & Destructor Documentation

H323GatekeeperCall::H323GatekeeperCall | ( | H323GatekeeperServer & | server,
|  | const OpalGloballyUniqueID & | callIdentifier,
|  | Direction | direction
| ) |  |

Create a new gatekeeper call tracking record.

Parameters

  server | Owner gatekeeper server
  callIdentifier | Unique call identifier
  direction | Direction of call

H323GatekeeperCall::~H323GatekeeperCall | ( |  | ) |

Destroy the call, removing itself from the endpoint.

## Member Function Documentation

PBoolean H323GatekeeperCall::AddCallCreditServiceControl | ( | H225_ArrayOf_ServiceControlSession & | serviceControl | ) | const

Add call credit and duration information to PDU.

Comparison H323GatekeeperCall::Compare | ( | const PObject & | obj | ) | const

Compare two objects.

Parameters

  obj | Other object

virtual PBoolean H323GatekeeperCall::Disengage | ( | int | reason = `-1` | ) |

virtual

Shut down a call. This sendsa DRQ to the endpoint(s) to close the call down.

Parameters

  reason | Reason for disengage

const PTime& H323GatekeeperCall::GetAlertingTime | ( |  | ) | const

inline

References alertingTime.

unsigned H323GatekeeperCall::GetBandwidthUsed | ( |  | ) | const

inline

References bandwidthUsed.

virtual PString H323GatekeeperCall::GetCallCreditAmount | ( |  | ) | const

virtual

Get the current credit for this call. This function is only called if the client indicates that it can use the information provided.

The default behaviour calls the same function on the endpoint.

virtual PBoolean H323GatekeeperCall::GetCallCreditMode | ( |  | ) | const

virtual

Get the call credit billing mode for this endpoint. This function is only called if the client indicates that it can use the information provided.

The default behaviour calls the same function on the endpoint.

H323Connection::CallEndReason H323GatekeeperCall::GetCallEndReason | ( |  | ) | const

inline

References callEndReason.

const PTime& H323GatekeeperCall::GetCallEndTime | ( |  | ) | const

inline

References callEndTime.

const OpalGloballyUniqueID& H323GatekeeperCall::GetCallIdentifier | ( |  | ) | const

inline

References callIdentifier.

unsigned H323GatekeeperCall::GetCallReference | ( |  | ) | const

inline

References callReference.

const PTime& H323GatekeeperCall::GetCallStartTime | ( |  | ) | const

inline

References callStartTime.

const OpalGloballyUniqueID& H323GatekeeperCall::GetConferenceIdentifier | ( |  | ) | const

inline

References conferenceIdentifier.

const PTime& H323GatekeeperCall::GetConnectedTime | ( |  | ) | const

inline

References connectedTime.

PString H323GatekeeperCall::GetDestinationAddress | ( |  | ) | const

const PStringArray& H323GatekeeperCall::GetDestinationAliases | ( |  | ) | const

inline

References dstAliases.

const H323TransportAddress& H323GatekeeperCall::GetDestinationHost | ( |  | ) | const

inline

References dstHost.

const PString& H323GatekeeperCall::GetDestinationNumber | ( |  | ) | const

inline

References dstNumber.

virtual unsigned H323GatekeeperCall::GetDurationLimit | ( |  | ) | const

virtual

Get the duration limit for this call. This function is only called if the client indicates that it can use the information provided.

The default behaviour returns zero which indicates there is no duration limit applicable.

H323RegisteredEndPoint& H323GatekeeperCall::GetEndPoint | ( |  | ) | const

inline

References endpoint.

H323GatekeeperServer& H323GatekeeperCall::GetGatekeeper | ( |  | ) | const

inline

References gatekeeper.

const PTime& H323GatekeeperCall::GetLastInfoResponseTime | ( |  | ) | const

inline

References lastInfoResponse.

PString H323GatekeeperCall::GetSourceAddress | ( |  | ) | const

const PStringArray& H323GatekeeperCall::GetSourceAliases | ( |  | ) | const

inline

References srcAliases.

const H323TransportAddress& H323GatekeeperCall::GetSourceHost | ( |  | ) | const

inline

References srcHost.

const PString& H323GatekeeperCall::GetSourceNumber | ( |  | ) | const

inline

References srcNumber.

PBoolean H323GatekeeperCall::IsAnsweringCall | ( |  | ) | const

inline

References AnsweringCall, and direction.

virtual H323GatekeeperRequest::Response H323GatekeeperCall::OnAdmission | ( | H323GatekeeperARQ & | request | ) |

virtual

Handle an admission ARQ PDU. The default behaviour sets some internal variables from the ARQ data and then calls OnResolveAdmission, if necessary, and OnReplyAdmission every time.

virtual void H323GatekeeperCall::OnAlerting | ( |  | ) |

virtual

Call back when an info response detects an Alerting.

virtual H323GatekeeperRequest::Response H323GatekeeperCall::OnBandwidth | ( | H323GatekeeperBRQ & | request | ) |

virtual

Handle a bandwidth BRQ PDU. The default behaviour adjusts the bandwidth used by the gatekeeper and adjusts the remote endpoint according to those limits.

virtual void H323GatekeeperCall::OnConnected | ( |  | ) |

virtual

Call back when an info response detects an Connected.

virtual H323GatekeeperRequest::Response H323GatekeeperCall::OnDisengage | ( | H323GatekeeperDRQ & | request | ) |

virtual

Handle a disengage DRQ PDU. The default behaviour simply returns true.

virtual PBoolean H323GatekeeperCall::OnHeartbeat | ( |  | ) |

virtual

Function called to do heartbeat check of the call. Monitor the state of the call and make sure everything is OK.

A return value of false indicates the call is to be closed for some reason.

Default behaviour checks the time since the last received IRR and if it has been too long does an IRQ to see if the call (and endpoint!) is still there and running. If the IRQ fails, false is returned.

virtual H323GatekeeperRequest::Response H323GatekeeperCall::OnInfoResponse | ( | H323GatekeeperIRR & | request,
|  | H225_InfoRequestResponse_perCallInfo_subtype & | call
| ) |  |

virtual

Handle an info request response IRR PDU. The default behaviour resets the heartbeat time monitoring the call.

void H323GatekeeperCall::PrintOn | ( | ostream & | strm | ) | const

Print the name of the gatekeeper.

Parameters

  strm | Stream to print to.

virtual PBoolean H323GatekeeperCall::SendCallCreditServiceControl | ( |  | ) |

virtual

Send the call credit service control PDU. This will send an SCI pdu to the endpoint with the control service session information for the current call credit, if enabled.

virtual PBoolean H323GatekeeperCall::SendServiceControlSession | ( | const H323ServiceControlSession & | session | ) |

virtual

Send the service control session for the PDU. This will send an SCI pdu to the endpoint with the control service session information provided.

PBoolean H323GatekeeperCall::SetBandwidthUsed | ( | unsigned | bandwidth | ) |

void H323GatekeeperCall::SetUsageInfo | ( | const H225_RasUsageInformation & | usage | ) |

protected

virtual PBoolean H323GatekeeperCall::TranslateAliasAddress | ( | const H225_AliasAddress & | alias,
|  | H225_ArrayOf_AliasAddress & | aliases,
|  | H323TransportAddress & | address,
|  | PBoolean & | isGkRouted
| ) |  |

virtual

Translate a given alias to an alias set and signal address. This is called by the OnAdmission() handler to fill in the ACF

The default behaviour calls H323GatekeeperServer::TranslateAliasAddress.

## Field Documentation

PTime H323GatekeeperCall::alertingTime

protected

Referenced by GetAlertingTime().

unsigned H323GatekeeperCall::bandwidthUsed

protected

Referenced by GetBandwidthUsed().

H323Connection::CallEndReason H323GatekeeperCall::callEndReason

protected

Referenced by GetCallEndReason().

PTime H323GatekeeperCall::callEndTime

protected

Referenced by GetCallEndTime().

OpalGloballyUniqueID H323GatekeeperCall::callIdentifier

protected

Referenced by GetCallIdentifier().

unsigned H323GatekeeperCall::callReference

protected

Referenced by GetCallReference().

PTime H323GatekeeperCall::callStartTime

protected

Referenced by GetCallStartTime().

OpalGloballyUniqueID H323GatekeeperCall::conferenceIdentifier

protected

Referenced by GetConferenceIdentifier().

PTime H323GatekeeperCall::connectedTime

protected

Referenced by GetConnectedTime().

Direction H323GatekeeperCall::direction

protected

Referenced by IsAnsweringCall().

PBoolean H323GatekeeperCall::drqReceived

protected

PStringArray H323GatekeeperCall::dstAliases

protected

Referenced by GetDestinationAliases().

H323TransportAddress H323GatekeeperCall::dstHost

protected

Referenced by GetDestinationHost().

PString H323GatekeeperCall::dstNumber

protected

Referenced by GetDestinationNumber().

H323RegisteredEndPoint* H323GatekeeperCall::endpoint

protected

Referenced by GetEndPoint().

H323GatekeeperServer& H323GatekeeperCall::gatekeeper

protected

Referenced by GetGatekeeper().

unsigned H323GatekeeperCall::infoResponseRate

protected

PTime H323GatekeeperCall::lastInfoResponse

protected

Referenced by GetLastInfoResponseTime().

H323GatekeeperListener* H323GatekeeperCall::rasChannel

protected

PStringArray H323GatekeeperCall::srcAliases

protected

Referenced by GetSourceAliases().

H323TransportAddress H323GatekeeperCall::srcHost

protected

Referenced by GetSourceHost().

PString H323GatekeeperCall::srcNumber

protected

Referenced by GetSourceNumber().

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

- gkserver.h