|
OPAL
Version 3.14.3
|
#include <peclient.h>


Data Structures | |
| class | AliasKey |
Public Types | |
| enum | Error { Confirmed, Rejected, NoResponse, NoServiceRelationship, ServiceRelationshipReestablished } |
| enum | { LocalServiceRelationshipOrdinal = 0, NoServiceRelationshipOrdinal = 1, RemoteServiceRelationshipOrdinal = 2 } |
Public Types inherited from H323_AnnexG | |
| enum | { DefaultUdpPort = 2099, DefaultTcpPort = 2099 } |
Public Member Functions | |
| PSafePtr < H323PeerElementDescriptor > | GetFirstDescriptor (PSafetyMode mode=PSafeReference) |
| PSafePtr < H323PeerElementServiceRelationship > | GetFirstLocalServiceRelationship (PSafetyMode mode=PSafeReference) |
| PSafePtr < H323PeerElementServiceRelationship > | GetFirstRemoteServiceRelationship (PSafetyMode mode=PSafeReference) |
| void | SetLocalName (const PString &name) |
| PString | GetLocalName () const |
| void | SetDomainName (const PString &name) |
| PString | GetDomainName () const |
| PBoolean | SetOnlyServiceRelationship (const PString &peer, PBoolean keepTrying=true) |
| PBoolean | AddServiceRelationship (const H323TransportAddress &peer, PBoolean keepTrying=true) |
| PBoolean | AddServiceRelationship (const H323TransportAddress &peer, OpalGloballyUniqueID &serviceID, PBoolean keepTrying=true) |
| PBoolean | RemoveServiceRelationship (const OpalGloballyUniqueID &serviceID, int reason=H501_ServiceReleaseReason::e_terminated) |
| PBoolean | RemoveServiceRelationship (const H323TransportAddress &peer, int reason=H501_ServiceReleaseReason::e_terminated) |
| PBoolean | RemoveAllServiceRelationships () |
| Error | ServiceRequestByAddr (const H323TransportAddress &peer) |
| Error | ServiceRequestByAddr (const H323TransportAddress &peer, OpalGloballyUniqueID &serviceID) |
| Error | ServiceRequestByID (OpalGloballyUniqueID &serviceID) |
| PBoolean | ServiceRelease (const OpalGloballyUniqueID &serviceID, unsigned reason) |
| PBoolean | AddDescriptor (const OpalGloballyUniqueID &descriptorID, const PStringArray &aliases, const H323TransportAddressArray &transportAddrs, unsigned options=H323PeerElementDescriptor::Protocol_H323, PBoolean now=false) |
| PBoolean | AddDescriptor (const OpalGloballyUniqueID &descriptorID, const H225_ArrayOf_AliasAddress &aliases, const H323TransportAddressArray &transportAddrs, unsigned options=H323PeerElementDescriptor::Protocol_H323, PBoolean now=false) |
| PBoolean | AddDescriptor (const OpalGloballyUniqueID &descriptorID, const H225_ArrayOf_AliasAddress &aliases, const H225_ArrayOf_AliasAddress &transportAddr, unsigned options=H323PeerElementDescriptor::Protocol_H323, PBoolean now=false) |
| PBoolean | AddDescriptor (const OpalGloballyUniqueID &descriptorID, const POrdinalKey &creator, const H225_ArrayOf_AliasAddress &alias, const H225_ArrayOf_AliasAddress &transportAddresses, unsigned options=H323PeerElementDescriptor::Protocol_H323, PBoolean now=false) |
| PBoolean | AddDescriptor (const OpalGloballyUniqueID &descriptorID, const POrdinalKey &creator, const H501_ArrayOf_AddressTemplate &addressTemplates, const PTime &updateTime, PBoolean now=false) |
| PBoolean | DeleteDescriptor (const PString &alias, PBoolean now=false) |
| PBoolean | DeleteDescriptor (const H225_AliasAddress &alias, PBoolean now=false) |
| PBoolean | DeleteDescriptor (const OpalGloballyUniqueID &descriptorID, PBoolean now=false) |
| PBoolean | AccessRequest (const PString &searchAlias, PStringArray &destAliases, H323TransportAddress &transportAddress, unsigned options=H323PeerElementDescriptor::Protocol_H323) |
| PBoolean | AccessRequest (const PString &searchAlias, H225_ArrayOf_AliasAddress &destAliases, H323TransportAddress &transportAddress, unsigned options=H323PeerElementDescriptor::Protocol_H323) |
| PBoolean | AccessRequest (const H225_AliasAddress &searchAlias, H225_ArrayOf_AliasAddress &destAliases, H323TransportAddress &transportAddress, unsigned options=H323PeerElementDescriptor::Protocol_H323) |
| PBoolean | AccessRequest (const H225_AliasAddress &alias, H225_ArrayOf_AliasAddress &destAliases, H225_AliasAddress &transportAddress, unsigned options=H323PeerElementDescriptor::Protocol_H323) |
| PBoolean | UpdateDescriptor (H323PeerElementDescriptor *descriptor) |
| PBoolean | UpdateDescriptor (H323PeerElementDescriptor *descriptor, H501_UpdateInformation_updateType::Choices updateType) |
| Error | SendUpdateDescriptorByID (const OpalGloballyUniqueID &serviceID, H323PeerElementDescriptor *descriptor, H501_UpdateInformation_updateType::Choices updateType) |
| Error | SendUpdateDescriptorByAddr (const H323TransportAddress &peer, H323PeerElementDescriptor *descriptor, H501_UpdateInformation_updateType::Choices updateType) |
| Error | SendAccessRequestByID (const OpalGloballyUniqueID &peerID, H501PDU &request, H501PDU &confirmPDU) |
| Error | SendAccessRequestByAddr (const H323TransportAddress &peerAddr, H501PDU &request, H501PDU &confirmPDU) |
| PBoolean | MakeRequest (H323_AnnexG::Request &request) |
| virtual void | OnAddServiceRelationship (const H323TransportAddress &) |
| virtual void | OnRemoveServiceRelationship (const H323TransportAddress &) |
| virtual void | OnNewDescriptor (const H323PeerElementDescriptor &) |
| virtual void | OnUpdateDescriptor (const H323PeerElementDescriptor &) |
| virtual void | OnRemoveDescriptor (const H323PeerElementDescriptor &) |
| virtual H323Transaction::Response | OnServiceRequest (H501ServiceRequest &info) |
| virtual H323Transaction::Response | OnDescriptorUpdate (H501DescriptorUpdate &info) |
| virtual H323Transaction::Response | OnAccessRequest (H501AccessRequest &info) |
| PBoolean | OnReceiveServiceRequest (const H501PDU &pdu, const H501_ServiceRequest &pduBody) |
| PBoolean | OnReceiveServiceConfirmation (const H501PDU &pdu, const H501_ServiceConfirmation &pduBody) |
| PBoolean | OnReceiveDescriptorUpdate (const H501PDU &pdu, const H501_DescriptorUpdate &pduBody) |
| PBoolean | OnReceiveDescriptorUpdateACK (const H501PDU &pdu, const H501_DescriptorUpdateAck &pduBody) |
| PBoolean | OnReceiveAccessRequest (const H501PDU &pdu, const H501_AccessRequest &pduBody) |
| PBoolean | OnReceiveAccessConfirmation (const H501PDU &pdu, const H501_AccessConfirmation &pduBody) |
| PBoolean | OnReceiveAccessRejection (const H501PDU &pdu, const H501_AccessRejection &pduBody) |
Construction | |
| H323PeerElement (H323EndPoint &endpoint, H323Transport *transport=NULL) | |
| H323PeerElement (H323EndPoint &endpoint, const H323TransportAddress &addr) | |
| ~H323PeerElement () | |
Overrides from PObject | |
| void | PrintOn (ostream &strm) const |
Public Member Functions inherited from H323_AnnexG | |
| void | PrintOn (ostream &strm) const |
| virtual H323TransactionPDU * | CreateTransactionPDU () const |
| virtual PBoolean | HandleTransaction (const PASN_Object &rawPDU) |
| virtual void | OnSendingPDU (PASN_Object &rawPDU) |
| H323_AnnexG (H323EndPoint &endpoint, H323Transport *transport) | |
| H323_AnnexG (H323EndPoint &endpoint, const H323TransportAddress &addr) | |
| ~H323_AnnexG () | |
| virtual PBoolean | OnReceiveServiceRejection (const H501PDU &pdu, const H501_ServiceRejection &pduBody) |
| virtual PBoolean | OnReceiveServiceRelease (const H501PDU &pdu, const H501_ServiceRelease &pduBody) |
| virtual PBoolean | OnReceiveDescriptorRequest (const H501PDU &pdu, const H501_DescriptorRequest &pduBody) |
| virtual PBoolean | OnReceiveDescriptorConfirmation (const H501PDU &pdu, const H501_DescriptorConfirmation &pduBody) |
| virtual PBoolean | OnReceiveDescriptorRejection (const H501PDU &pdu, const H501_DescriptorRejection &pduBody) |
| virtual PBoolean | OnReceiveDescriptorIDRequest (const H501PDU &pdu, const H501_DescriptorIDRequest &pduBody) |
| virtual PBoolean | OnReceiveDescriptorIDConfirmation (const H501PDU &pdu, const H501_DescriptorIDConfirmation &pduBody) |
| virtual PBoolean | OnReceiveDescriptorIDRejection (const H501PDU &pdu, const H501_DescriptorIDRejection &pduBody) |
| virtual PBoolean | OnReceiveRequestInProgress (const H501PDU &pdu, const H501_RequestInProgress &pduBody) |
| virtual PBoolean | OnReceiveNonStandardRequest (const H501PDU &pdu, const H501_NonStandardRequest &pduBody) |
| virtual PBoolean | OnReceiveNonStandardConfirmation (const H501PDU &pdu, const H501_NonStandardConfirmation &pduBody) |
| virtual PBoolean | OnReceiveNonStandardRejection (const H501PDU &pdu, const H501_NonStandardRejection &pduBody) |
| virtual PBoolean | OnReceiveUnknownMessageResponse (const H501PDU &pdu, const H501_UnknownMessageResponse &pduBody) |
| virtual PBoolean | OnReceiveUsageRequest (const H501PDU &pdu, const H501_UsageRequest &pduBody) |
| virtual PBoolean | OnReceiveUsageConfirmation (const H501PDU &pdu, const H501_UsageConfirmation &pduBody) |
| virtual PBoolean | OnReceiveUsageIndicationConfirmation (const H501PDU &pdu, const H501_UsageIndicationConfirmation &pduBody) |
| virtual PBoolean | OnReceiveUsageIndicationRejection (const H501PDU &pdu, const H501_UsageIndicationRejection &pduBody) |
| virtual PBoolean | OnReceiveUsageRejection (const H501PDU &pdu, const H501_UsageRejection &pduBody) |
| virtual PBoolean | OnReceiveValidationRequest (const H501PDU &pdu, const H501_ValidationRequest &pduBody) |
| virtual PBoolean | OnReceiveValidationConfirmation (const H501PDU &pdu, const H501_ValidationConfirmation &pduBody) |
| virtual PBoolean | OnReceiveValidationRejection (const H501PDU &pdu, const H501_ValidationRejection &pduBody) |
| virtual PBoolean | OnReceiveAuthenticationRequest (const H501PDU &pdu, const H501_AuthenticationRequest &pduBody) |
| virtual PBoolean | OnReceiveAuthenticationConfirmation (const H501PDU &pdu, const H501_AuthenticationConfirmation &pduBody) |
| virtual PBoolean | OnReceiveAuthenticationRejection (const H501PDU &pdu, const H501_AuthenticationRejection &pduBody) |
| virtual PBoolean | OnReceiveUnknown (const H501PDU &) |
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) |
| virtual PBoolean | StartChannel () |
| virtual void | StopChannel () |
| virtual PBoolean | WritePDU (H323TransactionPDU &pdu) |
| virtual PBoolean | WriteTo (H323TransactionPDU &pdu, const H323TransportAddressArray &addresses, PBoolean callback=true) |
| H323EndPoint & | GetEndPoint () const |
| H323Transport & | GetTransport () const |
| void | SetCheckResponseCryptoTokens (PBoolean value) |
| PBoolean | GetCheckResponseCryptoTokens () |
Protected Member Functions | |
| void | Construct () |
| Error | SendUpdateDescriptor (H501PDU &pdu, const H323TransportAddress &peer, H323PeerElementDescriptor *descriptor, H501_UpdateInformation_updateType::Choices updateType) |
| PBoolean | OnRemoteServiceRelationshipDisappeared (OpalGloballyUniqueID &serviceID, const H323TransportAddress &peer) |
| void | InternalRemoveServiceRelationship (const H323TransportAddress &peer) |
| H323Transaction::Response | HandleServiceRequest (H501ServiceRequest &info) |
| virtual H323PeerElementDescriptor * | CreateDescriptor (const OpalGloballyUniqueID &descriptorID) |
| virtual H323PeerElementServiceRelationship * | CreateServiceRelationship () |
| virtual AliasKey * | CreateAliasKey (const H225_AliasAddress &alias, const OpalGloballyUniqueID &id, PINDEX pos, PBoolean wild=false) |
| void | RemoveDescriptorInformation (const H501_ArrayOf_AddressTemplate &addressTemplates) |
| PDECLARE_NOTIFIER (PThread, H323PeerElement, MonitorMain) | |
| PDECLARE_NOTIFIER (PThread, H323PeerElement, UpdateAllDescriptors) | |
| PDECLARE_NOTIFIER (PTimer, H323PeerElement, TickleMonitor) | |
| PDICTIONARY (StringToOrdinalKey, PString, POrdinalKey) | |
| PSORTED_LIST (AliasKeyList, H225_AliasAddress) | |
Protected Member Functions inherited from H323_AnnexG | |
| void | Construct () |
Protected Attributes | |
| PMutex | localNameMutex |
| PString | localIdentifier |
| PString | domainName |
| PSemaphore | requestMutex |
| PThread * | monitor |
| PBoolean | monitorStop |
| PSyncPoint | monitorTickle |
| PMutex | basePeerOrdinalMutex |
| PINDEX | basePeerOrdinal |
| PSafeSortedList < H323PeerElementServiceRelationship > | localServiceRelationships |
| PMutex | localPeerListMutex |
| POrdinalSet | localServiceOrdinals |
| PMutex | remotePeerListMutex |
| PSafeSortedList < H323PeerElementServiceRelationship > | remoteServiceRelationships |
| PStringToString | remotePeerAddrToServiceID |
| StringToOrdinalKey | remotePeerAddrToOrdinalKey |
| PSafeSortedList < H323PeerElementDescriptor > | descriptors |
| PMutex | aliasMutex |
| AliasKeyList | transportAddressToDescriptorID |
| AliasKeyList | specificAliasToDescriptorID |
| AliasKeyList | wildcardAliasToDescriptorID |
This class embodies the an H.323 AnnexG server/client
| anonymous enum |
| H323PeerElement::H323PeerElement | ( | H323EndPoint & | endpoint, |
| H323Transport * | transport = NULL |
||
| ) |
Create a new client.
| endpoint | Endpoint gatekeeper is associated with. |
| H323PeerElement::H323PeerElement | ( | H323EndPoint & | endpoint, |
| const H323TransportAddress & | addr | ||
| ) |
| endpoint | Endpoint gatekeeper is associated with. |
| H323PeerElement::~H323PeerElement | ( | ) |
Destroy client.
| PBoolean H323PeerElement::AccessRequest | ( | const PString & | searchAlias, |
| PStringArray & | destAliases, | ||
| H323TransportAddress & | transportAddress, | ||
| unsigned | options = H323PeerElementDescriptor::Protocol_H323 |
||
| ) |
Request access to an alias
| PBoolean H323PeerElement::AccessRequest | ( | const PString & | searchAlias, |
| H225_ArrayOf_AliasAddress & | destAliases, | ||
| H323TransportAddress & | transportAddress, | ||
| unsigned | options = H323PeerElementDescriptor::Protocol_H323 |
||
| ) |
| PBoolean H323PeerElement::AccessRequest | ( | const H225_AliasAddress & | searchAlias, |
| H225_ArrayOf_AliasAddress & | destAliases, | ||
| H323TransportAddress & | transportAddress, | ||
| unsigned | options = H323PeerElementDescriptor::Protocol_H323 |
||
| ) |
| PBoolean H323PeerElement::AccessRequest | ( | const H225_AliasAddress & | alias, |
| H225_ArrayOf_AliasAddress & | destAliases, | ||
| H225_AliasAddress & | transportAddress, | ||
| unsigned | options = H323PeerElementDescriptor::Protocol_H323 |
||
| ) |
| PBoolean H323PeerElement::AddDescriptor | ( | const OpalGloballyUniqueID & | descriptorID, |
| const PStringArray & | aliases, | ||
| const H323TransportAddressArray & | transportAddrs, | ||
| unsigned | options = H323PeerElementDescriptor::Protocol_H323, |
||
| PBoolean | now = false |
||
| ) |
| PBoolean H323PeerElement::AddDescriptor | ( | const OpalGloballyUniqueID & | descriptorID, |
| const H225_ArrayOf_AliasAddress & | aliases, | ||
| const H323TransportAddressArray & | transportAddrs, | ||
| unsigned | options = H323PeerElementDescriptor::Protocol_H323, |
||
| PBoolean | now = false |
||
| ) |
| PBoolean H323PeerElement::AddDescriptor | ( | const OpalGloballyUniqueID & | descriptorID, |
| const H225_ArrayOf_AliasAddress & | aliases, | ||
| const H225_ArrayOf_AliasAddress & | transportAddr, | ||
| unsigned | options = H323PeerElementDescriptor::Protocol_H323, |
||
| PBoolean | now = false |
||
| ) |
| PBoolean H323PeerElement::AddDescriptor | ( | const OpalGloballyUniqueID & | descriptorID, |
| const POrdinalKey & | creator, | ||
| const H225_ArrayOf_AliasAddress & | alias, | ||
| const H225_ArrayOf_AliasAddress & | transportAddresses, | ||
| unsigned | options = H323PeerElementDescriptor::Protocol_H323, |
||
| PBoolean | now = false |
||
| ) |
| PBoolean H323PeerElement::AddDescriptor | ( | const OpalGloballyUniqueID & | descriptorID, |
| const POrdinalKey & | creator, | ||
| const H501_ArrayOf_AddressTemplate & | addressTemplates, | ||
| const PTime & | updateTime, | ||
| PBoolean | now = false |
||
| ) |
| PBoolean H323PeerElement::AddServiceRelationship | ( | const H323TransportAddress & | peer, |
| PBoolean | keepTrying = true |
||
| ) |
| PBoolean H323PeerElement::AddServiceRelationship | ( | const H323TransportAddress & | peer, |
| OpalGloballyUniqueID & | serviceID, | ||
| PBoolean | keepTrying = true |
||
| ) |
|
protected |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
| PBoolean H323PeerElement::DeleteDescriptor | ( | const PString & | alias, |
| PBoolean | now = false |
||
| ) |
Remove a descriptor from the local table
| PBoolean H323PeerElement::DeleteDescriptor | ( | const H225_AliasAddress & | alias, |
| PBoolean | now = false |
||
| ) |
| PBoolean H323PeerElement::DeleteDescriptor | ( | const OpalGloballyUniqueID & | descriptorID, |
| PBoolean | now = false |
||
| ) |
| PString H323PeerElement::GetDomainName | ( | ) | const |
|
inline |
References descriptors.
|
inline |
References localServiceRelationships.
|
inline |
References remoteServiceRelationships.
| PString H323PeerElement::GetLocalName | ( | ) | const |
|
protected |
|
protected |
|
virtual |
Reimplemented from H323Transactor.
|
virtual |
|
inlinevirtual |
|
virtual |
|
inlinevirtual |
|
virtual |
Reimplemented from H323_AnnexG.
|
virtual |
Reimplemented from H323_AnnexG.
|
virtual |
Reimplemented from H323_AnnexG.
|
virtual |
Reimplemented from H323_AnnexG.
|
virtual |
Reimplemented from H323_AnnexG.
|
virtual |
Reimplemented from H323_AnnexG.
|
virtual |
Reimplemented from H323_AnnexG.
|
protected |
|
inlinevirtual |
|
inlinevirtual |
|
virtual |
|
inlinevirtual |
|
protected |
|
protected |
|
protected |
|
protected |
| void H323PeerElement::PrintOn | ( | ostream & | strm | ) | const |
Print the name of the peer element.
| strm | Stream to print to. |
|
protected |
| PBoolean H323PeerElement::RemoveAllServiceRelationships | ( | ) |
|
protected |
| PBoolean H323PeerElement::RemoveServiceRelationship | ( | const OpalGloballyUniqueID & | serviceID, |
| int | reason = H501_ServiceReleaseReason::e_terminated |
||
| ) |
| PBoolean H323PeerElement::RemoveServiceRelationship | ( | const H323TransportAddress & | peer, |
| int | reason = H501_ServiceReleaseReason::e_terminated |
||
| ) |
| Error H323PeerElement::SendAccessRequestByAddr | ( | const H323TransportAddress & | peerAddr, |
| H501PDU & | request, | ||
| H501PDU & | confirmPDU | ||
| ) |
| Error H323PeerElement::SendAccessRequestByID | ( | const OpalGloballyUniqueID & | peerID, |
| H501PDU & | request, | ||
| H501PDU & | confirmPDU | ||
| ) |
|
protected |
| Error H323PeerElement::SendUpdateDescriptorByAddr | ( | const H323TransportAddress & | peer, |
| H323PeerElementDescriptor * | descriptor, | ||
| H501_UpdateInformation_updateType::Choices | updateType | ||
| ) |
| Error H323PeerElement::SendUpdateDescriptorByID | ( | const OpalGloballyUniqueID & | serviceID, |
| H323PeerElementDescriptor * | descriptor, | ||
| H501_UpdateInformation_updateType::Choices | updateType | ||
| ) |
| PBoolean H323PeerElement::ServiceRelease | ( | const OpalGloballyUniqueID & | serviceID, |
| unsigned | reason | ||
| ) |
Send a service release
| Error H323PeerElement::ServiceRequestByAddr | ( | const H323TransportAddress & | peer | ) |
| Error H323PeerElement::ServiceRequestByAddr | ( | const H323TransportAddress & | peer, |
| OpalGloballyUniqueID & | serviceID | ||
| ) |
| Error H323PeerElement::ServiceRequestByID | ( | OpalGloballyUniqueID & | serviceID | ) |
| void H323PeerElement::SetDomainName | ( | const PString & | name | ) |
| void H323PeerElement::SetLocalName | ( | const PString & | name | ) |
| PBoolean H323PeerElement::SetOnlyServiceRelationship | ( | const PString & | peer, |
| PBoolean | keepTrying = true |
||
| ) |
Send a service request
| PBoolean H323PeerElement::UpdateDescriptor | ( | H323PeerElementDescriptor * | descriptor | ) |
| PBoolean H323PeerElement::UpdateDescriptor | ( | H323PeerElementDescriptor * | descriptor, |
| H501_UpdateInformation_updateType::Choices | updateType | ||
| ) |
|
protected |
|
protected |
|
protected |
|
protected |
Referenced by GetFirstDescriptor().
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
Referenced by GetFirstLocalServiceRelationship().
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
Referenced by GetFirstRemoteServiceRelationship().
|
protected |
|
protected |
|
protected |
|
protected |