H323Gatekeeper Class Reference

`#include <gkclient.h>`

Inheritance diagram for H323Gatekeeper:

## Data Structures

struct | AdmissionResponse
class | AlternateInfo
class | InterfaceMonitor

## Public Member Functions

Construction
| H323Gatekeeper (H323EndPoint &endpoint, H323Transport *transport)
| ~H323Gatekeeper ()
Overrides from H323Transactor
virtual PBoolean | WriteTo (H323TransactionPDU &pdu, const H323TransportAddressArray &addresses, PBoolean callback=true)
Overrides from H225_RAS
PBoolean | OnReceiveGatekeeperConfirm (const H225_GatekeeperConfirm &gcf)
PBoolean | OnReceiveGatekeeperReject (const H225_GatekeeperReject &grj)
PBoolean | OnReceiveRegistrationConfirm (const H225_RegistrationConfirm &rcf)
PBoolean | OnReceiveRegistrationReject (const H225_RegistrationReject &rrj)
PBoolean | OnReceiveUnregistrationRequest (const H225_UnregistrationRequest &urq)
PBoolean | OnReceiveUnregistrationConfirm (const H225_UnregistrationConfirm &ucf)
PBoolean | OnReceiveUnregistrationReject (const H225_UnregistrationReject &urj)
PBoolean | OnReceiveAdmissionConfirm (const H225_AdmissionConfirm &acf)
PBoolean | OnReceiveAdmissionReject (const H225_AdmissionReject &arj)
PBoolean | OnReceiveDisengageRequest (const H225_DisengageRequest &drq)
PBoolean | OnReceiveBandwidthConfirm (const H225_BandwidthConfirm &bcf)
PBoolean | OnReceiveBandwidthRequest (const H225_BandwidthRequest &brq)
PBoolean | OnReceiveInfoRequest (const H225_InfoRequest &irq)
PBoolean | OnReceiveServiceControlIndication (const H225_ServiceControlIndication &)
void | OnSendGatekeeperRequest (H225_GatekeeperRequest &grq)
void | OnSendAdmissionRequest (H225_AdmissionRequest &arq)
PBoolean | OnSendFeatureSet (unsigned, H225_FeatureSet &features) const
void | OnReceiveFeatureSet (unsigned, const H225_FeatureSet &features) const
Protocol operations
PBoolean | DiscoverAny ()
PBoolean | DiscoverByName (const PString &identifier)
PBoolean | DiscoverByAddress (const H323TransportAddress &address)
PBoolean | DiscoverByNameAndAddress (const PString &identifier, const H323TransportAddress &address)
PBoolean | RegistrationRequest (PBoolean autoReregister=true, PBoolean didGkDiscovery=false)
PBoolean | UnregistrationRequest (int reason)
PBoolean | LocationRequest (const PString &alias, H323TransportAddress &address)
PBoolean | LocationRequest (const PStringList &aliases, H323TransportAddress &address)
PBoolean | AdmissionRequest (H323Connection &connection, AdmissionResponse &response, PBoolean ignorePreGrantedARQ=false)
PBoolean | DisengageRequest (const H323Connection &connection, unsigned reason)
PBoolean | BandwidthRequest (H323Connection &connection, unsigned requestedBandwidth)
void | InfoRequestResponse ()
void | InfoRequestResponse (const H323Connection &connection)
void | InfoRequestResponse (const H323Connection &connection, const H225_H323_UU_PDU &pdu, PBoolean sent)
virtual void | OnServiceControlSessions (const H225_ArrayOf_ServiceControlSession &serviceControl, H323Connection *connection)
virtual void | OnTerminalAliasChanged ()
Public Member Functions inherited from H225_RAS
void | PrintOn (ostream &strm) const
virtual H323TransactionPDU * | CreateTransactionPDU () const
virtual PBoolean | HandleTransaction (const PASN_Object &rawPDU)
virtual void | OnSendingPDU (PASN_Object &rawPDU)
virtual void | OnSendGatekeeperRequest (H323RasPDU &, H225_GatekeeperRequest &)
virtual void | OnSendGatekeeperConfirm (H323RasPDU &, H225_GatekeeperConfirm &)
virtual void | OnSendGatekeeperReject (H323RasPDU &, H225_GatekeeperReject &)
virtual void | OnSendGatekeeperConfirm (H225_GatekeeperConfirm &)
virtual void | OnSendGatekeeperReject (H225_GatekeeperReject &)
virtual PBoolean | OnReceiveGatekeeperRequest (const H323RasPDU &, const H225_GatekeeperRequest &)
virtual PBoolean | OnReceiveGatekeeperConfirm (const H323RasPDU &, const H225_GatekeeperConfirm &)
virtual PBoolean | OnReceiveGatekeeperReject (const H323RasPDU &, const H225_GatekeeperReject &)
virtual PBoolean | OnReceiveGatekeeperRequest (const H225_GatekeeperRequest &)
virtual void | OnSendRegistrationRequest (H323RasPDU &, H225_RegistrationRequest &)
virtual void | OnSendRegistrationConfirm (H323RasPDU &, H225_RegistrationConfirm &)
virtual void | OnSendRegistrationReject (H323RasPDU &, H225_RegistrationReject &)
virtual void | OnSendRegistrationRequest (H225_RegistrationRequest &)
virtual void | OnSendRegistrationConfirm (H225_RegistrationConfirm &)
virtual void | OnSendRegistrationReject (H225_RegistrationReject &)
virtual PBoolean | OnReceiveRegistrationRequest (const H323RasPDU &, const H225_RegistrationRequest &)
virtual PBoolean | OnReceiveRegistrationConfirm (const H323RasPDU &, const H225_RegistrationConfirm &)
virtual PBoolean | OnReceiveRegistrationReject (const H323RasPDU &, const H225_RegistrationReject &)
virtual PBoolean | OnReceiveRegistrationRequest (const H225_RegistrationRequest &)
virtual void | OnSendUnregistrationRequest (H323RasPDU &, H225_UnregistrationRequest &)
virtual void | OnSendUnregistrationConfirm (H323RasPDU &, H225_UnregistrationConfirm &)
virtual void | OnSendUnregistrationReject (H323RasPDU &, H225_UnregistrationReject &)
virtual void | OnSendUnregistrationRequest (H225_UnregistrationRequest &)
virtual void | OnSendUnregistrationConfirm (H225_UnregistrationConfirm &)
virtual void | OnSendUnregistrationReject (H225_UnregistrationReject &)
virtual PBoolean | OnReceiveUnregistrationRequest (const H323RasPDU &, const H225_UnregistrationRequest &)
virtual PBoolean | OnReceiveUnregistrationConfirm (const H323RasPDU &, const H225_UnregistrationConfirm &)
virtual PBoolean | OnReceiveUnregistrationReject (const H323RasPDU &, const H225_UnregistrationReject &)
virtual void | OnSendAdmissionRequest (H323RasPDU &, H225_AdmissionRequest &)
virtual void | OnSendAdmissionConfirm (H323RasPDU &, H225_AdmissionConfirm &)
virtual void | OnSendAdmissionReject (H323RasPDU &, H225_AdmissionReject &)
virtual void | OnSendAdmissionConfirm (H225_AdmissionConfirm &)
virtual void | OnSendAdmissionReject (H225_AdmissionReject &)
virtual PBoolean | OnReceiveAdmissionRequest (const H323RasPDU &, const H225_AdmissionRequest &)
virtual PBoolean | OnReceiveAdmissionConfirm (const H323RasPDU &, const H225_AdmissionConfirm &)
virtual PBoolean | OnReceiveAdmissionReject (const H323RasPDU &, const H225_AdmissionReject &)
virtual PBoolean | OnReceiveAdmissionRequest (const H225_AdmissionRequest &)
virtual void | OnSendBandwidthRequest (H323RasPDU &, H225_BandwidthRequest &)
virtual void | OnSendBandwidthConfirm (H323RasPDU &, H225_BandwidthConfirm &)
virtual void | OnSendBandwidthReject (H323RasPDU &, H225_BandwidthReject &)
virtual void | OnSendBandwidthRequest (H225_BandwidthRequest &)
virtual void | OnSendBandwidthConfirm (H225_BandwidthConfirm &)
virtual void | OnSendBandwidthReject (H225_BandwidthReject &)
virtual PBoolean | OnReceiveBandwidthRequest (const H323RasPDU &, const H225_BandwidthRequest &)
virtual PBoolean | OnReceiveBandwidthConfirm (const H323RasPDU &, const H225_BandwidthConfirm &)
virtual PBoolean | OnReceiveBandwidthReject (const H323RasPDU &, const H225_BandwidthReject &)
virtual PBoolean | OnReceiveBandwidthReject (const H225_BandwidthReject &)
virtual void | OnSendDisengageRequest (H323RasPDU &, H225_DisengageRequest &)
virtual void | OnSendDisengageConfirm (H323RasPDU &, H225_DisengageConfirm &)
virtual void | OnSendDisengageReject (H323RasPDU &, H225_DisengageReject &)
virtual void | OnSendDisengageRequest (H225_DisengageRequest &)
virtual void | OnSendDisengageConfirm (H225_DisengageConfirm &)
virtual void | OnSendDisengageReject (H225_DisengageReject &)
virtual PBoolean | OnReceiveDisengageRequest (const H323RasPDU &, const H225_DisengageRequest &)
virtual PBoolean | OnReceiveDisengageConfirm (const H323RasPDU &, const H225_DisengageConfirm &)
virtual PBoolean | OnReceiveDisengageReject (const H323RasPDU &, const H225_DisengageReject &)
virtual PBoolean | OnReceiveDisengageConfirm (const H225_DisengageConfirm &)
virtual PBoolean | OnReceiveDisengageReject (const H225_DisengageReject &)
virtual void | OnSendLocationRequest (H323RasPDU &, H225_LocationRequest &)
virtual void | OnSendLocationConfirm (H323RasPDU &, H225_LocationConfirm &)
virtual void | OnSendLocationReject (H323RasPDU &, H225_LocationReject &)
virtual void | OnSendLocationRequest (H225_LocationRequest &)
virtual void | OnSendLocationConfirm (H225_LocationConfirm &)
virtual void | OnSendLocationReject (H225_LocationReject &)
virtual PBoolean | OnReceiveLocationRequest (const H323RasPDU &, const H225_LocationRequest &)
virtual PBoolean | OnReceiveLocationConfirm (const H323RasPDU &, const H225_LocationConfirm &)
virtual PBoolean | OnReceiveLocationReject (const H323RasPDU &, const H225_LocationReject &)
virtual PBoolean | OnReceiveLocationRequest (const H225_LocationRequest &)
virtual PBoolean | OnReceiveLocationConfirm (const H225_LocationConfirm &)
virtual PBoolean | OnReceiveLocationReject (const H225_LocationReject &)
virtual void | OnSendInfoRequest (H323RasPDU &, H225_InfoRequest &)
virtual void | OnSendInfoRequestAck (H323RasPDU &, H225_InfoRequestAck &)
virtual void | OnSendInfoRequestNak (H323RasPDU &, H225_InfoRequestNak &)
virtual void | OnSendInfoRequestResponse (H323RasPDU &, H225_InfoRequestResponse &)
virtual void | OnSendInfoRequest (H225_InfoRequest &)
virtual void | OnSendInfoRequestAck (H225_InfoRequestAck &)
virtual void | OnSendInfoRequestNak (H225_InfoRequestNak &)
virtual void | OnSendInfoRequestResponse (H225_InfoRequestResponse &)
virtual PBoolean | OnReceiveInfoRequest (const H323RasPDU &, const H225_InfoRequest &)
virtual PBoolean | OnReceiveInfoRequestAck (const H323RasPDU &, const H225_InfoRequestAck &)
virtual PBoolean | OnReceiveInfoRequestNak (const H323RasPDU &, const H225_InfoRequestNak &)
virtual PBoolean | OnReceiveInfoRequestResponse (const H323RasPDU &, const H225_InfoRequestResponse &)
virtual PBoolean | OnReceiveInfoRequestAck (const H225_InfoRequestAck &)
virtual PBoolean | OnReceiveInfoRequestNak (const H225_InfoRequestNak &)
virtual PBoolean | OnReceiveInfoRequestResponse (const H225_InfoRequestResponse &)
virtual void | OnSendResourcesAvailableIndicate (H323RasPDU &, H225_ResourcesAvailableIndicate &)
virtual void | OnSendResourcesAvailableConfirm (H323RasPDU &, H225_ResourcesAvailableConfirm &)
virtual void | OnSendResourcesAvailableIndicate (H225_ResourcesAvailableIndicate &)
virtual void | OnSendResourcesAvailableConfirm (H225_ResourcesAvailableConfirm &)
virtual PBoolean | OnReceiveResourcesAvailableIndicate (const H323RasPDU &, const H225_ResourcesAvailableIndicate &)
virtual PBoolean | OnReceiveResourcesAvailableConfirm (const H323RasPDU &, const H225_ResourcesAvailableConfirm &)
virtual PBoolean | OnReceiveResourcesAvailableIndicate (const H225_ResourcesAvailableIndicate &)
virtual PBoolean | OnReceiveResourcesAvailableConfirm (const H225_ResourcesAvailableConfirm &)
virtual void | OnSendServiceControlIndication (H323RasPDU &, H225_ServiceControlIndication &)
virtual void | OnSendServiceControlResponse (H323RasPDU &, H225_ServiceControlResponse &)
virtual void | OnSendServiceControlIndication (H225_ServiceControlIndication &)
virtual void | OnSendServiceControlResponse (H225_ServiceControlResponse &)
virtual PBoolean | OnReceiveServiceControlIndication (const H323RasPDU &, const H225_ServiceControlIndication &)
virtual PBoolean | OnReceiveServiceControlResponse (const H323RasPDU &, const H225_ServiceControlResponse &)
virtual PBoolean | OnReceiveServiceControlResponse (const H225_ServiceControlResponse &)
virtual void | OnSendNonStandardMessage (H323RasPDU &, H225_NonStandardMessage &)
virtual void | OnSendNonStandardMessage (H225_NonStandardMessage &)
virtual PBoolean | OnReceiveNonStandardMessage (const H323RasPDU &, const H225_NonStandardMessage &)
virtual PBoolean | OnReceiveNonStandardMessage (const H225_NonStandardMessage &)
virtual void | OnSendUnknownMessageResponse (H323RasPDU &, H225_UnknownMessageResponse &)
virtual void | OnSendUnknownMessageResponse (H225_UnknownMessageResponse &)
virtual PBoolean | OnReceiveUnknownMessageResponse (const H323RasPDU &, const H225_UnknownMessageResponse &)
virtual PBoolean | OnReceiveUnknownMessageResponse (const H225_UnknownMessageResponse &)
virtual void | OnSendRequestInProgress (H323RasPDU &, H225_RequestInProgress &)
virtual void | OnSendRequestInProgress (H225_RequestInProgress &)
virtual PBoolean | OnReceiveRequestInProgress (const H323RasPDU &, const H225_RequestInProgress &)
virtual PBoolean | OnReceiveRequestInProgress (const H225_RequestInProgress &)
virtual PBoolean | OnReceiveUnknown (const H323RasPDU &pdu)
const PString & | GetIdentifier () const
void | SetIdentifier (const PString &id)
| H225_RAS (H323EndPoint &endpoint, H323Transport *transport)
| ~H225_RAS ()
Public Member Functions inherited from H323Transactor
| H323Transactor (H323EndPoint &endpoint, H323Transport *transport, WORD localPort, WORD remotePort)
| H323Transactor (H323EndPoint &endpoint, const H323TransportAddress &iface, WORD localPort, WORD remotePort)
| ~H323Transactor ()
void | PrintOn (ostream &strm) const
PBoolean | SetTransport (const H323TransportAddress &iface)
H323TransportAddressArray | GetInterfaceAddresses (bool excludeLocalHost=true)
virtual PBoolean | StartChannel ()
virtual void | StopChannel ()
virtual PBoolean | WritePDU (H323TransactionPDU &pdu)
H323EndPoint & | GetEndPoint () const
H323Transport & | GetTransport () const
void | SetCheckResponseCryptoTokens (PBoolean value)
PBoolean | GetCheckResponseCryptoTokens ()

## Protected Types

enum | { HighPriority = 80, LowPriority = 40 }
enum | { RequireARQ, PregrantARQ, PreGkRoutedARQ }

## Protected Member Functions

bool | StartGatekeeper (const H323TransportAddress &address)
virtual bool | DiscoverGatekeeper ()
unsigned | SetupGatekeeperRequest (H323RasPDU &request)
void | Connect (const H323TransportAddress &address, const PString &gatekeeperIdentifier)
| PDECLARE_NOTIFIER (PThread, H323Gatekeeper, MonitorMain)
| PDECLARE_NOTIFIER (PTimer, H323Gatekeeper, TickleMonitor)
void | RegistrationTimeToLive ()
void | SetInfoRequestRate (const PTimeInterval &rate)
void | ClearInfoRequestRate ()
H225_InfoRequestResponse & | BuildInfoRequestResponse (H323RasPDU &response, unsigned seqNum)
PBoolean | SendUnsolicitedIRR (H225_InfoRequestResponse &irr, H323RasPDU &response)
void | SetAlternates (const H225_ArrayOf_AlternateGK &alts, PBoolean permanent)
virtual PBoolean | MakeRequest (Request &request)
PBoolean | MakeRequestWithReregister (Request &request, unsigned unregisteredTag)
virtual H323Transport * | CreateTransport (PIPSocket::Address bindng=PIPSocket::GetDefaultIpAny(), WORD port=0, PBoolean reuseAddr=false)
void | OnAddInterface (const PIPSocket::InterfaceEntry &entry, PINDEX priority)
void | OnRemoveInterface (const PIPSocket::InterfaceEntry &entry, PINDEX priority)
void | UpdateConnectionStatus ()
bool | SetListenerAddresses (H225_ArrayOf_TransportAddress &pdu)
Protected Member Functions inherited from H323Transactor
void | Construct ()
unsigned | GetNextSequenceNumber ()
PBoolean | SetUpCallSignalAddresses (H225_ArrayOf_TransportAddress &addresses)
| PDECLARE_NOTIFIER (PThread, H323Transactor, HandleTransactions)
PBoolean | CheckForResponse (unsigned, unsigned, const PASN_Choice *=NULL)
PBoolean | HandleRequestInProgress (const H323TransactionPDU &pdu, unsigned delay)
PBoolean | CheckCryptoTokens (const H323TransactionPDU &pdu, const PASN_Array &clearTokens, unsigned clearOptionalField, const PASN_Array &cryptoTokens, unsigned cryptoOptionalField)
void | AgeResponses ()
PBoolean | SendCachedResponse (const H323TransactionPDU &pdu)

## Protected Attributes

PBoolean | discoveryComplete
PString | endpointIdentifier
RegistrationFailReasons | registrationFailReason
InterfaceMonitor | highPriorityMonitor
InterfaceMonitor | lowPriorityMonitor
PSortedList< AlternateInfo > | alternates
PBoolean | alternatePermanent
PSemaphore | requestMutex
H235Authenticators | authenticators
enum H323Gatekeeper:: { ... } | pregrantMakeCall
enum H323Gatekeeper:: { ... } | pregrantAnswerCall
H323TransportAddress | gkRouteAddress
PBoolean | autoReregister
PBoolean | reregisterNow
PTimer | timeToLive
PBoolean | requiresDiscovery
PTimer | infoRequestRate
PBoolean | willRespondToIRR
PThread * | monitor
PBoolean | monitorStop
PSyncPoint | monitorTickle
PDictionary< POrdinalKey, H323ServiceControlSession > | serviceControlSessions
H460_FeatureSet * | features
Protected Attributes inherited from H225_RAS
PString | gatekeeperIdentifier
Protected Attributes inherited from H323Transactor
H323EndPoint & | endpoint
WORD | defaultLocalPort
WORD | defaultRemotePort
H323Transport * | transport
PBoolean | checkResponseCryptoTokens
unsigned | nextSequenceNumber
PMutex | nextSequenceNumberMutex
PDictionary< POrdinalKey, Request > | requests
PMutex | requestsMutex
Request * | lastRequest
PMutex | pduWriteMutex
PSortedList< Response > | responses

## Member variable access

enum | RegistrationFailReasons { RegistrationSuccessful, UnregisteredLocally, UnregisteredByGatekeeper, GatekeeperLostRegistration, InvalidListener, DuplicateAlias, SecurityDenied, TransportError, NumRegistrationFailReasons, RegistrationRejectReasonMask = 0x8000 }
PBoolean | IsDiscoveryComplete () const
PBoolean | IsRegistered () const
RegistrationFailReasons | GetRegistrationFailReason () const
PString | GetName () const
const PString & | GetEndpointIdentifier () const
void | SetPassword (const PString &password, const PString &username=PString())
H323TransportAddress | GetGatekeeperRouteAddress () const

## Additional Inherited Members

Public Types inherited from H225_RAS
enum | { DefaultRasMulticastPort = 1718, DefaultRasUdpPort = 1719 }

## Detailed Description

This class embodies the H.225.0 RAS protocol to gatekeepers.

## Member Enumeration Documentation

anonymous enum

protected

Enumerator
HighPriority |
LowPriority |

anonymous enum

protected

Enumerator
RequireARQ |
PregrantARQ |
PreGkRoutedARQ |

enum H323Gatekeeper::RegistrationFailReasons

Enumerator
RegistrationSuccessful |
UnregisteredLocally |
UnregisteredByGatekeeper |
GatekeeperLostRegistration |
InvalidListener |
DuplicateAlias |
SecurityDenied |
TransportError |
NumRegistrationFailReasons |
RegistrationRejectReasonMask |

## Constructor & Destructor Documentation

H323Gatekeeper::H323Gatekeeper | ( | H323EndPoint & | endpoint,
|  | H323Transport * | transport
| ) |  |

Create a new gatekeeper.

Parameters

  endpoint | Endpoint gatekeeper is associated with.
  transport | Transport over which gatekeepers communicates.

H323Gatekeeper::~H323Gatekeeper | ( |  | ) |

Destroy gatekeeper.

## Member Function Documentation

PBoolean H323Gatekeeper::AdmissionRequest | ( | H323Connection & | connection,
|  | AdmissionResponse & | response,
|  | PBoolean | ignorePreGrantedARQ = `false`
| ) |  |

Admission request to gatekeeper.

Parameters

  connection | Connection we wish to change.
  response | Response parameters to ARQ
  ignorePreGrantedARQ | Flag to force ARQ to be sent

PBoolean H323Gatekeeper::BandwidthRequest | ( | H323Connection & | connection,
|  | unsigned | requestedBandwidth
| ) |  |

Bandwidth request to gatekeeper.

Parameters

  connection | Connection we wish to change.
  requestedBandwidth | New bandwidth wanted in 0.1kbps

H225_InfoRequestResponse& H323Gatekeeper::BuildInfoRequestResponse | ( | H323RasPDU & | response,
|  | unsigned | seqNum
| ) |  |

protected

void H323Gatekeeper::ClearInfoRequestRate | ( |  | ) |

protected

void H323Gatekeeper::Connect | ( | const H323TransportAddress & | address,
|  | const PString & | gatekeeperIdentifier
| ) |  |

protected

virtual H323Transport* H323Gatekeeper::CreateTransport | ( | PIPSocket::Address | bindng = `PIPSocket::GetDefaultIpAny()`,
|  | WORD | port = `0`,
|  | PBoolean | reuseAddr = `false`
| ) |  |

protected virtual

PBoolean H323Gatekeeper::DiscoverAny | ( |  | ) |

Discover a gatekeeper on the local network.

PBoolean H323Gatekeeper::DiscoverByAddress | ( | const H323TransportAddress & | address | ) |

Discover a gatekeeper on the local network. If the address string is empty then the first gatekeeper to respond to a broadcast is used.

Parameters

  address | Address of gatekeeper.

PBoolean H323Gatekeeper::DiscoverByName | ( | const PString & | identifier | ) |

Discover a gatekeeper on the local network. If the identifier string is empty then the first gatekeeper to respond to a broadcast is used.

Parameters

  identifier | Gatekeeper identifier to find

PBoolean H323Gatekeeper::DiscoverByNameAndAddress | ( | const PString & | identifier,
|  | const H323TransportAddress & | address
| ) |  |

Discover a gatekeeper on the local network. Combination of DiscoverByName() and DiscoverByAddress().

virtual bool H323Gatekeeper::DiscoverGatekeeper | ( |  | ) |

protected virtual

PBoolean H323Gatekeeper::DisengageRequest | ( | const H323Connection & | connection,
|  | unsigned | reason
| ) |  |

Disengage request to gatekeeper.

Parameters

  connection | Connection we wish admitted.
  reason | Reason code for disengage

const PString& H323Gatekeeper::GetEndpointIdentifier | ( |  | ) | const

inline

Get the endpoint identifier

References endpointIdentifier.

H323TransportAddress H323Gatekeeper::GetGatekeeperRouteAddress | ( |  | ) | const

inline

References gkRouteAddress.

PString H323Gatekeeper::GetName | ( |  | ) | const

Get the gatekeeper name. The gets the name of the gatekeeper. It will be of the form id where id is the gatekeeperIdentifier and address is the transport address used. If the gatekeeperIdentifier is empty the '@' is not included and only the transport is shown. The transport is minimised also, with the type removed if IP is used and the :port removed if the default port is used.

RegistrationFailReasons H323Gatekeeper::GetRegistrationFailReason | ( |  | ) | const

inline

Get the registration fail reason.

References registrationFailReason.

void H323Gatekeeper::InfoRequestResponse | ( |  | ) |

Send an unsolicited info response to the gatekeeper.

void H323Gatekeeper::InfoRequestResponse | ( | const H323Connection & | connection | ) |

Send an unsolicited info response to the gatekeeper.

Parameters

  connection | Connection to send info about

void H323Gatekeeper::InfoRequestResponse | ( | const H323Connection & | connection,
|  | const H225_H323_UU_PDU & | pdu,
|  | PBoolean | sent
| ) |  |

Send an unsolicited info response to the gatekeeper.

Parameters

  connection | Connection to send info about
  pdu | PDU that was sent or received
  sent | Flag for PDU was sent or received

PBoolean H323Gatekeeper::IsDiscoveryComplete | ( |  | ) | const

inline

Determine if the endpoint has discovered the gatekeeper.

References discoveryComplete.

PBoolean H323Gatekeeper::IsRegistered | ( |  | ) | const

inline

Determine if the endpoint is registered with the gatekeeper.

References registrationFailReason, and RegistrationSuccessful.

PBoolean H323Gatekeeper::LocationRequest | ( | const PString & | alias,
|  | H323TransportAddress & | address
| ) |  |

Location request to gatekeeper.

Parameters

  alias | Alias name we wish to find.
  address | Resultant transport address.

PBoolean H323Gatekeeper::LocationRequest | ( | const PStringList & | aliases,
|  | H323TransportAddress & | address
| ) |  |

Location request to gatekeeper.

Parameters

  aliases | Alias names we wish to find.
  address | Resultant transport address.

virtual PBoolean H323Gatekeeper::MakeRequest | ( | Request & | request | ) |

protected virtual

Reimplemented from H323Transactor.

PBoolean H323Gatekeeper::MakeRequestWithReregister | ( | Request & | request,
|  | unsigned | unregisteredTag
| ) |  |

protected

void H323Gatekeeper::OnAddInterface | ( | const PIPSocket::InterfaceEntry & | entry,
|  | PINDEX | priority
| ) |  |

protected

PBoolean H323Gatekeeper::OnReceiveAdmissionConfirm | ( | const H225_AdmissionConfirm & | acf | ) |

virtual

Reimplemented from H225_RAS.

PBoolean H323Gatekeeper::OnReceiveAdmissionReject | ( | const H225_AdmissionReject & | arj | ) |

virtual

Reimplemented from H225_RAS.

PBoolean H323Gatekeeper::OnReceiveBandwidthConfirm | ( | const H225_BandwidthConfirm & | bcf | ) |

virtual

Reimplemented from H225_RAS.

PBoolean H323Gatekeeper::OnReceiveBandwidthRequest | ( | const H225_BandwidthRequest & | brq | ) |

virtual

Reimplemented from H225_RAS.

PBoolean H323Gatekeeper::OnReceiveDisengageRequest | ( | const H225_DisengageRequest & | drq | ) |

virtual

Reimplemented from H225_RAS.

void H323Gatekeeper::OnReceiveFeatureSet | ( | unsigned | ,
|  | const H225_FeatureSet & | features
| ) |  | const

virtual

Reimplemented from H225_RAS.

PBoolean H323Gatekeeper::OnReceiveGatekeeperConfirm | ( | const H225_GatekeeperConfirm & | gcf | ) |

virtual

Reimplemented from H225_RAS.

PBoolean H323Gatekeeper::OnReceiveGatekeeperReject | ( | const H225_GatekeeperReject & | grj | ) |

virtual

Reimplemented from H225_RAS.

PBoolean H323Gatekeeper::OnReceiveInfoRequest | ( | const H225_InfoRequest & | irq | ) |

virtual

Reimplemented from H225_RAS.

PBoolean H323Gatekeeper::OnReceiveRegistrationConfirm | ( | const H225_RegistrationConfirm & | rcf | ) |

virtual

Reimplemented from H225_RAS.

PBoolean H323Gatekeeper::OnReceiveRegistrationReject | ( | const H225_RegistrationReject & | rrj | ) |

virtual

Reimplemented from H225_RAS.

PBoolean H323Gatekeeper::OnReceiveServiceControlIndication | ( | const H225_ServiceControlIndication & |  | ) |

virtual

Reimplemented from H225_RAS.

PBoolean H323Gatekeeper::OnReceiveUnregistrationConfirm | ( | const H225_UnregistrationConfirm & | ucf | ) |

virtual

Reimplemented from H225_RAS.

PBoolean H323Gatekeeper::OnReceiveUnregistrationReject | ( | const H225_UnregistrationReject & | urj | ) |

virtual

Reimplemented from H225_RAS.

PBoolean H323Gatekeeper::OnReceiveUnregistrationRequest | ( | const H225_UnregistrationRequest & | urq | ) |

virtual

Reimplemented from H225_RAS.

void H323Gatekeeper::OnRemoveInterface | ( | const PIPSocket::InterfaceEntry & | entry,
|  | PINDEX | priority
| ) |  |

protected

void H323Gatekeeper::OnSendAdmissionRequest | ( | H225_AdmissionRequest & | arq | ) |

virtual

Reimplemented from H225_RAS.

PBoolean H323Gatekeeper::OnSendFeatureSet | ( | unsigned | ,
|  | H225_FeatureSet & | features
| ) |  | const

virtual

Reimplemented from H225_RAS.

void H323Gatekeeper::OnSendGatekeeperRequest | ( | H225_GatekeeperRequest & | grq | ) |

virtual

Reimplemented from H225_RAS.

virtual void H323Gatekeeper::OnServiceControlSessions | ( | const H225_ArrayOf_ServiceControlSession & | serviceControl,
|  | H323Connection * | connection
| ) |  |

virtual

Handle incoming service control session information.

virtual void H323Gatekeeper::OnTerminalAliasChanged | ( |  | ) |

virtual

Handle terminal alias changes

H323Gatekeeper::PDECLARE_NOTIFIER | ( | PThread | ,
|  | H323Gatekeeper | ,
|  | MonitorMain |
| ) |  |

protected

H323Gatekeeper::PDECLARE_NOTIFIER | ( | PTimer | ,
|  | H323Gatekeeper | ,
|  | TickleMonitor |
| ) |  |

protected

PBoolean H323Gatekeeper::RegistrationRequest | ( | PBoolean | autoReregister = `true`,
|  | PBoolean | didGkDiscovery = `false`
| ) |  |

Register with gatekeeper.

Parameters

  autoReregister | Automatic register on unregister
  didGkDiscovery | discovery procedure was done right before

void H323Gatekeeper::RegistrationTimeToLive | ( |  | ) |

protected

PBoolean H323Gatekeeper::SendUnsolicitedIRR | ( | H225_InfoRequestResponse & | irr,
|  | H323RasPDU & | response
| ) |  |

protected

void H323Gatekeeper::SetAlternates | ( | const H225_ArrayOf_AlternateGK & | alts,
|  | PBoolean | permanent
| ) |  |

protected

void H323Gatekeeper::SetInfoRequestRate | ( | const PTimeInterval & | rate | ) |

protected

bool H323Gatekeeper::SetListenerAddresses | ( | H225_ArrayOf_TransportAddress & | pdu | ) |

protected

void H323Gatekeeper::SetPassword | ( | const PString & | password,
|  | const PString & | username = `PString()`
| ) |  |

Set the H.235 password in the gatekeeper. If no username is present then it will default to the endpoint local user name (ie first alias).

Parameters

  password | New password
  username | Username for password

unsigned H323Gatekeeper::SetupGatekeeperRequest | ( | H323RasPDU & | request | ) |

protected

bool H323Gatekeeper::StartGatekeeper | ( | const H323TransportAddress & | address | ) |

protected

PBoolean H323Gatekeeper::UnregistrationRequest | ( | int | reason | ) |

Unregister with gatekeeper.

Parameters

  reason | Reason for unregistration

void H323Gatekeeper::UpdateConnectionStatus | ( |  | ) |

protected

virtual PBoolean H323Gatekeeper::WriteTo | ( | H323TransactionPDU & | pdu,
|  | const H323TransportAddressArray & | addresses,
|  | PBoolean | callback = `true`
| ) |  |

virtual

Write PDU to transport after executing callback.

Reimplemented from H323Transactor.

## Field Documentation

PBoolean H323Gatekeeper::alternatePermanent

protected

PSortedList<AlternateInfo> H323Gatekeeper::alternates

protected

H235Authenticators H323Gatekeeper::authenticators

protected

PBoolean H323Gatekeeper::autoReregister

protected

PBoolean H323Gatekeeper::discoveryComplete

protected

Referenced by IsDiscoveryComplete().

PString H323Gatekeeper::endpointIdentifier

protected

Referenced by GetEndpointIdentifier().

H460_FeatureSet* H323Gatekeeper::features

protected

H323TransportAddress H323Gatekeeper::gkRouteAddress

protected

Referenced by GetGatekeeperRouteAddress().

InterfaceMonitor H323Gatekeeper::highPriorityMonitor

protected

PTimer H323Gatekeeper::infoRequestRate

protected

InterfaceMonitor H323Gatekeeper::lowPriorityMonitor

protected

PThread* H323Gatekeeper::monitor

protected

PBoolean H323Gatekeeper::monitorStop

protected

PSyncPoint H323Gatekeeper::monitorTickle

protected

enum { ... } H323Gatekeeper::pregrantAnswerCall

enum { ... } H323Gatekeeper::pregrantMakeCall

RegistrationFailReasons H323Gatekeeper::registrationFailReason

protected

Referenced by GetRegistrationFailReason(), and IsRegistered().

PSemaphore H323Gatekeeper::requestMutex

protected

PBoolean H323Gatekeeper::requiresDiscovery

protected

PBoolean H323Gatekeeper::reregisterNow

protected

PDictionary<POrdinalKey, H323ServiceControlSession> H323Gatekeeper::serviceControlSessions

protected

PTimer H323Gatekeeper::timeToLive

protected

PBoolean H323Gatekeeper::willRespondToIRR

protected

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

- gkclient.h