diff options
| author | Jeremy Lainé <jeremy.laine@m4x.org> | 2012-02-08 12:51:15 +0000 |
|---|---|---|
| committer | Jeremy Lainé <jeremy.laine@m4x.org> | 2012-02-08 12:51:15 +0000 |
| commit | deb9d6cb53057ca8b90d10d6a3bdc5dcfd1b3ee4 (patch) | |
| tree | d956bad28e28aadc3c83dbf88b3eddb5e1d9a9f4 /src/QXmppPresence.h | |
| parent | e8a1ad0cc608f12874ba4bafbd8282fa537ec9fb (diff) | |
| download | qxmpp-deb9d6cb53057ca8b90d10d6a3bdc5dcfd1b3ee4.tar.gz | |
move files common to client/server into "base"
Diffstat (limited to 'src/QXmppPresence.h')
| -rw-r--r-- | src/QXmppPresence.h | 176 |
1 files changed, 0 insertions, 176 deletions
diff --git a/src/QXmppPresence.h b/src/QXmppPresence.h deleted file mode 100644 index 8b85e01b..00000000 --- a/src/QXmppPresence.h +++ /dev/null @@ -1,176 +0,0 @@ -/* - * Copyright (C) 2008-2011 The QXmpp developers - * - * Author: - * Manjeet Dahiya - * - * Source: - * http://code.google.com/p/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 QXMPPPRESENCE_H -#define QXMPPPRESENCE_H - -#include "QXmppStanza.h" -#include "QXmppMucIq.h" - -/// \brief The QXmppPresence class represents an XMPP presence stanza. -/// -/// \ingroup Stanzas -class QXmppPresence : public QXmppStanza -{ -public: - /// This enum is used to describe a presence type. - enum Type - { - Error = 0, ///< An error has occurred regarding processing or delivery of a previously-sent presence stanza. - Available, ///< Signals that the sender is online and available for communication. - Unavailable, ///< Signals that the sender is no longer available for communication. - Subscribe, ///< The sender wishes to subscribe to the recipient's presence. - Subscribed, ///< The sender has allowed the recipient to receive their presence. - Unsubscribe, ///< The sender is unsubscribing from another entity's presence. - Unsubscribed, ///< The subscription request has been denied or a previously-granted subscription has been cancelled. - Probe ///< A request for an entity's current presence; SHOULD be generated only by a server on behalf of a user. - }; - - // XEP-0153: vCard-Based Avatars - enum VCardUpdateType - { - VCardUpdateNone = 0, ///< Protocol is not supported - VCardUpdateNoPhoto, ///< User is not using any image - VCardUpdateValidPhoto, ///< User is advertising an image - VCardUpdateNotReady ///< User is not ready to advertise an image - -/// \note This enables recipients to distinguish between the absence of an image -/// (empty photo element) and mere support for the protocol (empty update child). - }; - - /// \brief The QXmppPresence::Status class represents the status of an XMPP entity. - /// - /// It stores information such as the "away", "busy" status of a user, or - /// a human-readable description. - - class Status - { - public: - /// This enum is used to describe an availability status. - enum Type - { - Offline = 0, - Online, ///< The entity or resource is online. - Away, ///< The entity or resource is temporarily away. - XA, ///< The entity or resource is away for an extended period. - DND, ///< The entity or resource is busy ("Do Not Disturb"). - Chat, ///< The entity or resource is actively interested in chatting. - }; - - Status(QXmppPresence::Status::Type type = QXmppPresence::Status::Online, - const QString statusText = "", int priority = 0); - - QXmppPresence::Status::Type type() const; - void setType(QXmppPresence::Status::Type); - - QString statusText() const; - void setStatusText(const QString&); - - int priority() const; - void setPriority(int); - - /// \cond - void parse(const QDomElement &element); - void toXml(QXmlStreamWriter *writer) const; - /// \endcond - - private: - QString getTypeStr() const; - void setTypeFromStr(const QString&); - - QXmppPresence::Status::Type m_type; - QString m_statusText; - int m_priority; - }; - - QXmppPresence(QXmppPresence::Type type = QXmppPresence::Available, - const QXmppPresence::Status& status = QXmppPresence::Status()); - ~QXmppPresence(); - - QXmppPresence::Type type() const; - void setType(QXmppPresence::Type); - - QXmppPresence::Status& status(); - const QXmppPresence::Status& status() const; - void setStatus(const QXmppPresence::Status&); - - /// \cond - void parse(const QDomElement &element); - void toXml(QXmlStreamWriter *writer) const; - /// \endcond - - // XEP-0045: Multi-User Chat - QXmppMucItem mucItem() const; - void setMucItem(const QXmppMucItem &item); - - QList<int> mucStatusCodes() const; - void setMucStatusCodes(const QList<int> &codes); - - /// XEP-0153: vCard-Based Avatars - QByteArray photoHash() const; - void setPhotoHash(const QByteArray&); - - VCardUpdateType vCardUpdateType() const; - void setVCardUpdateType(VCardUpdateType type); - - // XEP-0115: Entity Capabilities - QString capabilityHash() const; - void setCapabilityHash(const QString&); - - QString capabilityNode() const; - void setCapabilityNode(const QString&); - - QByteArray capabilityVer() const; - void setCapabilityVer(const QByteArray&); - - QStringList capabilityExt() const; - -private: - QString getTypeStr() const; - void setTypeFromStr(const QString&); - - Type m_type; - QXmppPresence::Status m_status; - - - /// XEP-0153: vCard-Based Avatars - - /// m_photoHash: the SHA1 hash of the avatar image data itself (not the base64-encoded version) - /// in accordance with RFC 3174 - QByteArray m_photoHash; - VCardUpdateType m_vCardUpdateType; - - // XEP-0115: Entity Capabilities - QString m_capabilityHash; - QString m_capabilityNode; - QByteArray m_capabilityVer; - // Legacy XEP-0115: Entity Capabilities - QStringList m_capabilityExt; - - // XEP-0045: Multi-User Chat - QXmppMucItem m_mucItem; - QList<int> m_mucStatusCodes; -}; - -#endif // QXMPPPRESENCE_H |
