QXmpp Version: 1.10.0
|
The QXmppVCardManager class gets/sets XMPP vCards. It is an implementation of XEP-0054: vcard-temp. More...
#include <QXmppVCardManager.h>
Public Types | |
using | Result = std::variant< QXmpp::Success, QXmppError > |
Success or QXmppError. | |
using | VCardIqResult = std::variant< QXmppVCardIq, QXmppError > |
QXmppVCardIq or QXmppError. | |
Signals | |
void | vCardReceived (const QXmppVCardIq &) |
void | clientVCardReceived () |
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. | |
Public Member Functions | |
QXmppTask< VCardIqResult > | fetchVCard (const QString &bareJid) |
QXmppTask< Result > | setVCard (const QXmppVCardIq &) |
QString | requestVCard (const QString &bareJid=QString()) |
const QXmppVCardIq & | clientVCard () const |
Returns the vCard of the connected client. | |
void | setClientVCard (const QXmppVCardIq &) |
Sets the vCard of the connected client. | |
QString | requestClientVCard () |
bool | isClientVCardReceived () const |
Returns true if vCard of the connected client has been received else false. | |
Public Member Functions inherited from QXmppClientExtension | |
QXmppClientExtension () | |
virtual QStringList | discoveryFeatures () const |
virtual QList< QXmppDiscoveryIq::Identity > | discoveryIdentities () 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) | |
Protected Member Functions | |
void | onRegistered (QXmppClient *client) override |
void | onUnregistered (QXmppClient *client) override |
Protected Member Functions inherited from QXmppClientExtension | |
QXmppClient * | client () const |
virtual void | setClient (QXmppClient *client) |
virtual void | onRegistered (QXmppClient *client) |
virtual void | onUnregistered (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) |
The QXmppVCardManager class gets/sets XMPP vCards. It is an implementation of XEP-0054: vcard-temp.
QXmppClient::findExtension<QXmppVCardManager>()
should be used to get the instantiated object of this class.Getting vCards of entries in Roster:
It doesn't store vCards of the JIDs in the roster of connected user. Instead client has to request for a particular vCard using requestVCard(). And connect to the signal vCardReceived() to get the requested vCard.
Getting vCard of the connected client:
For getting the vCard of the connected user itself. Client can call requestClientVCard() and on the signal clientVCardReceived() it can get its vCard using clientVCard().
Setting vCard of the client:
Using setClientVCard() client can set its vCard.
|
signal |
This signal is emitted when the client's vCard is received after calling the requestClientVCard() function.
QXmppTask< QXmppVCardManager::VCardIqResult > QXmppVCardManager::fetchVCard | ( | const QString & | bareJid | ) |
Fetches the VCard of a bare JID.
|
overrideprotectedvirtual |
Called after the extension has been added to a QXmppClient.
client |
Reimplemented from QXmppClientExtension.
|
overrideprotectedvirtual |
Called after the extension has been removed from a QXmppClient.
client |
Reimplemented from QXmppClientExtension.
QString QXmppVCardManager::requestClientVCard | ( | ) |
This function requests the server for vCard of the connected user itself. Once received the signal clientVCardReceived() is emitted. Received vCard can be get using clientVCard().
QString QXmppVCardManager::requestVCard | ( | const QString & | jid = QString() | ) |
This function requests the server for vCard of the specified jid. Once received the signal vCardReceived() is emitted.
jid | Jid of the specific entry in the roster |
QXmppTask< QXmppVCardManager::Result > QXmppVCardManager::setVCard | ( | const QXmppVCardIq & | vCard | ) |
Sets the VCard of the currently connected account.
|
signal |
This signal is emitted when the requested vCard is received after calling the requestVCard() function.