gloox::PubSub Namespace Reference

## Classes

struct | Subscriber
struct | Affiliate
struct | TrackedInfo
struct | SubscriptionInfo
class | Event
class | Item
class | Manager
class | ResultHandler

## Enumerations

enum | NodeType { NodeLeaf , NodeCollection , NodeInvalid }
enum | AffiliationType { AffiliationNone , AffiliationPublisher , AffiliationOwner , AffiliationOutcast , AffiliationInvalid }
enum | SubscriptionType { SubscriptionNone , SubscriptionSubscribed , SubscriptionPending , SubscriptionUnconfigured , SubscriptionInvalid }
enum | EventType { EventCollection , EventConfigure , EventDelete , EventItems , EventItemsRetract , EventPurge , EventSubscription , EventUnknown }
enum | SubscriptionObject { SubscriptionNodes , SubscriptionItems }
enum | AccessModel { AccessOpen , AccessPresence , AccessRoster , AccessAuthorize , AccessWhitelist , AccessDefault }

enum

PubSubFeature {
FeatureCollections = 1 , FeatureConfigNode = 1<<1 , FeatureCreateAndConfig = 1<<2 , FeatureCreateNodes = 1<<3 ,
FeatureDeleteAny = 1<<4 , FeatureDeleteNodes = 1<<5 , FeatureGetPending = 1<<6 , FeatureInstantNodes = 1<<7 ,
FeatureItemIDs = 1<<8 , FeatureLeasedSubscription = 1<<9 , FeatureManageSubscriptions = 1<<10 , FeatureMetaData = 1<<11 ,
FeatureModifyAffiliations = 1<<12 , FeatureMultiCollection = 1<<13 , FeatureMultiSubscribe = 1<<14 , FeaturePutcastAffiliation = 1<<15 ,
FeaturePersistentItems = 1<<16 , FeaturePresenceNotifications = 1<<17 , FeaturePublish = 1<<18 , FeaturePublisherAffiliation = 1<<19 ,
FeaturePurgeNodes = 1<<20 , FeatureRetractItems = 1<<21 , FeatureRetrieveAffiliations = 1<<22 , FeatureRetrieveDefault = 1<<23 ,
FeatureRetrieveItems = 1<<24 , FeatureRetrieveSubscriptions = 1<<25 , FeatureSubscribe = 1<<26 , FeatureSubscriptionOptions = 1<<27 ,
FeatureSubscriptionNotifs = 1<<28 , FeatureUnknown = 1<<29
}

## Detailed Description

Namespace holding all the Pubsub-related structures and definitions.

## Enumeration Type Documentation

## AccessModel

enum AccessModel

Describes the access types.

Enumerator
AccessOpen | Any entity may subscribe to the node (i.e., without the necessity for subscription approval) and any entity may retrieve items from the node (i.e., without being subscribed); this SHOULD be the default access model for generic pubsub services.
AccessPresence | Any entity with a subscription of type "from" or "both" may subscribe to the node and retrieve items from the node; this access model applies mainly to instant messaging systems (see RFC 3921).
AccessRoster | Any entity in the specified roster group(s) may subscribe to the node and retrieve items from the node; this access model applies mainly to instant messaging systems (see RFC 3921).
AccessAuthorize | The node owner must approve all subscription requests, and only subscribers may retrieve items from the node.

AccessWhitelist

An entity may be subscribed only through being added to a whitelist by the node owner (unsolicited subscription requests are rejected), and only subscribers may retrieve items from the node. In effect, the default affiliation is outcast. The node owner MUST automatically be on the whitelist. In order to add entities to the whitelist, the node owner SHOULD use the protocol specified in the Manage Affiliated Entities section of this document.

AccessDefault | Unspecified (default) Access Model (does not represent a real access type by itself).

Definition at line 105 of file pubsub.h.

## AffiliationType

enum AffiliationType

Describes the different node affiliation types.

Enumerator
AffiliationNone | No particular affiliation type.
AffiliationPublisher | Entity is allowed to publish items.
AffiliationOwner | Manager for the node.
AffiliationOutcast | Entity is disallowed from subscribing or publishing.
AffiliationInvalid | Invalid Affiliation type.

Definition at line 48 of file pubsub.h.

## EventType

enum EventType

Event types.

Enumerator
EventCollection | A Collection node has been created.
EventConfigure | A node's configuration has changed.
EventDelete | A node has been deleted.
EventItems | An item has been created or modified.
EventItemsRetract | An item has been deleted.
EventPurge | A Leaf node has been purged.
EventSubscription | A user's subscription has been processed.
EventUnknown | Unknown event.

Definition at line 81 of file pubsub.h.

## NodeType

enum NodeType

Describes the different node types.

Enumerator
NodeLeaf | A node that contains published items only. It is NOT a container for other nodes.
NodeCollection | A node that contains nodes and/or other collections but no published items. Collections make it possible to represent hierarchial node structures.
NodeInvalid | Invalid node type

Definition at line 35 of file pubsub.h.

## PubSubFeature

enum PubSubFeature

Describes the different PubSub features (XEP-0060 Sect. 10).

Enumerator
FeatureCollections | Collection nodes are supported. RECOMMENDED
FeatureConfigNode | Configuration of node options is supported. RECOMMENDED
FeatureCreateAndConfig | Simultaneous creation and configuration of nodes is supported. RECOMMENDED
FeatureCreateNodes | Creation of nodes is supported. RECOMMENDED
FeatureDeleteAny | Any publisher may delete an item (not only the originating publisher). OPTIONAL
FeatureDeleteNodes | Deletion of nodes is supported. RECOMMENDED
FeatureGetPending | Retrieval of pending subscription approvals is supported. OPTIONAL
FeatureInstantNodes | Creation of instant nodes is supported. RECOMMENDED
FeatureItemIDs | Publishers may specify item identifiers. RECOMMENDED
FeatureLeasedSubscription | Time-based subscriptions are supported. OPTIONAL
FeatureManageSubscriptions | Node owners may manage subscriptions. OPTIONAL
FeatureMetaData | Node meta-data is supported. RECOMMENDED
FeatureModifyAffiliations | Node owners may modify affiliations. OPTIONAL
FeatureMultiCollection | A single leaf node may be associated with multiple collections. OPTIONAL
FeatureMultiSubscribe | A single entity may subscribe to a node multiple times. OPTIONAL
FeaturePutcastAffiliation | The outcast affiliation is supported. RECOMMENDED
FeaturePersistentItems | Persistent items are supported. RECOMMENDED
FeaturePresenceNotifications | Presence-based delivery of event notifications is supported. OPTIONAL
FeaturePublish | Publishing items is supported (note: not valid for collection nodes). REQUIRED
FeaturePublisherAffiliation | The publisher affiliation is supported. OPTIONAL
FeaturePurgeNodes | Purging of nodes is supported. OPTIONAL
FeatureRetractItems | Item retraction is supported. OPTIONAL
FeatureRetrieveAffiliations | Retrieval of current affiliations is supported. RECOMMENDED
FeatureRetrieveDefault | Retrieval of default node configuration is supported. RECOMMENDED
FeatureRetrieveItems | Item retrieval is supported. RECOMMENDED
FeatureRetrieveSubscriptions | Retrieval of current subscriptions is supported. RECOMMENDED
FeatureSubscribe | Subscribing and unsubscribing are supported. REQUIRED
FeatureSubscriptionOptions | Configuration of subscription options is supported. OPTIONAL
FeatureSubscriptionNotifs | Notification of subscription state changes is supported.
FeatureUnknown | Unrecognized feature

Definition at line 133 of file pubsub.h.

## SubscriptionObject

enum SubscriptionObject

Describes the different subscription types.

Enumerator
SubscriptionNodes | Receive notification of new nodes only.
SubscriptionItems | Receive notification of new items only.

Definition at line 96 of file pubsub.h.

## SubscriptionType

enum SubscriptionType

Describes the different subscription types.

Enumerator
SubscriptionNone | The node MUST NOT send event notifications or payloads to the Entity.
SubscriptionSubscribed | An entity is subscribed to a node. The node MUST send all event notifications (and, if configured, payloads) to the entity while it is in this state.
SubscriptionPending | An entity has requested to subscribe to a node and the request has not yet been approved by a node owner. The node MUST NOT send event notifications or payloads to the entity while it is in this state.
SubscriptionUnconfigured | An entity has subscribed but its subscription options have not yet been configured. The node MAY send event notifications or payloads to the entity while it is in this state. The service MAY timeout unconfigured subscriptions.
SubscriptionInvalid | Invalid subscription type.

Definition at line 60 of file pubsub.h.