QXmpp
Version:1.3.1
|
The QXmppMessage class represents an XMPP message. More...
#include <QXmppMessage.h>
Public Types | |
enum | Type { Error = 0, Normal, Chat, GroupChat, Headline } |
This enum describes a message type. | |
enum | State { None = 0, Active, Inactive, Gone, Composing, Paused } |
enum | Marker { NoMarker = 0, Received, Displayed, Acknowledged } |
enum | Hint { NoPermanentStore = 1 << 0, NoStore = 1 << 1, NoCopy = 1 << 2, Store = 1 << 3 } |
enum | EncryptionMethod { NoEncryption, UnknownEncryption, OTR, LegacyOpenPGP, OX, OMEMO } |
Public Member Functions | |
QXmppMessage (const QString &from=QString(), const QString &to=QString(), const QString &body=QString(), const QString &thread=QString()) | |
QXmppMessage (const QXmppMessage &other) | |
Constructs a copy of other. | |
QXmppMessage & | operator= (const QXmppMessage &other) |
Assigns other to this message. | |
bool | isXmppStanza () const override |
QString | body () const |
Returns the message's body. | |
void | setBody (const QString &) |
QString | subject () const |
Returns the message's subject. | |
void | setSubject (const QString &) |
QString | thread () const |
Returns the message's thread. | |
void | setThread (const QString &) |
QString | parentThread () const |
void | setParentThread (const QString &) |
QXmppMessage::Type | type () const |
Returns the message's type. | |
void | setType (QXmppMessage::Type) |
QString | outOfBandUrl () const |
void | setOutOfBandUrl (const QString &) |
QString | xhtml () const |
void | setXhtml (const QString &xhtml) |
QXmppMessage::State | state () const |
void | setState (QXmppMessage::State) |
QDateTime | stamp () const |
void | setStamp (const QDateTime &stamp) |
bool | isReceiptRequested () const |
void | setReceiptRequested (bool requested) |
QString | receiptId () const |
void | setReceiptId (const QString &id) |
bool | isAttentionRequested () const |
void | setAttentionRequested (bool requested) |
QXmppBitsOfBinaryDataList | bitsOfBinaryData () const |
QXmppBitsOfBinaryDataList & | bitsOfBinaryData () |
void | setBitsOfBinaryData (const QXmppBitsOfBinaryDataList &bitsOfBinaryData) |
bool | isSlashMeCommand () const |
QString | slashMeCommandText () const |
QString | mucInvitationJid () const |
void | setMucInvitationJid (const QString &jid) |
QString | mucInvitationPassword () const |
void | setMucInvitationPassword (const QString &password) |
QString | mucInvitationReason () const |
void | setMucInvitationReason (const QString &reason) |
bool | isPrivate () const |
void | setPrivate (const bool) |
QString | replaceId () const |
void | setReplaceId (const QString &) |
bool | isMarkable () const |
void | setMarkable (const bool) |
QString | markedId () const |
void | setMarkerId (const QString &) |
QString | markedThread () const |
void | setMarkedThread (const QString &) |
Marker | marker () const |
void | setMarker (const Marker) |
bool | hasHint (const Hint hint) const |
void | addHint (const Hint hint) |
void | removeHint (const Hint hint) |
void | removeAllHints () |
QString | stanzaId () const |
void | setStanzaId (const QString &id) |
QString | stanzaIdBy () const |
void | setStanzaIdBy (const QString &id) |
QString | originId () const |
void | setOriginId (const QString &id) |
QString | attachId () const |
void | setAttachId (const QString &) |
QString | mixUserJid () const |
void | setMixUserJid (const QString &) |
QString | mixUserNick () const |
void | setMixUserNick (const QString &) |
EncryptionMethod | encryptionMethod () const |
void | setEncryptionMethod (EncryptionMethod) |
QString | encryptionMethodNs () const |
void | setEncryptionMethodNs (const QString &) |
QString | encryptionName () const |
void | setEncryptionName (const QString &) |
bool | isSpoiler () const |
void | setIsSpoiler (bool) |
QString | spoilerHint () const |
void | setSpoilerHint (const QString &) |
bool | isFallback () const |
void | setIsFallback (bool isFallback) |
Public Member Functions inherited from QXmppStanza | |
QXmppStanza (const QString &from=QString(), const QString &to=QString()) | |
QXmppStanza (const QXmppStanza &other) | |
Constructs a copy of other. | |
virtual | ~QXmppStanza () |
Destroys a QXmppStanza. | |
QXmppStanza & | operator= (const QXmppStanza &other) |
Assigns other to this stanza. | |
QString | to () const |
void | setTo (const QString &) |
QString | from () const |
Returns the stanza's sender JID. | |
void | setFrom (const QString &) |
QString | id () const |
Returns the stanza's identifier. | |
void | setId (const QString &) |
QString | lang () const |
Returns the stanza's language. | |
void | setLang (const QString &) |
QXmppStanza::Error | error () const |
Returns the stanza's error. | |
void | setError (const QXmppStanza::Error &error) |
QXmppElementList | extensions () const |
void | setExtensions (const QXmppElementList &elements) |
QList< QXmppExtendedAddress > | extendedAddresses () const |
void | setExtendedAddresses (const QList< QXmppExtendedAddress > &extendedAddresses) |
Static Public Member Functions | |
static bool | isSlashMeCommand (const QString &body) |
static QString | slashMeCommandText (const QString &body) |
The QXmppMessage class represents an XMPP message.
This enum describes different end-to-end encryption methods. These can be used to mark a message explicitly as encrypted with a specific algothim. See XEP-0380: Explicit Message Encryption for details.
Enumerator | |
---|---|
NoEncryption | No encryption. |
UnknownEncryption | Unknown encryption. |
OTR | XEP-0364: Current Off-the-Record Messaging Usage |
LegacyOpenPGP | XEP-0027: Current Jabber OpenPGP Usage |
OX | XEP-0373: OpenPGP for XMPP |
OMEMO | XEP-0384: OMEMO Encryption |
enum QXmppMessage::Hint |
XEP-0334: Message Processing Hints
Enumerator | |
---|---|
NoPermanentStore | Do not allow permanent storage. |
NoStore | Do not store at all. |
NoCopy | Do not copy the message. |
Store | Do store the message. |
enum QXmppMessage::Marker |
This enum describes a chat marker as defined by XEP-0333: Chat Markers.
enum QXmppMessage::State |
This enum describes a chat state as defined by XEP-0085: Chat State Notifications.
QXmppMessage::QXmppMessage | ( | const QString & | from = QString() , |
const QString & | to = QString() , |
||
const QString & | body = QString() , |
||
const QString & | thread = QString() |
||
) |
Constructs a QXmppMessage.
from | |
to | |
body | |
thread |
void QXmppMessage::addHint | ( | const Hint | hint | ) |
Adds a hint to the message, as defined in XEP-0334: Message Processing Hints
QString QXmppMessage::attachId | ( | ) | const |
Returns the message id this message is linked/attached to. See XEP-0367: Message Attaching for details.
QXmppBitsOfBinaryDataList & QXmppMessage::bitsOfBinaryData | ( | ) | const |
QXmppMessage::EncryptionMethod QXmppMessage::encryptionMethod | ( | ) | const |
Returns the encryption method this message is advertised to be encrypted with.
encryptionMethodNs()
and possibly also a name with encryptionName()
.QString QXmppMessage::encryptionMethodNs | ( | ) | const |
Returns the namespace of the advertised encryption method via. XEP-0380: Explicit Message Encryption.
QString QXmppMessage::encryptionName | ( | ) | const |
Returns the associated name of the encryption method this message advertises to be encrypted with. See XEP-0380: Explicit Message Encryption for details.
bool QXmppMessage::hasHint | ( | const Hint | hint | ) | const |
Returns true if the message contains the hint passed, as defined in XEP-0334: Message Processing Hints
bool QXmppMessage::isAttentionRequested | ( | ) | const |
Returns true if the user's attention is requested, as defined by XEP-0224: Attention.
bool QXmppMessage::isFallback | ( | ) | const |
Sets whether this message is only a fallback according to XEP-0428: Fallback Indication.
This is useful for clients not supporting end-to-end encryption to indicate that the message body does not contain the intended text of the author.
bool QXmppMessage::isMarkable | ( | ) | const |
Returns true if a message is markable, as defined by XEP-0333: Chat Markers.
bool QXmppMessage::isPrivate | ( | ) | const |
Returns if the message is marked with a <private/> tag, in which case it will not be forwarded to other resources according to XEP-0280: Message Carbons.
bool QXmppMessage::isReceiptRequested | ( | ) | const |
Returns true if a delivery receipt is requested, as defined by XEP-0184: Message Delivery Receipts.
bool QXmppMessage::isSlashMeCommand | ( | ) | const |
Returns whether the body of the message is a '/me command' as defined in XEP-0245: The /me Command.
|
static |
Returns whether the given text is a '/me command' as defined in XEP-0245: The /me Command.
bool QXmppMessage::isSpoiler | ( | ) | const |
Returns true, if this is a spoiler message according to XEP-0382: Spoiler messages. The spoiler hint however can still be empty.
A spoiler message's content should not be visible to the user by default.
|
overridevirtual |
Indicates if the QXmppStanza is a stanza in the XMPP sense (i. e. a message, iq or presence)
Reimplemented from QXmppStanza.
QString QXmppMessage::markedId | ( | ) | const |
Returns the message's marker id, as defined by XEP-0333: Chat Markers.
QString QXmppMessage::markedThread | ( | ) | const |
Returns the message's marker thread, as defined by XEP-0333: Chat Markers.
QXmppMessage::Marker QXmppMessage::marker | ( | ) | const |
Returns the message's marker, as defined by XEP-0333: Chat Markers.
QString QXmppMessage::mixUserJid | ( | ) | const |
Returns the actual JID of a MIX channel participant.
QString QXmppMessage::mixUserNick | ( | ) | const |
Returns the MIX participant's nickname.
QString QXmppMessage::mucInvitationJid | ( | ) | const |
Returns the JID for a multi-user chat direct invitation as defined by XEP-0249: Direct MUC Invitations.
QString QXmppMessage::mucInvitationPassword | ( | ) | const |
Returns the password for a multi-user chat direct invitation as defined by XEP-0249: Direct MUC Invitations.
QString QXmppMessage::mucInvitationReason | ( | ) | const |
Returns the reason for a multi-user chat direct invitation as defined by XEP-0249: Direct MUC Invitations.
QString QXmppMessage::originId | ( | ) | const |
Returns the origin ID of the message according to XEP-0359: Unique and Stable Stanza IDs.
QString QXmppMessage::outOfBandUrl | ( | ) | const |
Returns a possibly attached URL from XEP-0066: Out of Band Data
QString QXmppMessage::parentThread | ( | ) | const |
Returns the optional parent thread of this message.
The possibility to create child threads was added in RFC6121.
QString QXmppMessage::receiptId | ( | ) | const |
If this message is a delivery receipt, returns the ID of the original message.
void QXmppMessage::removeAllHints | ( | ) |
Removes all hints from the message, as defined in XEP-0334: Message Processing Hints
void QXmppMessage::removeHint | ( | const Hint | hint | ) |
Removes a hint from the message, as defined in XEP-0334: Message Processing Hints
QString QXmppMessage::replaceId | ( | ) | const |
Returns the message id to replace with this message as used in XEP-0308: Last Message Correction. If the returned string is empty, this message is not replacing another.
void QXmppMessage::setAttachId | ( | const QString & | attachId | ) |
Sets the id of the attached message as in XEP-0367: Message Attaching. This can be used for a "reply to" or "reaction" function.
The used message id depends on the message context, see the Business rules section of the XEP for details about when to use which id.
void QXmppMessage::setAttentionRequested | ( | bool | requested | ) |
Sets whether the user's attention is requested, as defined by XEP-0224: Attention.
requested | Whether to request attention (true) or not (false) |
void QXmppMessage::setBitsOfBinaryData | ( | const QXmppBitsOfBinaryDataList & | bitsOfBinaryData | ) |
Sets a list of XEP-0231: Bits of Binary attachments to be included.
void QXmppMessage::setBody | ( | const QString & | body | ) |
Sets the message's body.
body |
void QXmppMessage::setEncryptionMethod | ( | QXmppMessage::EncryptionMethod | method | ) |
Advertises that this message is encrypted with the given encryption method. See XEP-0380: Explicit Message Encryption for details.
void QXmppMessage::setEncryptionMethodNs | ( | const QString & | encryptionMethod | ) |
Sets the namespace of the encryption method this message advertises to be encrypted with. See XEP-0380: Explicit Message Encryption for details.
void QXmppMessage::setEncryptionName | ( | const QString & | encryptionName | ) |
Sets the name of the encryption method for XEP-0380: Explicit Message Encryption.
void QXmppMessage::setIsFallback | ( | bool | isFallback | ) |
Sets whether this message is only a fallback according to XEP-0428: Fallback Indication.
This is useful for clients not supporting end-to-end encryption to indicate that the message body does not contain the intended text of the author.
void QXmppMessage::setIsSpoiler | ( | bool | isSpoiler | ) |
Sets whether this is a spoiler message as specified in XEP-0382: Spoiler messages.
The content of spoiler messages will not be displayed by default to the user. However, clients not supporting spoiler messages will still display the content as usual.
void QXmppMessage::setMarkable | ( | const bool | markable | ) |
Sets if the message is markable, as defined by XEP-0333: Chat Markers.
void QXmppMessage::setMarkedThread | ( | const QString & | markedThread | ) |
Sets the message's marked thread, as defined by XEP-0333: Chat Markers.
void QXmppMessage::setMarker | ( | const Marker | marker | ) |
Sets the message's marker, as defined by XEP-0333: Chat Markers
void QXmppMessage::setMarkerId | ( | const QString & | markerId | ) |
Sets the message's marker id, as defined by XEP-0333: Chat Markers.
void QXmppMessage::setMixUserJid | ( | const QString & | mixUserJid | ) |
Sets the actual JID of a MIX channel participant.
void QXmppMessage::setMixUserNick | ( | const QString & | mixUserNick | ) |
Sets the MIX participant's nickname.
void QXmppMessage::setMucInvitationJid | ( | const QString & | jid | ) |
Sets the JID for a multi-user chat direct invitation as defined by XEP-0249: Direct MUC Invitations.
void QXmppMessage::setMucInvitationPassword | ( | const QString & | password | ) |
Sets the password for a multi-user chat direct invitation as defined by XEP-0249: Direct MUC Invitations.
void QXmppMessage::setMucInvitationReason | ( | const QString & | reason | ) |
Sets the reason for a multi-user chat direct invitation as defined by XEP-0249: Direct MUC Invitations.
void QXmppMessage::setOriginId | ( | const QString & | id | ) |
Sets the origin ID of the message according to XEP-0359: Unique and Stable Stanza IDs.
void QXmppMessage::setOutOfBandUrl | ( | const QString & | url | ) |
Sets the attached URL for XEP-0066: Out of Band Data
void QXmppMessage::setParentThread | ( | const QString & | parent | ) |
Sets the optional parent thread of this message.
The possibility to create child threads was added in RFC6121.
void QXmppMessage::setPrivate | ( | const bool | priv | ) |
If true is passed, the message is marked with a <private/> tag, in which case it will not be forwarded to other resources according to XEP-0280: Message Carbons.
void QXmppMessage::setReceiptId | ( | const QString & | id | ) |
Make this message a delivery receipt for the message with the given id.
void QXmppMessage::setReceiptRequested | ( | bool | requested | ) |
Sets whether a delivery receipt is requested, as defined by XEP-0184: Message Delivery Receipts.
void QXmppMessage::setReplaceId | ( | const QString & | replaceId | ) |
Sets the message id to replace with this message as in XEP-0308: Last Message Correction.
void QXmppMessage::setSpoilerHint | ( | const QString & | spoilerHint | ) |
Sets a spoiler hint for XEP-0382: Spoiler messages. If the spoiler hint is not empty, isSpoiler will be set to true.
A spoiler hint is optional for spoiler messages.
Keep in mind that the spoiler hint is not displayed at all by clients not supporting spoiler messages.
void QXmppMessage::setStamp | ( | const QDateTime & | stamp | ) |
void QXmppMessage::setStanzaId | ( | const QString & | id | ) |
Sets the stanza ID of the message according to XEP-0359: Unique and Stable Stanza IDs.
void QXmppMessage::setStanzaIdBy | ( | const QString & | by | ) |
Sets the creator of the stanza ID according to XEP-0359: Unique and Stable Stanza IDs.
void QXmppMessage::setState | ( | QXmppMessage::State | state | ) |
Sets the the chat state notification according to XEP-0085: Chat State Notifications.
void QXmppMessage::setSubject | ( | const QString & | subject | ) |
Sets the message's subject.
subject |
void QXmppMessage::setThread | ( | const QString & | thread | ) |
Sets the message's thread.
thread |
void QXmppMessage::setType | ( | QXmppMessage::Type | type | ) |
Sets the message's type.
type |
void QXmppMessage::setXhtml | ( | const QString & | xhtml | ) |
Sets the message's XHTML body as defined by XEP-0071: XHTML-IM.
QString QXmppMessage::slashMeCommandText | ( | ) | const |
Returns the part of the body after the /me command.
This cuts off '/me ' (with the space) from the body, in case the body starts with that. In case the body does not contain a /me command as defined in XEP-0245: The /me Command, a null string is returned.
This is useful when displaying the /me command correctly to the user.
|
static |
Returns the part of the body after the /me command.
This cuts off '/me ' (with the space) from the body, in case the body starts with that. In case the body does not contain a /me command as defined in XEP-0245: The /me Command, a null string is returned.
This is useful when displaying the /me command correctly to the user.
QString QXmppMessage::spoilerHint | ( | ) | const |
Returns the spoiler hint as specified in XEP-0382: Spoiler messages.
The hint may be empty, even if isSpoiler is true.
QDateTime QXmppMessage::stamp | ( | ) | const |
QString QXmppMessage::stanzaId | ( | ) | const |
Returns the stanza ID of the message according to XEP-0359: Unique and Stable Stanza IDs.
QString QXmppMessage::stanzaIdBy | ( | ) | const |
Returns the creator of the stanza ID according to XEP-0359: Unique and Stable Stanza IDs.
QXmppMessage::State QXmppMessage::state | ( | ) | const |
Returns the the chat state notification according to XEP-0085: Chat State Notifications.
QString QXmppMessage::xhtml | ( | ) | const |
Returns the message's XHTML body as defined by XEP-0071: XHTML-IM.