5 #ifndef QXMPPMUCMANAGER_H 6 #define QXMPPMUCMANAGER_H 8 #include "QXmppClientExtension.h" 9 #include "QXmppMucIq.h" 10 #include "QXmppPresence.h" 15 class QXmppMucManagerPrivate;
17 class QXmppMucRoomPrivate;
44 Q_PROPERTY(QList<QXmppMucRoom *> rooms READ rooms NOTIFY roomAdded)
54 QList<QXmppMucRoom *> rooms()
const;
63 void invitationReceived(
const QString &roomJid,
const QString &inviter,
const QString &reason);
75 void _q_roomDestroyed(QObject *
object);
78 const std::unique_ptr<QXmppMucManagerPrivate> d;
92 Q_PROPERTY(
QXmppMucRoom::Actions allowedActions READ allowedActions NOTIFY allowedActionsChanged)
94 Q_PROPERTY(
bool isJoined READ isJoined NOTIFY isJoinedChanged)
96 Q_PROPERTY(QString jid READ jid CONSTANT)
98 Q_PROPERTY(QString name READ name NOTIFY nameChanged)
100 Q_PROPERTY(QString nickName READ nickName WRITE setNickName NOTIFY nickNameChanged)
102 Q_PROPERTY(QStringList participants READ participants NOTIFY participantsChanged)
104 Q_PROPERTY(QString password READ password WRITE setPassword)
106 Q_PROPERTY(QString subject READ subject WRITE setSubject NOTIFY subjectChanged)
113 ConfigurationAction = 2,
114 PermissionsAction = 4,
117 Q_DECLARE_FLAGS(Actions, Action)
123 Actions allowedActions()
const;
127 bool isJoined()
const;
139 QString name()
const;
143 QString nickName()
const;
144 void setNickName(
const QString &nickName);
146 Q_INVOKABLE QString participantFullJid(
const QString &jid)
const;
155 QStringList participants()
const;
159 QString password()
const;
160 void setPassword(
const QString &password);
164 QString subject()
const;
165 void setSubject(
const QString &subject);
169 void allowedActionsChanged(QXmppMucRoom::Actions actions);
172 void configurationReceived(
const QXmppDataForm &configuration);
181 void kicked(
const QString &jid,
const QString &reason);
184 void isJoinedChanged();
194 void nameChanged(
const QString &name);
197 void nickNameChanged(
const QString &nickName);
200 void participantAdded(
const QString &jid);
203 void participantChanged(
const QString &jid);
206 void participantRemoved(
const QString &jid);
209 void participantsChanged();
213 void permissionsReceived(
const QList<QXmppMucItem> &permissions);
216 void subjectChanged(
const QString &subject);
219 bool ban(
const QString &jid,
const QString &reason);
221 bool kick(
const QString &jid,
const QString &reason);
222 bool leave(
const QString &message = QString());
223 bool requestConfiguration();
224 bool requestPermissions();
226 bool setPermissions(
const QList<QXmppMucItem> &permissions);
227 bool sendInvitation(
const QString &jid,
const QString &reason);
228 bool sendMessage(
const QString &text);
231 void _q_disconnected();
238 const std::unique_ptr<QXmppMucRoomPrivate> d;
242 Q_DECLARE_OPERATORS_FOR_FLAGS(QXmppMucRoom::Actions)
virtual bool handleStanza(const QDomElement &stanza)
You need to implement this method to process incoming XMPP stanzas.
Definition: QXmppClientExtension.cpp:51
Action
This enum is used to describe chat room actions.
Definition: QXmppMucManager.h:110
The QXmppMucRoom class represents a multi-user chat room as defined by XEP-0045: Multi-User Chat...
Definition: QXmppMucManager.h:86
Definition: QXmppDiscoveryIq.h:17
The QXmppPresence class represents an XMPP presence stanza.
Definition: QXmppPresence.h:20
virtual QStringList discoveryFeatures() const
Definition: QXmppClientExtension.cpp:22
The QXmppMessage class represents an XMPP message.
Definition: QXmppMessage.h:34
The QXmppMucManager class makes it possible to interact with multi-user chat rooms as defined by XEP-...
Definition: QXmppMucManager.h:40
The QXmppClientExtension class is the base class for QXmppClient extensions.
Definition: QXmppClientExtension.h:32
The Error class represents a stanza error.
Definition: QXmppStanza.h:93
virtual void setClient(QXmppClient *client)
Definition: QXmppClientExtension.cpp:88
The QXmppClient class is the main class for using QXmpp.
Definition: QXmppClient.h:83