OPAL  Version 3.10.10
H323Gatekeeper Class Reference

#include <gkclient.h>

Inheritance diagram for H323Gatekeeper:
H225_RAS H323Transactor

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 H323TransactionPDUCreateTransactionPDU () 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)
 
H323EndPointGetEndPoint () const
 
H323TransportGetTransport () 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 H323TransportCreateTransport (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< AlternateInfoalternates
 
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, H323ServiceControlSessionserviceControlSessions
 
H460_FeatureSetfeatures
 
- Protected Attributes inherited from H225_RAS
PString gatekeeperIdentifier
 
- Protected Attributes inherited from H323Transactor
H323EndPointendpoint
 
WORD defaultLocalPort
 
WORD defaultRemotePort
 
H323Transporttransport
 
PBoolean checkResponseCryptoTokens
 
unsigned nextSequenceNumber
 
PMutex nextSequenceNumberMutex
 
PDictionary< POrdinalKey, Requestrequests
 
PMutex requestsMutex
 
RequestlastRequest
 
PMutex pduWriteMutex
 
PSortedList< Responseresponses
 

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 
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
endpointEndpoint gatekeeper is associated with.
transportTransport 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
connectionConnection we wish to change.
responseResponse parameters to ARQ
ignorePreGrantedARQFlag to force ARQ to be sent
PBoolean H323Gatekeeper::BandwidthRequest ( H323Connection connection,
unsigned  requestedBandwidth 
)

Bandwidth request to gatekeeper.

Parameters
connectionConnection we wish to change.
requestedBandwidthNew 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 
)
protectedvirtual
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
addressAddress 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
identifierGatekeeper 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 ( )
protectedvirtual
PBoolean H323Gatekeeper::DisengageRequest ( const H323Connection connection,
unsigned  reason 
)

Disengage request to gatekeeper.

Parameters
connectionConnection we wish admitted.
reasonReason 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
connectionConnection 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
connectionConnection to send info about
pduPDU that was sent or received
sentFlag 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
aliasAlias name we wish to find.
addressResultant transport address.
PBoolean H323Gatekeeper::LocationRequest ( const PStringList &  aliases,
H323TransportAddress address 
)

Location request to gatekeeper.

Parameters
aliasesAlias names we wish to find.
addressResultant transport address.
virtual PBoolean H323Gatekeeper::MakeRequest ( Request request)
protectedvirtual

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
autoReregisterAutomatic register on unregister
didGkDiscoverydiscovery 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
passwordNew password
usernameUsername for password
unsigned H323Gatekeeper::SetupGatekeeperRequest ( H323RasPDU request)
protected
bool H323Gatekeeper::StartGatekeeper ( const H323TransportAddress address)
protected
PBoolean H323Gatekeeper::UnregistrationRequest ( int  reason)

Unregister with gatekeeper.

Parameters
reasonReason 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
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
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: