QXmpp: QXmppMessage.h Source File

QXmpp Version: 1.14.3

Loading...
Searching...
No Matches
QXmppMessage.h
1// SPDX-FileCopyrightText: 2009 Manjeet Dahiya <manjeetdahiya@gmail.com>
2// SPDX-FileCopyrightText: 2010 Jeremy Lainé <jeremy.laine@m4x.org>
3// SPDX-FileCopyrightText: 2018 Linus Jahn <lnj@kaidan.im>
4// SPDX-FileCopyrightText: 2020 Melvin Keskin <melvo@olomono.de>
5// SPDX-FileCopyrightText: 2023 Tibor Csötönyi <work@taibsu.de>
6//
7// SPDX-License-Identifier: LGPL-2.1-or-later
8
9#ifndef QXMPPMESSAGE_H
10#define QXMPPMESSAGE_H
11
12#include "QXmppFallback.h"
13#include "QXmppFileShare.h"
14#include "QXmppStanza.h"
15
16#include <optional>
17
18// Required for source compatibility
19#include <QDateTime>
20
21class QXmppMessagePrivate;
22class QXmppBitsOfBinaryDataList;
23class QXmppFallback;
24class QXmppJingleMessageInitiationElement;
25class QXmppMessageReaction;
26class QXmppMixInvitation;
27#ifdef BUILD_OMEMO
28class QXmppOmemoElement;
29#endif
30class QXmppTrustMessageElement;
31class QXmppOutOfBandUrl;
32class QXmppCallInviteElement;
33
34namespace QXmpp {
35
41 struct Reply {
44 QString to;
46 QString id;
47};
48
49} // namespace QXmpp
50
51 struct QXmppStanzaId {
53 QString id;
55 QString by;
56};
57
63 class QXMPP_EXPORT QXmppMessage : public QXmppStanza
64{
65public:
66#if QXMPP_DEPRECATED_SINCE(1, 5)
68 using EncryptionMethod = QXmpp::EncryptionMethod;
69
70 static const EncryptionMethod NoEncryption = EncryptionMethod::NoEncryption;
71 static const EncryptionMethod UnknownEncryption = EncryptionMethod::UnknownEncryption;
72 static const EncryptionMethod OTR = EncryptionMethod::Otr;
73 static const EncryptionMethod LegacyOpenPGP = EncryptionMethod::LegacyOpenPgp;
74 static const EncryptionMethod OX = EncryptionMethod::Ox;
75 static const EncryptionMethod OMEMO = EncryptionMethod::Omemo0;
77#endif
78
80 enum Type {
81 Error = 0,
82 Normal,
83 Chat,
84 GroupChat,
85 Headline
86 };
87
94 enum State {
95 None = 0,
96 Active,
97 Inactive,
98 Gone,
99 Composing,
100 Paused
101 };
102
108 enum Marker {
109 NoMarker = 0,
110 Received,
111 Displayed,
112 Acknowledged
113 };
114
120 enum Hint {
121 NoPermanentStore = 1 << 0,
122 NoStore = 1 << 1,
123 NoCopy = 1 << 2,
124 Store = 1 << 3
125 };
126 Q_DECLARE_FLAGS(Hints, Hint)
127
128 QXmppMessage(const QString &from = QString(), const QString &to = QString(),
129 const QString &body = QString(), const QString &thread = QString());
130
131 QXmppMessage(const QXmppMessage &other);
132 QXmppMessage(QXmppMessage &&);
133 ~QXmppMessage() override;
134
135 QXmppMessage &operator=(const QXmppMessage &other);
136 QXmppMessage &operator=(QXmppMessage &&);
137
138 bool isXmppStanza() const override;
139
140 QString body() const;
141 void setBody(const QString &);
142
143 QString e2eeFallbackBody() const;
144 void setE2eeFallbackBody(const QString &fallbackBody);
145
146 QString subject() const;
147 void setSubject(const QString &);
148
149 QString thread() const;
150 void setThread(const QString &);
151
152 QString parentThread() const;
153 void setParentThread(const QString &);
154
155 QXmppMessage::Type type() const;
156 void setType(QXmppMessage::Type);
157
158 // XEP-0066: Out of Band Data
159 QString outOfBandUrl() const;
160 void setOutOfBandUrl(const QString &);
161
162 QVector<QXmppOutOfBandUrl> outOfBandUrls() const;
163 void setOutOfBandUrls(const QVector<QXmppOutOfBandUrl> &urls);
164
165 // XEP-0071: XHTML-IM
166 QString xhtml() const;
167 void setXhtml(const QString &xhtml);
168
169 // XEP-0085: Chat State Notifications
170 QXmppMessage::State state() const;
171 void setState(QXmppMessage::State);
172
173 // XEP-0091: Legacy Delayed Delivery | XEP-0203: Delayed Delivery
174 QDateTime stamp() const;
175 void setStamp(const QDateTime &stamp);
176
177 // XEP-0184: Message Delivery Receipts
178 bool isReceiptRequested() const;
179 void setReceiptRequested(bool requested);
180
181 QString receiptId() const;
182 void setReceiptId(const QString &id);
183
184 // XEP-0224: Attention
185 bool isAttentionRequested() const;
186 void setAttentionRequested(bool requested);
187
188 // XEP-0231: Bits of Binary
189 QXmppBitsOfBinaryDataList bitsOfBinaryData() const;
190 QXmppBitsOfBinaryDataList &bitsOfBinaryData();
191 void setBitsOfBinaryData(const QXmppBitsOfBinaryDataList &bitsOfBinaryData);
192
193 // XEP-0245: The /me Command
194 static bool isSlashMeCommand(const QString &body);
195 bool isSlashMeCommand() const;
196 static QString slashMeCommandText(const QString &body);
197 QString slashMeCommandText() const;
198
199 // XEP-0249: Direct MUC Invitations
200 QString mucInvitationJid() const;
201 void setMucInvitationJid(const QString &jid);
202
203 QString mucInvitationPassword() const;
204 void setMucInvitationPassword(const QString &password);
205
206 QString mucInvitationReason() const;
207 void setMucInvitationReason(const QString &reason);
208
209 // XEP-0280: Message Carbons
210 bool isPrivate() const;
211 void setPrivate(const bool);
212 bool isCarbonForwarded() const;
213 void setCarbonForwarded(bool);
214
215 // XEP-0308: Last Message Correction
216 QString replaceId() const;
217 void setReplaceId(const QString &);
218
219 // XEP-0333: Chat State Markers
220 bool isMarkable() const;
221 void setMarkable(const bool);
222
223 QString markedId() const;
224 void setMarkerId(const QString &);
225
226 QString markedThread() const;
227 void setMarkedThread(const QString &);
228
229 Marker marker() const;
230 void setMarker(const Marker);
231
232 // XEP-0334: Message Processing Hints
233 bool hasHint(const Hint hint) const;
234 void addHint(const Hint hint);
235 void removeHint(const Hint hint);
236 void removeAllHints();
237
238 // XEP-0353: Jingle Message Initiation
239 std::optional<QXmppJingleMessageInitiationElement> jingleMessageInitiationElement() const;
240 void setJingleMessageInitiationElement(const std::optional<QXmppJingleMessageInitiationElement> &jingleMessageInitiationElement);
241
242 // XEP-0359: Unique and Stable Stanza IDs
243#if QXMPP_DEPRECATED_SINCE(1, 8)
244 [[deprecated("Use stanzaIds() instead.")]]
245 QString stanzaId() const;
246 [[deprecated("Use setStanzaIds() instead.")]]
247 void setStanzaId(const QString &id);
248
249 [[deprecated("Use stanzaIds() instead.")]]
250 QString stanzaIdBy() const;
251 [[deprecated("Use setStanzaIds() instead.")]]
252 void setStanzaIdBy(const QString &id);
253#endif
254
255 QVector<QXmppStanzaId> stanzaIds() const;
256 void setStanzaIds(const QVector<QXmppStanzaId> &);
257
258 QString originId() const;
259 void setOriginId(const QString &id);
260
261 // XEP-0367: Message Attaching
262 QString attachId() const;
263 void setAttachId(const QString &);
264
265 // XEP-0369: Mediated Information eXchange (MIX)
266 QString mixParticipantId() const;
267
268 QString mixUserJid() const;
269 void setMixUserJid(const QString &);
270
271 QString mixUserNick() const;
272 void setMixUserNick(const QString &);
273
274 // XEP-0380: Explicit Message Encryption
275 QXmpp::EncryptionMethod encryptionMethod() const;
276 void setEncryptionMethod(QXmpp::EncryptionMethod);
277 QString encryptionMethodNs() const;
278 void setEncryptionMethodNs(const QString &);
279
280 QString encryptionName() const;
281 void setEncryptionName(const QString &);
282
283 // XEP-0382: Spoiler messages
284 bool isSpoiler() const;
285 void setIsSpoiler(bool);
286
287 QString spoilerHint() const;
288 void setSpoilerHint(const QString &);
289
290 // XEP-0407: Mediated Information eXchange (MIX): Miscellaneous Capabilities
291 std::optional<QXmppMixInvitation> mixInvitation() const;
292 void setMixInvitation(const std::optional<QXmppMixInvitation> &mixInvitation);
293
294 // XEP-0421: Occupant identifiers for semi-anonymous MUCs
295 QString mucOccupantId() const;
296 void setMucOccupantId(const QString &occupantId);
297
298 // XEP-0428: Fallback Indication
299#if QXMPP_DEPRECATED_SINCE(1, 7)
300 [[deprecated("Use fallbackMarkers()")]]
301 bool isFallback() const;
302 [[deprecated("Use setFallbackMarkers()")]]
303 void setIsFallback(bool isFallback);
304#endif
305 const QVector<QXmppFallback> &fallbackMarkers() const;
306 void setFallbackMarkers(const QVector<QXmppFallback> &);
307 QString readFallbackRemovedText(QXmppFallback::Element element, const QVector<QString> &supportedNamespaces) const;
308 QString readFallbackText(QXmppFallback::Element element, QStringView forNamespace) const;
309
310 // XEP-0434: Trust Messages (TM)
311 std::optional<QXmppTrustMessageElement> trustMessageElement() const;
312 void setTrustMessageElement(const std::optional<QXmppTrustMessageElement> &trustMessageElement);
313
314 // XEP-0444: Message Reactions
315 std::optional<QXmppMessageReaction> reaction() const;
316 void setReaction(const std::optional<QXmppMessageReaction> &reaction);
317
318 // XEP-0447: Stateless file sharing
319 const QVector<QXmppFileShare> &sharedFiles() const;
320 void setSharedFiles(const QVector<QXmppFileShare> &sharedFiles);
321 QVector<QXmppFileSourcesAttachment> fileSourcesAttachments() const;
322 void setFileSourcesAttachments(const QVector<QXmppFileSourcesAttachment> &);
323
324 // XEP-0461: Message Replies
325 std::optional<QXmpp::Reply> reply() const;
326 void setReply(const std::optional<QXmpp::Reply> &);
327 QString readReplyQuoteFromBody() const;
328
329 // XEP-0482: Call Invites
330 std::optional<QXmppCallInviteElement> callInviteElement() const;
331 void setCallInviteElement(std::optional<QXmppCallInviteElement> callInviteElement);
332
334#ifdef BUILD_OMEMO
335 // XEP-0384: OMEMO Encryption
336 std::optional<QXmppOmemoElement> omemoElement() const;
337 void setOmemoElement(const std::optional<QXmppOmemoElement> &omemoElement);
338#endif
339
340 void parse(const QDomElement &element) override final;
341 virtual void parse(const QDomElement &element, QXmpp::SceMode);
342 void toXml(QXmlStreamWriter *writer) const override final;
343 virtual void toXml(QXmlStreamWriter *writer, QXmpp::SceMode) const;
345
346 void parseExtensions(const QDomElement &element, QXmpp::SceMode sceMode);
347 virtual bool parseExtension(const QDomElement &element, QXmpp::SceMode);
348 virtual void serializeExtensions(QXmlStreamWriter *writer, QXmpp::SceMode, const QString &baseNamespace = {}) const;
349
350private:
351 QSharedDataPointer<QXmppMessagePrivate> d;
352};
353
354Q_DECLARE_OPERATORS_FOR_FLAGS(QXmppMessage::Hints)
355Q_DECLARE_METATYPE(QXmppMessage)
356
357#endif // QXMPPMESSAGE_H
QXmppBitsOfBinaryDataList
Definition QXmppBitsOfBinaryDataList.h:16
QXmppCallInviteElement
The QXmppCallInviteElement class represents a Call Invite element as specified by XEP-0482: Call Invi...
Definition QXmppJingleData.h:689
QXmppFallback
Definition QXmppFallback.h:20
QXmppFallback::Element
Element
Definition QXmppFallback.h:22
QXmppJingleMessageInitiationElement
The QXmppJingleMessageInitiationElement class represents a Jingle Message Initiation element as speci...
Definition QXmppJingleData.h:642
QXmppMessage
The QXmppMessage class represents an XMPP message.
Definition QXmppMessage.h:64
QXmppMessage::trustMessageElement
std::optional< QXmppTrustMessageElement > trustMessageElement() const
Definition QXmppMessage.cpp:1469
QXmppMessage::setMucInvitationPassword
void setMucInvitationPassword(const QString &password)
Definition QXmppMessage.cpp:681
QXmppMessage::receiptId
QString receiptId() const
Definition QXmppMessage.cpp:508
QXmppMessage::body
QString body() const
Returns the message's body.
Definition QXmppMessage.cpp:261
QXmppMessage::mucOccupantId
QString mucOccupantId() const
Definition QXmppMessage.cpp:1294
QXmppMessage::encryptionMethodNs
QString encryptionMethodNs() const
Definition QXmppMessage.cpp:1137
QXmppMessage::setOutOfBandUrls
void setOutOfBandUrls(const QVector< QXmppOutOfBandUrl > &urls)
Definition QXmppMessage.cpp:405
QXmppMessage::type
QXmppMessage::Type type() const
Returns the message's type.
Definition QXmppMessage.cpp:303
QXmppMessage::setMarkable
void setMarkable(const bool)
Definition QXmppMessage.cpp:793
QXmppMessage::isPrivate
bool isPrivate() const
Definition QXmppMessage.cpp:715
QXmppMessage::setReceiptId
void setReceiptId(const QString &id)
Definition QXmppMessage.cpp:518
QXmppMessage::subject
QString subject() const
Returns the message's subject.
Definition QXmppMessage.cpp:315
QXmppMessage::mucInvitationPassword
QString mucInvitationPassword() const
Definition QXmppMessage.cpp:670
QXmppMessage::isMarkable
bool isMarkable() const
Definition QXmppMessage.cpp:783
QXmppMessage::thread
QString thread() const
Returns the message's thread.
Definition QXmppMessage.cpp:327
QXmppMessage::jingleMessageInitiationElement
std::optional< QXmppJingleMessageInitiationElement > jingleMessageInitiationElement() const
Definition QXmppMessage.cpp:906
QXmppMessage::reply
std::optional< QXmpp::Reply > reply() const
Definition QXmppMessage.cpp:1557
QXmppMessage::setIsFallback
void setIsFallback(bool isFallback)
Definition QXmppMessage.cpp:1335
QXmppMessage::markedThread
QString markedThread() const
Definition QXmppMessage.cpp:823
QXmppMessage::setEncryptionMethod
void setEncryptionMethod(QXmpp::EncryptionMethod)
Definition QXmppMessage.cpp:1126
QXmppMessage::isFallback
bool isFallback() const
Definition QXmppMessage.cpp:1320
QXmppMessage::setReaction
void setReaction(const std::optional< QXmppMessageReaction > &reaction)
Definition QXmppMessage.cpp:1505
QXmppMessage::addHint
void addHint(const Hint hint)
Definition QXmppMessage.cpp:875
QXmppMessage::xhtml
QString xhtml() const
Definition QXmppMessage.cpp:415
QXmppMessage::setThread
void setThread(const QString &)
Sets the message's thread.
Definition QXmppMessage.cpp:333
QXmppMessage::mixUserNick
QString mixUserNick() const
Definition QXmppMessage.cpp:1083
QXmppMessage::setState
void setState(QXmppMessage::State)
Definition QXmppMessage.cpp:447
QXmppMessage::parseExtension
virtual bool parseExtension(const QDomElement &element, QXmpp::SceMode)
Definition QXmppMessage.cpp:1684
QXmppMessage::encryptionName
QString encryptionName() const
Definition QXmppMessage.cpp:1160
QXmppMessage::stanzaId
QString stanzaId() const
Definition QXmppMessage.cpp:928
QXmppMessage::setCallInviteElement
void setCallInviteElement(std::optional< QXmppCallInviteElement > callInviteElement)
Definition QXmppMessage.cpp:1604
QXmppMessage::setMixUserJid
void setMixUserJid(const QString &)
Definition QXmppMessage.cpp:1073
QXmppMessage::attachId
QString attachId() const
Definition QXmppMessage.cpp:1028
QXmppMessage::stamp
QDateTime stamp() const
Definition QXmppMessage.cpp:458
QXmppMessage::mucInvitationReason
QString mucInvitationReason() const
Definition QXmppMessage.cpp:692
QXmppMessage::parseExtensions
void parseExtensions(const QDomElement &element, QXmpp::SceMode sceMode)
Definition QXmppMessage.cpp:1654
QXmppMessage::setSubject
void setSubject(const QString &)
Sets the message's subject.
Definition QXmppMessage.cpp:321
QXmppMessage::setMixUserNick
void setMixUserNick(const QString &)
Definition QXmppMessage.cpp:1093
QXmppMessage::mixInvitation
std::optional< QXmppMixInvitation > mixInvitation() const
Definition QXmppMessage.cpp:1272
QXmppMessage::setPrivate
void setPrivate(const bool)
Definition QXmppMessage.cpp:727
QXmppMessage::QXmppMessage
QXmppMessage(const QString &from=QString(), const QString &to=QString(), const QString &body=QString(), const QString &thread=QString())
Definition QXmppMessage.cpp:232
QXmppMessage::mixParticipantId
QString mixParticipantId() const
Definition QXmppMessage.cpp:1053
QXmppMessage::isCarbonForwarded
bool isCarbonForwarded() const
Definition QXmppMessage.cpp:737
QXmppMessage::removeHint
void removeHint(const Hint hint)
Definition QXmppMessage.cpp:886
QXmppMessage::e2eeFallbackBody
QString e2eeFallbackBody() const
Definition QXmppMessage.cpp:282
QXmppMessage::removeAllHints
void removeAllHints()
Definition QXmppMessage.cpp:897
QXmppMessage::setMarkedThread
void setMarkedThread(const QString &)
Definition QXmppMessage.cpp:833
QXmppMessage::isSpoiler
bool isSpoiler() const
Definition QXmppMessage.cpp:1190
QXmppMessage::reaction
std::optional< QXmppMessageReaction > reaction() const
Definition QXmppMessage.cpp:1489
QXmppMessage::outOfBandUrls
QVector< QXmppOutOfBandUrl > outOfBandUrls() const
Definition QXmppMessage.cpp:395
QXmppMessage::isReceiptRequested
bool isReceiptRequested() const
Definition QXmppMessage.cpp:483
QXmppMessage::setReplaceId
void setReplaceId(const QString &)
Definition QXmppMessage.cpp:772
QXmppMessage::outOfBandUrl
QString outOfBandUrl() const
Definition QXmppMessage.cpp:367
QXmppMessage::callInviteElement
std::optional< QXmppCallInviteElement > callInviteElement() const
Definition QXmppMessage.cpp:1596
QXmppMessage::setReply
void setReply(const std::optional< QXmpp::Reply > &)
Definition QXmppMessage.cpp:1567
QXmppMessage::readFallbackText
QString readFallbackText(QXmppFallback::Element element, QStringView forNamespace) const
Definition QXmppMessage.cpp:1430
QXmppMessage::setOutOfBandUrl
void setOutOfBandUrl(const QString &)
Definition QXmppMessage.cpp:383
QXmppMessage::mixUserJid
QString mixUserJid() const
Definition QXmppMessage.cpp:1063
QXmppMessage::setSharedFiles
void setSharedFiles(const QVector< QXmppFileShare > &sharedFiles)
Definition QXmppMessage.cpp:1525
QXmppMessage::setType
void setType(QXmppMessage::Type)
Sets the message's type.
Definition QXmppMessage.cpp:309
QXmppMessage::setReceiptRequested
void setReceiptRequested(bool requested)
Definition QXmppMessage.cpp:494
QXmppMessage::encryptionMethod
QXmpp::EncryptionMethod encryptionMethod() const
Definition QXmppMessage.cpp:1112
QXmppMessage::setMarkerId
void setMarkerId(const QString &)
Definition QXmppMessage.cpp:813
QXmppMessage::isAttentionRequested
bool isAttentionRequested() const
Definition QXmppMessage.cpp:529
QXmppMessage::setMarker
void setMarker(const Marker)
Definition QXmppMessage.cpp:853
QXmppMessage::setOriginId
void setOriginId(const QString &id)
Definition QXmppMessage.cpp:1017
QXmppMessage::setBitsOfBinaryData
void setBitsOfBinaryData(const QXmppBitsOfBinaryDataList &bitsOfBinaryData)
Definition QXmppMessage.cpp:576
QXmppMessage::fallbackMarkers
const QVector< QXmppFallback > & fallbackMarkers() const
Definition QXmppMessage.cpp:1349
QXmppMessage::setXhtml
void setXhtml(const QString &xhtml)
Definition QXmppMessage.cpp:425
QXmppMessage::setStanzaIdBy
void setStanzaIdBy(const QString &id)
Definition QXmppMessage.cpp:971
QXmppMessage::setParentThread
void setParentThread(const QString &)
Definition QXmppMessage.cpp:357
QXmppMessage::setMucInvitationJid
void setMucInvitationJid(const QString &jid)
Definition QXmppMessage.cpp:659
QXmppMessage::stanzaIdBy
QString stanzaIdBy() const
Definition QXmppMessage.cpp:958
QXmppMessage::setEncryptionName
void setEncryptionName(const QString &)
Definition QXmppMessage.cpp:1177
QXmppMessage::setStamp
void setStamp(const QDateTime &stamp)
Definition QXmppMessage.cpp:472
QXmppMessage::readFallbackRemovedText
QString readFallbackRemovedText(QXmppFallback::Element element, const QVector< QString > &supportedNamespaces) const
Definition QXmppMessage.cpp:1373
QXmppMessage::originId
QString originId() const
Definition QXmppMessage.cpp:1006
QXmppMessage::operator=
QXmppMessage & operator=(QXmppMessage &&)
Move-assignment operator.
QXmppMessage::setEncryptionMethodNs
void setEncryptionMethodNs(const QString &)
Definition QXmppMessage.cpp:1148
QXmppMessage::mucInvitationJid
QString mucInvitationJid() const
Definition QXmppMessage.cpp:648
QXmppMessage::markedId
QString markedId() const
Definition QXmppMessage.cpp:803
QXmppMessage::setMucOccupantId
void setMucOccupantId(const QString &occupantId)
Definition QXmppMessage.cpp:1305
QXmppMessage::operator=
QXmppMessage & operator=(const QXmppMessage &other)
Assignment operator.
QXmppMessage::setFileSourcesAttachments
void setFileSourcesAttachments(const QVector< QXmppFileSourcesAttachment > &)
Definition QXmppMessage.cpp:1547
QXmppMessage::slashMeCommandText
static QString slashMeCommandText(const QString &body)
Definition QXmppMessage.cpp:618
QXmppMessage::hasHint
bool hasHint(const Hint hint) const
Definition QXmppMessage.cpp:864
QXmppMessage::setFallbackMarkers
void setFallbackMarkers(const QVector< QXmppFallback > &)
Definition QXmppMessage.cpp:1359
QXmppMessage::setStanzaId
void setStanzaId(const QString &id)
Definition QXmppMessage.cpp:941
QXmppMessage::state
QXmppMessage::State state() const
Definition QXmppMessage.cpp:436
QXmppMessage::Type
Type
This enum describes a message type.
Definition QXmppMessage.h:80
QXmppMessage::replaceId
QString replaceId() const
Definition QXmppMessage.cpp:761
QXmppMessage::bitsOfBinaryData
QXmppBitsOfBinaryDataList bitsOfBinaryData() const
Definition QXmppMessage.cpp:554
QXmppMessage::setIsSpoiler
void setIsSpoiler(bool)
Definition QXmppMessage.cpp:1205
QXmppMessage::setJingleMessageInitiationElement
void setJingleMessageInitiationElement(const std::optional< QXmppJingleMessageInitiationElement > &jingleMessageInitiationElement)
Definition QXmppMessage.cpp:915
QXmppMessage::setSpoilerHint
void setSpoilerHint(const QString &)
Definition QXmppMessage.cpp:1233
QXmppMessage::fileSourcesAttachments
QVector< QXmppFileSourcesAttachment > fileSourcesAttachments() const
Definition QXmppMessage.cpp:1536
QXmppMessage::setAttentionRequested
void setAttentionRequested(bool requested)
Definition QXmppMessage.cpp:542
QXmppMessage::isSlashMeCommand
static bool isSlashMeCommand(const QString &body)
Definition QXmppMessage.cpp:587
QXmppMessage::parentThread
QString parentThread() const
Definition QXmppMessage.cpp:345
QXmppMessage::stanzaIds
QVector< QXmppStanzaId > stanzaIds() const
Definition QXmppMessage.cpp:985
QXmppMessage::spoilerHint
QString spoilerHint() const
Definition QXmppMessage.cpp:1217
QXmppMessage::setBody
void setBody(const QString &)
Sets the message's body.
Definition QXmppMessage.cpp:267
QXmppMessage::setMixInvitation
void setMixInvitation(const std::optional< QXmppMixInvitation > &mixInvitation)
Definition QXmppMessage.cpp:1283
QXmppMessage::setTrustMessageElement
void setTrustMessageElement(const std::optional< QXmppTrustMessageElement > &trustMessageElement)
Definition QXmppMessage.cpp:1479
QXmppMessage::QXmppMessage
QXmppMessage(QXmppMessage &&)
Move-constructor.
QXmppMessage::setMucInvitationReason
void setMucInvitationReason(const QString &reason)
Definition QXmppMessage.cpp:703
QXmppMessage::Marker
Marker
Definition QXmppMessage.h:108
QXmppMessage::Hint
Hint
Definition QXmppMessage.h:120
QXmppMessage::NoStore
@ NoStore
Do not store at all.
Definition QXmppMessage.h:122
QXmppMessage::Store
@ Store
Do store the message.
Definition QXmppMessage.h:124
QXmppMessage::NoPermanentStore
@ NoPermanentStore
Do not allow permanent storage.
Definition QXmppMessage.h:121
QXmppMessage::NoCopy
@ NoCopy
Do not copy the message.
Definition QXmppMessage.h:123
QXmppMessage::State
State
Definition QXmppMessage.h:94
QXmppMessage::Active
@ Active
User is actively participating in the chat session.
Definition QXmppMessage.h:96
QXmppMessage::Inactive
@ Inactive
User has not been actively participating in the chat session.
Definition QXmppMessage.h:97
QXmppMessage::Composing
@ Composing
User is composing a message.
Definition QXmppMessage.h:99
QXmppMessage::Gone
@ Gone
User has effectively ended their participation in the chat session.
Definition QXmppMessage.h:98
QXmppMessage::None
@ None
The message does not contain any chat state information.
Definition QXmppMessage.h:95
QXmppMessage::Paused
@ Paused
User had been composing but now has stopped.
Definition QXmppMessage.h:100
QXmppMessage::marker
Marker marker() const
Definition QXmppMessage.cpp:843
QXmppMessage::serializeExtensions
virtual void serializeExtensions(QXmlStreamWriter *writer, QXmpp::SceMode, const QString &baseNamespace={}) const
Definition QXmppMessage.cpp:1943
QXmppMessage::readReplyQuoteFromBody
QString readReplyQuoteFromBody() const
Definition QXmppMessage.cpp:1578
QXmppMessage::QXmppMessage
QXmppMessage(const QXmppMessage &other)
Constructs a copy of other.
QXmppMessage::setAttachId
void setAttachId(const QString &)
Definition QXmppMessage.cpp:1042
QXmppMessage::sharedFiles
const QVector< QXmppFileShare > & sharedFiles() const
Definition QXmppMessage.cpp:1515
QXmppMessage::setStanzaIds
void setStanzaIds(const QVector< QXmppStanzaId > &)
Definition QXmppMessage.cpp:995
QXmppMessage::setCarbonForwarded
void setCarbonForwarded(bool)
Definition QXmppMessage.cpp:749
QXmppMessage::setE2eeFallbackBody
void setE2eeFallbackBody(const QString &fallbackBody)
Definition QXmppMessage.cpp:297
QXmppMessageReaction
The QXmppMessageReaction class represents a reaction to a message in the form of emojis as specified ...
Definition QXmppMessageReaction.h:17
QXmppNonza::parse
virtual void parse(const QDomElement &)=0
QXmppNonza::toXml
virtual void toXml(QXmlStreamWriter *writer) const =0
QXmppNonza::isXmppStanza
virtual bool isXmppStanza() const
Definition QXmppNonza.h:19
QXmppOutOfBandUrl
Definition QXmppOutOfBandUrl.h:21
QXmppStanza::QXmppStanza
QXmppStanza(const QString &from=QString(), const QString &to=QString())
Definition QXmppStanza.cpp:693
QXmppTrustMessageElement
The QXmppTrustMessageElement class represents a trust message element as defined by XEP-0434: Trust M...
Definition QXmppTrustMessageElement.h:19
QXmpp
Definition Algorithms.h:14
QXmpp::SceMode
SceMode
Definition QXmppGlobal.h:148
QXmpp::EncryptionMethod
EncryptionMethod
Definition QXmppGlobal.h:101
QXmpp::Reply
Definition QXmppMessage.h:41
QXmpp::Reply::to
QString to
Definition QXmppMessage.h:44
QXmpp::Reply::id
QString id
ID of the referenced message.
Definition QXmppMessage.h:46
QXmppStanzaId
Stanza ID element as defined in XEP-0359: Unique and Stable Stanza IDs.
Definition QXmppMessage.h:51
QXmppStanzaId::by
QString by
JID of the generating entity.
Definition QXmppMessage.h:55
QXmppStanzaId::id
QString id
Identifier of the stanza element.
Definition QXmppMessage.h:53