QXmppMessage.h
/*
* Copyright (C) 2008-2014 The QXmpp developers
*
* Author:
* Manjeet Dahiya
*
* Source:
* https://github.com/qxmpp-project/qxmpp
*
* This file is a part of QXmpp library.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
*/
#ifndef QXMPPMESSAGE_H
#define QXMPPMESSAGE_H
#include <QDateTime>
#include "QXmppStanza.h"
class QXmppMessagePrivate;
class QXMPP_EXPORT QXmppMessage : public QXmppStanza
{
public:
enum Type
{
Error = 0,
Normal,
Chat,
GroupChat,
Headline
};
enum State
{
None = 0,
Active,
Inactive,
Gone,
Composing,
Paused
};
enum Marker {
NoMarker = 0,
Received,
Displayed,
Acknowledged
};
QXmppMessage(const QString& from = QString(), const QString& to = QString(),
const QString& body = QString(), const QString& thread = QString());
QXmppMessage(const QXmppMessage &other);
~QXmppMessage();
QXmppMessage& operator=(const QXmppMessage &other);
QString body() const;
void setBody(const QString&);
bool isAttentionRequested() const;
void setAttentionRequested(bool requested);
bool isReceiptRequested() const;
void setReceiptRequested(bool requested);
QString mucInvitationJid() const;
void setMucInvitationJid(const QString &jid);
QString mucInvitationPassword() const;
void setMucInvitationPassword(const QString &password);
QString mucInvitationReason() const;
void setMucInvitationReason(const QString &reason);
QString receiptId() const;
void setReceiptId(const QString &id);
QDateTime stamp() const;
void setStamp(const QDateTime &stamp);
QXmppMessage::State state() const;
void setState(QXmppMessage::State);
QString subject() const;
void setSubject(const QString&);
QString thread() const;
void setThread(const QString&);
QXmppMessage::Type type() const;
void setType(QXmppMessage::Type);
QString xhtml() const;
void setXhtml(const QString &xhtml);
// XEP-0333
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);
void parse(const QDomElement &element);
void toXml(QXmlStreamWriter *writer) const;
private:
QSharedDataPointer<QXmppMessagePrivate> d;
};
#endif // QXMPPMESSAGE_H
QXmppMessage::State
State
Definition: QXmppMessage.h:53
QXmppStanza
The QXmppStanza class is the base class for all XMPP stanzas.
Definition: QXmppStanza.h:90
QXmppMessage::Composing
User is composing a message.
Definition: QXmppMessage.h:59
QXmppMessage::Gone
User has effectively ended their participation in the chat session.
Definition: QXmppMessage.h:58
QXmppMessage::Marker
Marker
Definition: QXmppMessage.h:65
QXmppMessage::Active
User is actively participating in the chat session.
Definition: QXmppMessage.h:56
QXmppMessage::Inactive
User has not been actively participating in the chat session.
Definition: QXmppMessage.h:57
QXmppMessage::Type
Type
This enum described a message type.
Definition: QXmppMessage.h:42
QXmppMessage
The QXmppMessage class represents an XMPP message.
Definition: QXmppMessage.h:38
QXmppStanza::operator=
QXmppStanza & operator=(const QXmppStanza &other)
Assigns other to this stanza.
Definition: QXmppStanza.cpp:460