class H323RegisteredEndPoint

This class describes endpoints that are registered with a gatekeeper server.

Inheritance:


Public Methods

[more] Construction
[more] Overrides from PObject
[more] Call Operations
[more] Protocol Operations
[more] Access functions
[more] H.501 access functions


Documentation

This class describes endpoints that are registered with a gatekeeper server. Note that a registered endpoint has no realationship in this software to a H323EndPoint class. This is purely a description of endpoints that are registered with the gatekeeper.
o Construction

o H323RegisteredEndPoint( H323GatekeeperServer & server, const PString & id )
Create a new endpoint registration record.
Parameters:
server - Gatekeeper server data
id - Identifier

o Overrides from PObject

oComparison Compare( const PObject & obj ) const
Compare two objects.
Parameters:
obj - Other object

ovoid PrintOn( ostream & strm ) const
Print the name of the gatekeeper.
Parameters:
strm - Stream to print to.

o Call Operations

ovoid AddCall( H323GatekeeperCall* call )
Add a call to the endpoints list of active calls. This is largely an internal routine, it is not expected the user would need to deal with this function.

oBOOL RemoveCall( H323GatekeeperCall* call )
Remove a call from the endpoints list of active calls. This is largely an internal routine, it is not expected the user would need to deal with this function.

oPINDEX GetCallCount() const
Get the count of active calls on this endpoint

oH323GatekeeperCall& GetCall( PINDEX idx )
Get the details of teh active call on this endpoint

o Protocol Operations

ovirtual H323GatekeeperRequest::Response OnRegistration( H323GatekeeperRRQ & request )
Call back on receiving a RAS registration for this endpoint. The default behaviour extract information from the RRQ and sets internal variables to that data.

If returns TRUE then a RCF is sent otherwise an RRJ is sent.

ovirtual H323GatekeeperRequest::Response OnFullRegistration( H323GatekeeperRRQ & request )
Call back on receiving a RAS full registration for this endpoint. This is not called if the keepAlive flag is set indicating a lightweight RRQ has been received.

The default behaviour extract information from the RRQ and sets internal variables to that data.

If returns TRUE then a RCF is sent otherwise an RRJ is sent.

ovirtual H323GatekeeperRequest::Response OnSecureRegistration( H323GatekeeperRRQ & request )
Call back to set security on RAS full registration for this endpoint. This is called from OnFullRegistration().

The default behaviour extract information from the RRQ and sets internal variables to that data.

If returns TRUE then a RCF is sent otherwise an RRJ is sent.

ovirtual H323GatekeeperRequest::Response OnUnregistration( H323GatekeeperURQ & request )
Call back on receiving a RAS unregistration for this endpoint. The default behaviour clears all calls owned by this endpoint.

ovirtual BOOL Unregister( int reason = -1 )
Force unregistration of the endpoint. This sendsa URQ to the endpoint(s) to close the call down.

ovirtual H323GatekeeperRequest::Response OnInfoResponse( H323GatekeeperIRR & request )
Handle an info request response IRR PDU. The default behaviour finds each call current for endpoint and calls the function of the same name in the H323GatekeeperCall instance.

ovirtual BOOL OnTimeToLive()
Function called to do time to live check of the call. Monitor the state of the endpoint and make sure everything is OK.

A return value of FALSE indicates the endpoint has expired and is to be unregistered and removed.

Default behaviour checks the time since the last received RRQ and if it has been too long does an IRQ to see if the endpoint is still there and running. If the IRQ fails, FALSE is returned.

ovirtual PString GetCallCreditAmount() const
Get the current call credit for this endpoint. This function is only called if the client indicates that it can use the information provided. If a server wishes to enable this feature by returning a non-empty string, it must be consistent in that usage. That is the H323GatekeeperCall::GetCallCreditAmount() for this endpoint must also return non-empty value.

The return value is a UTF-8 string for amount, including currency.

The default behaviour returns an empty string disabling the function.

ovirtual BOOL GetCallCreditMode() const
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 return TRUE indicating that calls will debit the account.

ovirtual BOOL SendServiceControlSession( const H323ServiceControlSession & session )
Send the service control session for the PDU. This will send an SCI pdu to the endpoint with the control service session information provided.

ovirtual BOOL AddServiceControlSession( const H323ServiceControlSession & session, H225_ArrayOf_ServiceControlSession & serviceControl )
Set the service control session for the PDU. This is an internal function.

o Access functions

ovirtual BOOL SetPassword( const PString & password, const PString & username = PString::Empty() )
Set password for user activating H235 security

oconst PString& GetIdentifier() const
Get the endpoint identifier assigned to the endpoint

oconst OpalGloballyUniqueID& GetDescriptorID() const
Get the Peer Element descriptor ID assigned to the endpoint

oH323GatekeeperServer& GetGatekeeper() const
Get the gatekeeper server data object that owns this endpoint

oconst H323TransportAddressArray& GetRASAddresses() const
Get the addresses that can be used to contact this endpoint via the RAS protocol

oPINDEX GetRASAddressCount() const
Get the number of addresses that can be used to contact this endpoint via the RAS protocol

oH323TransportAddress GetRASAddress( PINDEX idx ) const
Get an address that can be used to contact this endpoint via the RAS protocol

oconst H323TransportAddressArray& GetSignalAddresses() const
Get the addresses that can be used to contact this endpoint via the H225/Q931 protocol, ie normal calls

oPINDEX GetSignalAddressCount() const
Get the number of addresses that can be used to contact this endpoint via the H225/Q931 protocol, ie normal calls

oH323TransportAddress GetSignalAddress( PINDEX idx ) const
Get an address that can be used to contact this endpoint via the H225/Q931 protocol, ie normal calls

oconst PStringArray& GetAliases() const
Get the aliases this endpoint may be identified by

oBOOL ContainsAlias( const PString & alias )
Determine if alias is an alias that this endpoint may be identified by

oPINDEX GetAliasCount() const
Get the number of aliases this endpoint may be identified by

oPString GetAlias( PINDEX idx ) const
Get an alias that this endpoint may be identified by

ovoid RemoveAlias( const PString & alias )
Remove an alias that this endpoint may be identified by. If this was the last alias, then endpoint will be deleted soon after by a cleanup thread. As this function is in the endpoint itself it is not possible for this function to delete the endpoint immediately

ovirtual const H235Authenticators& GetAuthenticators() const
Get the security context for this RAS connection

oPINDEX GetPrefixCount() const
Get the number of prefixes this endpoint can accept

oPString GetPrefix( PINDEX idx ) const
Get a prefix that this endpoint can accept

oconst PCaselessString& GetApplicationInfo() const
Get application info (name/version etc) for endpoint

ounsigned GetProtocolVersion() const
Get the protocol version the endpoint registered with

oBOOL IsBehindNAT() const
Return if gatekeeper thinks the endpoint is behind a firewall

oBOOL CanDisplayAmountString() const
Get the flag indicating the endpoint can display credit amounts

oBOOL CanEnforceDurationLimit() const
Get the flag indicating the endpoint can enforce a duration limit

oBOOL CanReceiveRIP() const
Get the flag indicating the endpoint can handle RIPs (H225v1 endpoints cannot)

oBOOL GetH225Version() const
Get the H225 version reported in the RRQ

o H.501 access functions

ovirtual BOOL OnSendDescriptorForEndpoint( H225_ArrayOf_AliasAddress & aliases, H225_EndpointType & terminalType, H225_ArrayOf_AliasAddress & transportAddresses )
Function called when gatekeeper sends a descriptor for this endpoint. This allows the gatekeeper to alter the descriptor information before it is sent.

If returns FALSE then the desriptor is not sent


This class has no child classes.

Alphabetic index HTML hierarchy of classes or Java



This page was generated with the help of DOC++.