QXmpp Version: 1.5.6
Loading...
Searching...
No Matches
Public Types | Public Member Functions | List of all members
QXmppUserLocationManager Class Reference
Inheritance diagram for QXmppUserLocationManager:
Inheritance graph
[legend]
Collaboration diagram for QXmppUserLocationManager:
Collaboration graph
[legend]

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 QList< QXmppDiscoveryIq::IdentitydiscoveryIdentities () const
 
virtual bool handleStanza (const QDomElement &stanza)
 You need to implement this method to process incoming XMPP stanzas.
 
virtual bool handleStanza (const QDomElement &stanza, const std::optional< QXmppE2eeMetadata > &e2eeMetadata)
 You need to implement this method to process incoming XMPP stanzas.
 
- 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
Since
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
overridevirtual

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.

Parameters
itemThe User Location item to be published.

◆ request()

auto QXmppUserLocationManager::request ( const QString &  jid)

Request User Location information from an account.

Parameters
jidThe account JID to request.

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