aboutsummaryrefslogtreecommitdiff
path: root/src/QXmppMucManager.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/QXmppMucManager.h')
-rw-r--r--src/QXmppMucManager.h17
1 files changed, 14 insertions, 3 deletions
diff --git a/src/QXmppMucManager.h b/src/QXmppMucManager.h
index 35295b18..7e353d88 100644
--- a/src/QXmppMucManager.h
+++ b/src/QXmppMucManager.h
@@ -24,9 +24,10 @@
#ifndef QXMPPMUCMANAGER_H
#define QXMPPMUCMANAGER_H
-#include <QObject>
#include <QMap>
+#include "QXmppClientExtension.h"
+#include "QXmppMucIq.h"
#include "QXmppPresence.h"
class QXmppDataForm;
@@ -40,12 +41,12 @@ class QXmppOutgoingClient;
///
/// \ingroup Managers
-class QXmppMucManager : public QObject
+class QXmppMucManager : public QXmppClientExtension
{
Q_OBJECT
public:
- QXmppMucManager(QXmppOutgoingClient* stream, QObject *parent = 0);
+ QXmppMucManager(QXmppClient* client);
bool joinRoom(const QString &roomJid, const QString &nickName);
bool leaveRoom(const QString &roomJid);
@@ -53,11 +54,18 @@ public:
bool requestRoomConfiguration(const QString &roomJid);
bool setRoomConfiguration(const QString &roomJid, const QXmppDataForm &form);
+ bool requestRoomPermissions(const QString &roomJid);
+
bool sendInvitation(const QString &roomJid, const QString &jid, const QString &reason);
bool sendMessage(const QString &roomJid, const QString &text);
QMap<QString, QXmppPresence> roomParticipants(const QString& bareJid) const;
+ /// \cond
+ QStringList discoveryFeatures() const;
+ bool handleStanza(QXmppStream *stream, const QDomElement &element);
+ /// \endcond
+
signals:
/// This signal is emitted when an invitation to a chat room is received.
void invitationReceived(const QString &roomJid, const QString &inviter, const QString &reason);
@@ -65,6 +73,9 @@ signals:
/// This signal is emitted when the configuration form for a chat room is received.
void roomConfigurationReceived(const QString &roomJid, const QXmppDataForm &configuration);
+ /// This signal is emitted when the permissions for a chat room are received.
+ void roomPermissionsReceived(const QString &roomJid, const QList<QXmppMucAdminIq::Item> &permissions);
+
void roomParticipantChanged(const QString &roomJid, const QString &nickName);
private slots: