QXmpp Version: 1.10.0
QXmppVersionManager.h
1// SPDX-FileCopyrightText: 2010 Manjeet Dahiya <manjeetdahiya@gmail.com>
2//
3// SPDX-License-Identifier: LGPL-2.1-or-later
4
5#ifndef QXMPPVERSIONMANAGER_H
6#define QXMPPVERSIONMANAGER_H
7
8#include "QXmppClientExtension.h"
9
10class QXmppVersionIq;
11class QXmppVersionManagerPrivate;
12
23class QXMPP_EXPORT QXmppVersionManager : public QXmppClientExtension
24{
25 Q_OBJECT
26
27public:
29 ~QXmppVersionManager() override;
30
31 QString requestVersion(const QString &jid);
32
33 void setClientName(const QString &);
34 void setClientVersion(const QString &);
35 void setClientOs(const QString &);
36
37 QString clientName() const;
38 QString clientVersion() const;
39 QString clientOs() const;
40
42 QStringList discoveryFeatures() const override;
43 bool handleStanza(const QDomElement &element) override;
44 QXmppVersionIq handleIq(QXmppVersionIq &&iq);
46
47Q_SIGNALS:
50
51private:
52 const std::unique_ptr<QXmppVersionManagerPrivate> d;
53};
54
55#endif // QXMPPVERSIONMANAGER_H
The QXmppClientExtension class is the base class for QXmppClient extensions.
Definition: QXmppClientExtension.h:32
virtual QStringList discoveryFeatures() const
Definition: QXmppClientExtension.cpp:22
virtual bool handleStanza(const QDomElement &stanza)
You need to implement this method to process incoming XMPP stanzas.
Definition: client/compat/removed_api.cpp:26
The QXmppVersionIq class represents an IQ for conveying a software version as defined by XEP-0092: So...
Definition: QXmppVersionIq.h:16
The QXmppVersionManager class makes it possible to request for the software version of an entity as d...
Definition: QXmppVersionManager.h:24
void versionReceived(const QXmppVersionIq &)
This signal is emitted when a version response is received.