QXmpp Version: 1.10.3
Loading...
Searching...
No Matches
QXmppAttentionManager.h
1// SPDX-FileCopyrightText: 2020 Linus Jahn <lnj@kaidan.im>
2//
3// SPDX-License-Identifier: LGPL-2.1-or-later
4
5#ifndef QXMPPATTENTIONMANAGER_H
6#define QXMPPATTENTIONMANAGER_H
7
8#include "QXmppClientExtension.h"
9
10#include <QTime>
11
12class QXmppAttentionManagerPrivate;
13class QXmppMessage;
14
16{
17 Q_OBJECT
18
19public:
20 QXmppAttentionManager(quint8 allowedAttempts = 3, QTime timeFrame = QTime(0, 15, 0));
22
23 QStringList discoveryFeatures() const override;
24
25 quint8 allowedAttempts() const;
27
28 QTime allowedAttemptsTimeInterval() const;
29 void setAllowedAttemptsTimeInterval(QTime interval);
30
31public Q_SLOTS:
32 QString requestAttention(const QString &jid, const QString &message = {});
33
34Q_SIGNALS:
35 void attentionRequested(const QXmppMessage &message, bool isTrusted);
37
38protected:
39 void onRegistered(QXmppClient *client) override;
40 void onUnregistered(QXmppClient *client) override;
41
42private Q_SLOTS:
43 void handleMessageReceived(const QXmppMessage &message);
44
45private:
46 const std::unique_ptr<QXmppAttentionManagerPrivate> d;
47};
48
49#endif // QXMPPATTENTIONMANAGER_H
void setAllowedAttemptsTimeInterval(QTime interval)
Definition QXmppAttentionManager.cpp:148
void setAllowedAttempts(quint8 allowedAttempts)
Definition QXmppAttentionManager.cpp:124
QTime allowedAttemptsTimeInterval() const
Definition QXmppAttentionManager.cpp:136
QXmppAttentionManager(quint8 allowedAttempts=3, QTime timeFrame=QTime(0, 15, 0))
QXmppAttentionManager::QXmppAttentionManager.
Definition QXmppAttentionManager.cpp:86
quint8 allowedAttempts() const
Definition QXmppAttentionManager.cpp:111
void attentionRequestRateLimited(const QXmppMessage &message)
void attentionRequested(const QXmppMessage &message, bool isTrusted)
QString requestAttention(const QString &jid, const QString &message={})
Definition QXmppAttentionManager.cpp:167
virtual QStringList discoveryFeatures() const
Definition QXmppClientExtension.cpp:22
virtual void onUnregistered(QXmppClient *client)
Definition QXmppClientExtension.cpp:95
virtual void onRegistered(QXmppClient *client)
Definition QXmppClientExtension.cpp:85
QXmppClient * client() const
Definition QXmppClientExtension.cpp:57
QXmppClientExtension()
Definition QXmppClientExtension.cpp:12
The QXmppMessage class represents an XMPP message.
Definition QXmppMessage.h:64