diff options
| author | taiBsu <dev@taibsu.de> | 2023-03-09 16:45:10 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-03-09 16:45:10 +0100 |
| commit | 6ea3edfd83a0bf1558d43e48eac563730276c175 (patch) | |
| tree | 0139fb92aca9da9f637237b7bedbd34393b0292e /src/client/QXmppExternalServiceDiscoveryManager.h | |
| parent | 37d56016ac7940f5c876d0293cd9e3f7802ea63a (diff) | |
| download | qxmpp-6ea3edfd83a0bf1558d43e48eac563730276c175.tar.gz | |
Implement XEP-0215: External Service Discovery (#542)
Implements https://xmpp.org/extensions/xep-0215.html in version 1.0.
Diffstat (limited to 'src/client/QXmppExternalServiceDiscoveryManager.h')
| -rw-r--r-- | src/client/QXmppExternalServiceDiscoveryManager.h | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/src/client/QXmppExternalServiceDiscoveryManager.h b/src/client/QXmppExternalServiceDiscoveryManager.h new file mode 100644 index 00000000..79f5f6a1 --- /dev/null +++ b/src/client/QXmppExternalServiceDiscoveryManager.h @@ -0,0 +1,32 @@ +// SPDX-FileCopyrightText: 2023 Tibor Csötönyi <work@taibsu.de> +// +// SPDX-License-Identifier: LGPL-2.1-or-later + +#ifndef QXMPPEXTERNALSERVICEDISCOVERYMANAGER_H +#define QXMPPEXTERNALSERVICEDISCOVERYMANAGER_H + +#include "QXmppClientExtension.h" +#include "QXmppError.h" +#include "QXmppExternalService.h" +#include "QXmppTask.h" + +class QDateTime; +class QXmppExternalServicePrivate; +class QXMPP_EXPORT QXmppExternalServiceDiscoveryManager : public QXmppClientExtension +{ + Q_OBJECT + +public: + QXmppExternalServiceDiscoveryManager(); + ~QXmppExternalServiceDiscoveryManager(); + + using ServicesResult = std::variant<QVector<QXmppExternalService>, QXmppError>; + + QXmppTask<ServicesResult> requestServices(const QString &jid, const QString &node = {}); + + /// \cond + QStringList discoveryFeatures() const override; + /// \endcond +}; + +#endif // QXMPPEXTERNALSERVICEDISCOVERYMANAGER_H |
