24 #ifndef QXMPPMUCMANAGER_H
25 #define QXMPPMUCMANAGER_H
27 #include "QXmppClientExtension.h"
28 #include "QXmppMucIq.h"
29 #include "QXmppPresence.h"
32 class QXmppDiscoveryIq;
34 class QXmppMucManagerPrivate;
36 class QXmppMucRoomPrivate;
62 Q_PROPERTY(QList<QXmppMucRoom*> rooms READ rooms NOTIFY roomAdded)
69 QList<QXmppMucRoom*> rooms()
const;
78 void invitationReceived(
const QString &roomJid,
const QString &inviter,
const QString &reason);
90 void _q_roomDestroyed(QObject *
object);
93 QXmppMucManagerPrivate *d;
105 Q_PROPERTY(
QXmppMucRoom::Actions allowedActions READ allowedActions NOTIFY allowedActionsChanged)
106 Q_PROPERTY(
bool isJoined READ isJoined NOTIFY isJoinedChanged)
107 Q_PROPERTY(QString jid READ jid CONSTANT)
108 Q_PROPERTY(QString name READ name NOTIFY nameChanged)
109 Q_PROPERTY(QString nickName READ nickName WRITE setNickName NOTIFY nickNameChanged)
110 Q_PROPERTY(QStringList participants READ participants NOTIFY participantsChanged)
111 Q_PROPERTY(QString password READ password WRITE setPassword)
112 Q_PROPERTY(QString subject READ subject WRITE setSubject NOTIFY subjectChanged)
120 ConfigurationAction = 2,
121 PermissionsAction = 4,
124 Q_DECLARE_FLAGS(Actions, Action)
128 Actions allowedActions()
const;
129 bool isJoined()
const;
131 QString name()
const;
133 QString nickName()
const;
134 void setNickName(
const QString &nickName);
136 Q_INVOKABLE QString participantFullJid(
const QString &jid)
const;
138 QStringList participants()
const;
140 QString password()
const;
141 void setPassword(
const QString &password);
143 QString subject()
const;
144 void setSubject(
const QString &subject);
148 void allowedActionsChanged(QXmppMucRoom::Actions actions)
const;
151 void configurationReceived(
const QXmppDataForm &configuration);
154 void error(
const QXmppStanza::Error &error);
160 void kicked(
const QString &jid,
const QString &reason);
163 void isJoinedChanged();
173 void nameChanged(
const QString &name);
176 void nickNameChanged(
const QString &nickName);
179 void participantAdded(
const QString &jid);
182 void participantChanged(
const QString &jid);
185 void participantRemoved(
const QString &jid);
188 void participantsChanged();
192 void permissionsReceived(
const QList<QXmppMucItem> &permissions);
195 void subjectChanged(
const QString &subject);
198 bool ban(
const QString &jid,
const QString &reason);
200 bool kick(
const QString &jid,
const QString &reason);
201 bool leave(
const QString &message = QString());
202 bool requestConfiguration();
203 bool requestPermissions();
205 bool setPermissions(
const QList<QXmppMucItem> &permissions);
206 bool sendInvitation(
const QString &jid,
const QString &reason);
207 bool sendMessage(
const QString &text);
210 void _q_disconnected();
211 void _q_discoveryInfoReceived(
const QXmppDiscoveryIq &iq);
217 QXmppMucRoomPrivate *d;
221 Q_DECLARE_OPERATORS_FOR_FLAGS(QXmppMucRoom::Actions)