QXmpp Version: 1.5.1
Public Types | Public Member Functions | List of all members
QXmppUserLocationManager Class Reference
Inheritance diagram for QXmppUserLocationManager:
Inheritance graph
Collaboration diagram for QXmppUserLocationManager:
Collaboration graph

Public Types

using Item = QXmppGeolocItem
using GetResult = std::variant< Item, QXmppError >
using PublishResult = std::variant< QString, QXmppError >

Public Member Functions

QStringList discoveryFeatures () const override
QXmppTask< GetResultrequest (const QString &jid)
QXmppTask< PublishResultpublish (const Item &)
Q_SIGNAL void itemReceived (const QString &jid, const QXmppGeolocItem &)
- Public Member Functions inherited from QXmppClientExtension
 QXmppClientExtension ()
virtual QStringList discoveryFeatures () const
virtual QList< QXmppDiscoveryIq::IdentitydiscoveryIdentities () const
virtual bool handleStanza (const QDomElement &stanza)
 You need to implement this method to process incoming XMPP stanzas. More...
virtual bool handleStanza (const QDomElement &stanza, const std::optional< QXmppE2eeMetadata > &e2eeMetadata)
 You need to implement this method to process incoming XMPP stanzas. More...
- Public Member Functions inherited from QXmppLoggable
 QXmppLoggable (QObject *parent=nullptr)
- Public Member Functions inherited from QXmppPubSubEventHandler
virtual bool handlePubSubEvent (const QDomElement &element, const QString &pubSubService, const QString &nodeName)=0

Additional Inherited Members

- Signals inherited from QXmppLoggable
void setGauge (const QString &gauge, double value)
 Sets the given gauge to value.
void logMessage (QXmppLogger::MessageType type, const QString &msg)
 This signal is emitted to send logging messages.
void updateCounter (const QString &counter, qint64 amount=1)
 Updates the given counter by amount.
- Protected Member Functions inherited from QXmppClientExtension
QXmppClientclient ()
virtual void setClient (QXmppClient *client)
void injectIq (const QDomElement &element, const std::optional< QXmppE2eeMetadata > &e2eeMetadata)
bool injectMessage (QXmppMessage &&message)
- Protected Member Functions inherited from QXmppLoggable
void debug (const QString &message)
void info (const QString &message)
void warning (const QString &message)
void logReceived (const QString &message)
void logSent (const QString &message)

Detailed Description

The QXmppUserLocationManager implements XEP-0080: User Location. You'll receive location updates from all presence subscriptions. You can publish location information on the user's account (publish()) and request location information from specific accounts (request()).

The manager needs to be added to the client first and also requires the QXmppPubSubManager.

auto *pubSubManager = client.addNewExtension<QXmppPubSubManager>();
auto *locationManager = client.addNewExtension<QXmppUserLocationManager>();
QXmppClient * client()
Definition: QXmppClientExtension.cpp:78
The QXmppClient class is the main class for using QXmpp.
Definition: QXmppClient.h:84
T * addNewExtension(Args... args)
Definition: QXmppClient.h:129
The QXmppPubSubManager aims to provide publish-subscribe functionality as specified in XEP-0060: Publ...
Definition: QXmppPubSubManager.h:21
Definition: QXmppUserLocationManager.h:20
QXmpp 1.5

Member Typedef Documentation

◆ GetResult

Contains the User Location information or an error.

◆ Item

Used pubsub item type.

◆ PublishResult

Contains the ID of the published item on success or a stanza error.

Member Function Documentation

◆ discoveryFeatures()

QStringList QXmppUserLocationManager::discoveryFeatures ( ) const

Returns the discovery features to add to the client.

Reimplemented from QXmppClientExtension.

◆ itemReceived()

QXmppUserLocationManager::itemReceived ( const QString &  jid,
const QXmppGeolocItem  

Emitted whenever a XEP-0080: User Location items event arrives.

◆ publish()

auto QXmppUserLocationManager::publish ( const Item item)

Publishes User Location information on the user's account.

itemThe User Location item to be published.

◆ request()

auto QXmppUserLocationManager::request ( const QString &  jid)

Request User Location information from an account.

jidThe account JID to request.

The documentation for this class was generated from the following files: