24 #ifndef QXMPPMUCMANAGER_H 25 #define QXMPPMUCMANAGER_H 27 #include "QXmppClientExtension.h" 28 #include "QXmppMucIq.h" 29 #include "QXmppPresence.h" 34 class QXmppMucManagerPrivate;
36 class QXmppMucRoomPrivate;
62 Q_PROPERTY(QList<QXmppMucRoom *> rooms READ rooms NOTIFY roomAdded)
72 QList<QXmppMucRoom *> rooms()
const;
81 void invitationReceived(
const QString &roomJid,
const QString &inviter,
const QString &reason);
93 void _q_roomDestroyed(QObject *
object);
96 QXmppMucManagerPrivate *d;
110 Q_PROPERTY(
QXmppMucRoom::Actions allowedActions READ allowedActions NOTIFY allowedActionsChanged)
112 Q_PROPERTY(
bool isJoined READ isJoined NOTIFY isJoinedChanged)
114 Q_PROPERTY(QString jid READ jid CONSTANT)
116 Q_PROPERTY(QString name READ name NOTIFY nameChanged)
118 Q_PROPERTY(QString nickName READ nickName WRITE setNickName NOTIFY nickNameChanged)
120 Q_PROPERTY(QStringList participants READ participants NOTIFY participantsChanged)
122 Q_PROPERTY(QString password READ password WRITE setPassword)
124 Q_PROPERTY(QString subject READ subject WRITE setSubject NOTIFY subjectChanged)
131 ConfigurationAction = 2,
132 PermissionsAction = 4,
135 Q_DECLARE_FLAGS(Actions,
Action)
141 Actions allowedActions()
const;
145 bool isJoined()
const;
157 QString name()
const;
161 QString nickName()
const;
162 void setNickName(
const QString &nickName);
164 Q_INVOKABLE QString participantFullJid(
const QString &jid)
const;
173 QStringList participants()
const;
177 QString password()
const;
178 void setPassword(
const QString &password);
182 QString subject()
const;
183 void setSubject(
const QString &subject);
187 void allowedActionsChanged(QXmppMucRoom::Actions actions)
const;
190 void configurationReceived(
const QXmppDataForm &configuration);
199 void kicked(
const QString &jid,
const QString &reason);
202 void isJoinedChanged();
212 void nameChanged(
const QString &name);
215 void nickNameChanged(
const QString &nickName);
218 void participantAdded(
const QString &jid);
221 void participantChanged(
const QString &jid);
224 void participantRemoved(
const QString &jid);
227 void participantsChanged();
231 void permissionsReceived(
const QList<QXmppMucItem> &permissions);
234 void subjectChanged(
const QString &subject);
237 bool ban(
const QString &jid,
const QString &reason);
239 bool kick(
const QString &jid,
const QString &reason);
240 bool leave(
const QString &message = QString());
241 bool requestConfiguration();
242 bool requestPermissions();
244 bool setPermissions(
const QList<QXmppMucItem> &permissions);
245 bool sendInvitation(
const QString &jid,
const QString &reason);
246 bool sendMessage(
const QString &text);
249 void _q_disconnected();
256 QXmppMucRoomPrivate *d;
260 Q_DECLARE_OPERATORS_FOR_FLAGS(QXmppMucRoom::Actions)
Action
This enum is used to describe chat room actions.
Definition: QXmppMucManager.h:128
The QXmppMucRoom class represents a multi-user chat room as defined by XEP-0045: Multi-User Chat...
Definition: QXmppMucManager.h:104
QXmppDiscoveryIq represents a discovery IQ request or result containing a list of features and other ...
Definition: QXmppDiscoveryIq.h:43
The QXmppPresence class represents an XMPP presence stanza.
Definition: QXmppPresence.h:35
virtual bool handleStanza(const QDomElement &stanza)=0
You need to implement this method to process incoming XMPP stanzas.
virtual QStringList discoveryFeatures() const
Definition: QXmppClientExtension.cpp:54
The QXmppMessage class represents an XMPP message.
Definition: QXmppMessage.h:42
The QXmppMucManager class makes it possible to interact with multi-user chat rooms as defined by XEP-...
Definition: QXmppMucManager.h:59
The QXmppClientExtension class is the base class for QXmppClient extensions.
Definition: QXmppClientExtension.h:47
The Error class represents a stanza error.
Definition: QXmppStanza.h:105
virtual void setClient(QXmppClient *client)
Definition: QXmppClientExtension.cpp:79
The QXmppClient class is the main class for using QXmpp.
Definition: QXmppClient.h:94