29#include "QXmppStanza.h"
36class QXmppMessagePrivate;
90 NoPermanentStore = 1 << 0,
112 QXmppMessage(
const QString &from = QString(),
const QString &to = QString(),
113 const QString &body = QString(),
const QString &thread = QString());
122 QString body()
const;
123 void setBody(
const QString &);
125 QString subject()
const;
126 void setSubject(
const QString &);
128 QString thread()
const;
129 void setThread(
const QString &);
131 QString parentThread()
const;
132 void setParentThread(
const QString &);
138 QString outOfBandUrl()
const;
139 void setOutOfBandUrl(
const QString &);
142 QString xhtml()
const;
143 void setXhtml(
const QString &xhtml);
150 QDateTime stamp()
const;
151 void setStamp(
const QDateTime &stamp);
154 bool isReceiptRequested()
const;
155 void setReceiptRequested(
bool requested);
157 QString receiptId()
const;
158 void setReceiptId(
const QString &
id);
161 bool isAttentionRequested()
const;
162 void setAttentionRequested(
bool requested);
170 static bool isSlashMeCommand(
const QString &body);
171 bool isSlashMeCommand()
const;
172 static QString slashMeCommandText(
const QString &body);
173 QString slashMeCommandText()
const;
176 QString mucInvitationJid()
const;
177 void setMucInvitationJid(
const QString &jid);
179 QString mucInvitationPassword()
const;
180 void setMucInvitationPassword(
const QString &password);
182 QString mucInvitationReason()
const;
183 void setMucInvitationReason(
const QString &reason);
186 bool isPrivate()
const;
187 void setPrivate(
const bool);
190 QString replaceId()
const;
191 void setReplaceId(
const QString &);
194 bool isMarkable()
const;
195 void setMarkable(
const bool);
197 QString markedId()
const;
198 void setMarkerId(
const QString &);
200 QString markedThread()
const;
201 void setMarkedThread(
const QString &);
204 void setMarker(
const Marker);
207 bool hasHint(
const Hint hint)
const;
208 void addHint(
const Hint hint);
209 void removeHint(
const Hint hint);
210 void removeAllHints();
213 QString stanzaId()
const;
214 void setStanzaId(
const QString &
id);
216 QString stanzaIdBy()
const;
217 void setStanzaIdBy(
const QString &
id);
219 QString originId()
const;
220 void setOriginId(
const QString &
id);
223 QString attachId()
const;
224 void setAttachId(
const QString &);
227 QString mixUserJid()
const;
228 void setMixUserJid(
const QString &);
230 QString mixUserNick()
const;
231 void setMixUserNick(
const QString &);
236 QString encryptionMethodNs()
const;
237 void setEncryptionMethodNs(
const QString &);
239 QString encryptionName()
const;
240 void setEncryptionName(
const QString &);
243 bool isSpoiler()
const;
244 void setIsSpoiler(
bool);
246 QString spoilerHint()
const;
247 void setSpoilerHint(
const QString &);
250 std::optional<QXmppMixInvitation> mixInvitation()
const;
251 void setMixInvitation(
const std::optional<QXmppMixInvitation> &mixInvitation);
254 bool isFallback()
const;
255 void setIsFallback(
bool isFallback);
258 void parse(
const QDomElement &element)
override;
259 void toXml(QXmlStreamWriter *writer)
const override;
263 void parseExtension(
const QDomElement &element, QXmppElementList &unknownExtensions);
264 void parseXElement(
const QDomElement &element, QXmppElementList &unknownElements);
266 QSharedDataPointer<QXmppMessagePrivate> d;
Definition: QXmppBitsOfBinaryDataList.h:40
The QXmppMessage class represents an XMPP message.
Definition: QXmppMessage.h:46
EncryptionMethod
Definition: QXmppMessage.h:103
@ OTR
XEP-0364: Current Off-the-Record Messaging Usage
Definition: QXmppMessage.h:106
@ UnknownEncryption
Unknown encryption.
Definition: QXmppMessage.h:105
@ OX
XEP-0373: OpenPGP for XMPP
Definition: QXmppMessage.h:108
@ NoEncryption
No encryption.
Definition: QXmppMessage.h:104
@ LegacyOpenPGP
XEP-0027: Current Jabber OpenPGP Usage
Definition: QXmppMessage.h:107
QXmppMessage & operator=(const QXmppMessage &other)
Assigns other to this message.
Type
This enum describes a message type.
Definition: QXmppMessage.h:49
Marker
Definition: QXmppMessage.h:77
Hint
Definition: QXmppMessage.h:89
State
Definition: QXmppMessage.h:63
@ Active
User is actively participating in the chat session.
Definition: QXmppMessage.h:65
@ Inactive
User has not been actively participating in the chat session.
Definition: QXmppMessage.h:66
@ Composing
User is composing a message.
Definition: QXmppMessage.h:68
@ Gone
User has effectively ended their participation in the chat session.
Definition: QXmppMessage.h:67
QXmppMessage(const QXmppMessage &other)
Constructs a copy of other.
The QXmppMixInvitation class is used to invite a user to a XEP-0369: Mediated Information eXchange (M...
Definition: QXmppMixInvitation.h:43
The Error class represents a stanza error.
Definition: QXmppStanza.h:106
The QXmppStanza class is the base class for all XMPP stanzas.
Definition: QXmppStanza.h:100
virtual bool isXmppStanza() const
Definition: QXmppStanza.cpp:671