34 #ifndef OPAL_H323_GKCLIENT_H
35 #define OPAL_H323_GKCLIENT_H
53 class H225_ArrayOf_AliasAddress;
54 class H225_H323_UU_PDU;
55 class H225_AlternateGK;
56 class H225_ArrayOf_AlternateGK;
57 class H225_ArrayOf_ServiceControlSession;
58 class H225_FeatureSet;
88 PBoolean callback =
true
125 const PString & identifier
140 const PString & identifier,
148 PBoolean didGkDiscovery =
false
160 const PString & alias,
167 const PStringList & aliases,
190 PBoolean ignorePreGrantedARQ =
false
204 unsigned requestedBandwidth
221 const H225_H323_UU_PDU & pdu,
228 const H225_ArrayOf_ServiceControlSession & serviceControl,
282 const PString & password,
283 const PString & username = PString()
305 const PTimeInterval & rate
313 H225_InfoRequestResponse & irr,
318 const H225_ArrayOf_AlternateGK & alts,
327 unsigned unregisteredTag
330 virtual H323Transport *
CreateTransport(PIPSocket::Address bindng = PIPSocket::GetDefaultIpAny(), WORD port = 0, PBoolean reuseAddr =
false);
333 void OnAddInterface(
const PIPSocket::InterfaceEntry & entry, PINDEX priority);
334 void OnRemoveInterface(
const PIPSocket::InterfaceEntry & entry, PINDEX priority);
355 virtual void OnAddInterface(
const PIPSocket::InterfaceEntry & entry);
368 Comparison
Compare(
const PObject & obj);
369 void PrintOn(ostream & strm)
const;
424 #endif // OPAL_H323_GKCLIENT_H
H323Gatekeeper & gk
Definition: gkclient.h:358
PBoolean monitorStop
Definition: gkclient.h:407
PBYTEArray * accessTokenData
Transport address or remote endpoint.
Definition: gkclient.h:179
PBoolean MakeRequestWithReregister(Request &request, unsigned unregisteredTag)
PString endpointIdentifier
Definition: gkclient.h:340
InterfaceMonitor(H323Gatekeeper &gk, PINDEX priority)
InterfaceMonitor lowPriorityMonitor
Definition: gkclient.h:361
PBoolean reregisterNow
Definition: gkclient.h:401
Definition: gkclient.h:171
Definition: gkclient.h:251
virtual PBoolean MakeRequest(Request &request)
H323TransportAddressArray(const OpalTransportAddress &address)
Definition: transaddr.h:97
enum H323Gatekeeper::@12 pregrantAnswerCall
virtual void OnTerminalAliasChanged()
enum H323Gatekeeper::@12 pregrantMakeCall
PBoolean gatekeeperRouted
Reject reason if returns false.
Definition: gkclient.h:176
PBoolean OnReceiveRegistrationReject(const H225_RegistrationReject &rrj)
PBoolean requiresDiscovery
Definition: gkclient.h:403
PBoolean OnReceiveServiceControlIndication(const H225_ServiceControlIndication &)
PBoolean DiscoverByName(const PString &identifier)
void Connect(const H323TransportAddress &address, const PString &gatekeeperIdentifier)
RegistrationFailReasons registrationFailReason
Definition: gkclient.h:341
H225_InfoRequestResponse & BuildInfoRequestResponse(H323RasPDU &response, unsigned seqNum)
H225_ArrayOf_AliasAddress * aliasAddresses
iNow Gatekeeper Access Token data
Definition: gkclient.h:181
PBoolean OnReceiveDisengageRequest(const H225_DisengageRequest &drq)
PDECLARE_NOTIFIER(PThread, H323Gatekeeper, MonitorMain)
PBoolean OnReceiveGatekeeperConfirm(const H225_GatekeeperConfirm &gcf)
Definition: transports.h:703
void OnAddInterface(const PIPSocket::InterfaceEntry &entry, PINDEX priority)
Definition: gkclient.h:376
virtual void OnAddInterface(const PIPSocket::InterfaceEntry &entry)
Definition: gkclient.h:394
PBoolean IsDiscoveryComplete() const
Definition: gkclient.h:241
PBoolean OnReceiveUnregistrationReject(const H225_UnregistrationReject &urj)
PBoolean discoveryComplete
Definition: gkclient.h:339
void RegistrationTimeToLive()
void OnSendGatekeeperRequest(H225_GatekeeperRequest &grq)
H323TransportAddress GetGatekeeperRouteAddress() const
Definition: gkclient.h:289
RegistrationFailReasons
Definition: gkclient.h:247
Definition: gkclient.h:249
PBoolean willRespondToIRR
Definition: gkclient.h:405
H323TransportAddress * transportAddress
Number of endpoints that can be returned.
Definition: gkclient.h:178
void SetPassword(const PString &password, const PString &username=PString())
Definition: gkclient.h:379
Definition: gkclient.h:375
PBoolean OnReceiveBandwidthConfirm(const H225_BandwidthConfirm &bcf)
PString gatekeeperIdentifier
Definition: gkclient.h:372
void OnRemoveInterface(const PIPSocket::InterfaceEntry &entry, PINDEX priority)
enum H323Gatekeeper::AlternateInfo::@13 registrationState
Definition: gkclient.h:393
Definition: gkclient.h:345
Definition: gkclient.h:395
PTimer infoRequestRate
Definition: gkclient.h:404
unsigned SetupGatekeeperRequest(H323RasPDU &request)
Definition: gkclient.h:253
PBoolean alternatePermanent
Definition: gkclient.h:388
PBoolean RegistrationRequest(PBoolean autoReregister=true, PBoolean didGkDiscovery=false)
Definition: gkclient.h:256
virtual bool DiscoverGatekeeper()
PTimer timeToLive
Definition: gkclient.h:402
Definition: gkclient.h:255
InterfaceMonitor highPriorityMonitor
Definition: gkclient.h:360
PBoolean UnregistrationRequest(int reason)
bool SetListenerAddresses(H225_ArrayOf_TransportAddress &pdu)
void UpdateConnectionStatus()
PSemaphore requestMutex
Definition: gkclient.h:389
virtual void OnRemoveInterface(const PIPSocket::InterfaceEntry &entry)
PBoolean OnSendFeatureSet(unsigned, H225_FeatureSet &features) const
Definition: gkclient.h:254
void OnReceiveFeatureSet(unsigned, const H225_FeatureSet &features) const
AlternateInfo(H225_AlternateGK &alt)
void ClearInfoRequestRate()
Definition: h323pdu.h:414
H460_FeatureSet * features
Definition: gkclient.h:413
PBoolean autoReregister
Definition: gkclient.h:400
PThread * monitor
Definition: gkclient.h:406
Definition: h323con.h:130
PBoolean IsRegistered() const
Definition: gkclient.h:245
void InfoRequestResponse()
PBoolean LocationRequest(const PString &alias, H323TransportAddress &address)
PBoolean OnReceiveInfoRequest(const H225_InfoRequest &irq)
H323TransportAddress gkRouteAddress
Definition: gkclient.h:397
PBoolean OnReceiveUnregistrationConfirm(const H225_UnregistrationConfirm &ucf)
H225_ArrayOf_AliasAddress * destExtraCallInfo
DestinationInfo to use in SETUP if not empty.
Definition: gkclient.h:182
PLIST(H323GatekeeperList, H323Gatekeeper)
H235Authenticators authenticators
Definition: gkclient.h:390
PBoolean OnReceiveUnregistrationRequest(const H225_UnregistrationRequest &urq)
PSyncPoint monitorTickle
Definition: gkclient.h:408
PBoolean OnReceiveAdmissionConfirm(const H225_AdmissionConfirm &acf)
Definition: gkclient.h:378
Definition: gkclient.h:347
Definition: h323trans.h:51
PSortedList< AlternateInfo > alternates
Definition: gkclient.h:387
PBoolean AdmissionRequest(H323Connection &connection, AdmissionResponse &response, PBoolean ignorePreGrantedARQ=false)
Definition: gkclient.h:363
PBoolean OnReceiveAdmissionReject(const H225_AdmissionReject &arj)
void SetInfoRequestRate(const PTimeInterval &rate)
PBoolean OnReceiveBandwidthRequest(const H225_BandwidthRequest &brq)
Definition: gkclient.h:248
Definition: gkclient.h:377
PBoolean SendUnsolicitedIRR(H225_InfoRequestResponse &irr, H323RasPDU &response)
PDictionary< POrdinalKey, H323ServiceControlSession > serviceControlSessions
Definition: gkclient.h:410
RegistrationFailReasons GetRegistrationFailReason() const
Definition: gkclient.h:261
virtual H323Transport * CreateTransport(PIPSocket::Address bindng=PIPSocket::GetDefaultIpAny(), WORD port=0, PBoolean reuseAddr=false)
Definition: gkclient.h:65
Definition: gkclient.h:257
H323TransportAddress rasAddress
Definition: gkclient.h:371
void OnSendAdmissionRequest(H225_AdmissionRequest &arq)
PBoolean BandwidthRequest(H323Connection &connection, unsigned requestedBandwidth)
unsigned priority
Definition: gkclient.h:373
PBoolean OnReceiveRegistrationConfirm(const H225_RegistrationConfirm &rcf)
void PrintOn(ostream &strm) const
PString gatekeeperIdentifier
Definition: h225ras.h:318
virtual PBoolean WriteTo(H323TransactionPDU &pdu, const H323TransportAddressArray &addresses, PBoolean callback=true)
Definition: gkclient.h:252
Comparison Compare(const PObject &obj)
H323EndPoint & endpoint
Definition: h323trans.h:307
const PString & GetEndpointIdentifier() const
Definition: gkclient.h:275
Definition: transaddr.h:66
Definition: gkclient.h:250
H323Gatekeeper(H323EndPoint &endpoint, H323Transport *transport)
Definition: gkclient.h:344
void SetAlternates(const H225_ArrayOf_AlternateGK &alts, PBoolean permanent)
H323Transport * transport
Definition: h323trans.h:310
PBoolean DiscoverByNameAndAddress(const PString &identifier, const H323TransportAddress &address)
PINDEX endpointCount
Flag for call is through gk.
Definition: gkclient.h:177
PBoolean OnReceiveGatekeeperReject(const H225_GatekeeperReject &grj)
PBoolean DiscoverByAddress(const H323TransportAddress &address)
virtual void OnServiceControlSessions(const H225_ArrayOf_ServiceControlSession &serviceControl, H323Connection *connection)
bool StartGatekeeper(const H323TransportAddress &address)
PBoolean DisengageRequest(const H323Connection &connection, unsigned reason)
unsigned rejectReason
Definition: gkclient.h:174