kmime_mdn.h File Reference
#include "kmime_export.h"
#include <QList>
#include <QString>
Include dependency graph for kmime_mdn.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.


enum  KMime::MDN::ActionMode { ManualAction , AutomaticAction }
enum  KMime::MDN::DispositionModifier {
  Error , Warning , Superseded , Expired ,
enum  KMime::MDN::DispositionType {
  Displayed , Read = Displayed , Deleted , Dispatched ,
  Forwarded = Dispatched , Processed , Denied , Failed
enum  KMime::MDN::SendingMode { SentManually , SentAutomatically }


QString KMime::MDN::descriptionFor (DispositionType d, const QList< DispositionModifier > &)
QByteArray KMime::MDN::dispositionNotificationBodyContent (const QString &finalRecipient, const QByteArray &originalRecipient, const QByteArray &originalMsgID, DispositionType disposition, ActionMode actionMode, SendingMode sendingMode, const QList< DispositionModifier > &dispositionModifers=QList< DispositionModifier >(), const QString &special=QString())

Detailed Description

This file is part of the API for handling MIME data and provides functions for supporting Message Disposition Notifications (MDNs), also known as email return receipts.

Provides support for Message Disposition Notifications.

Marc Mutz <>
MDN: see Message_Disposition_Notification
Message Disposition Notification: Return receipts for email are called message disposition notifications. Their format and usage is outlined in RFC2298.
RFC 2298: RFC that defines the An Extensible Message Format for Message Disposition Notifications.

Definition in file kmime_mdn.h.

Enumeration Type Documentation

◆ ActionMode

The following disposition modes are defined:

  • ManualAction The disposition described by the disposition type was a result of an explicit instruction by the user rather than some sort of automatically performed action.
  • AutomaticAction The disposition described by the disposition type was a result of an automatic action, rather than an explicit instruction by the user for this message.

IOW: ManualAction for user-driven actions, AutomanticAction for filtering.

Definition at line 142 of file kmime_mdn.h.

◆ DispositionModifier

The following disposition modifiers are defined:

  • Error An error of some sort occurred that prevented successful processing of the message. Further information is contained in an Error field.
  • Warning The message was successfully processed but some sort of exceptional condition occurred. Further information is contained in a Warning field.
  • Superseded The message has been automatically rendered obsolete by another message received. The recipient may still access and read the message later.
  • Expired The message has reached its expiration date and has been automatically removed from the recipient's mailbox.
  • MailboxTerminated The recipient's mailbox has been terminated and all message in it automatically removed.

Definition at line 119 of file kmime_mdn.h.

◆ DispositionType

The following disposition-types are defined:

  • Displayed The message has been displayed by the UA to someone reading the recipient's mailbox. There is no guarantee that the content has been read or understood.
  • Dispatched The message has been sent somewhere in some manner (e.g., printed, faxed, forwarded) without necessarily having been previously displayed to the user. The user may or may not see the message later.
  • Processed The message has been processed in some manner (i.e., by some sort of rules or server) without being displayed to the user. The user may or may not see the message later, or there may not even be a human user associated with the mailbox.
  • Deleted The message has been deleted. The recipient may or may not have seen the message. The recipient might "undelete" the message at a later time and read the message.
  • Denied The recipient does not wish the sender to be informed of the message's disposition. A UA may also silently ignore message disposition requests in this situation.
  • Failed A failure occurred that prevented the proper generation of an MDN. More information about the cause of the failure may be contained in a Failure field. The "failed" disposition type is not to be used for the situation in which there is is some problem in processing the message other than interpreting the request for an MDN. The "processed" or other disposition type with appropriate disposition modifiers is to be used in such situations.

IOW: Displayed when - well -displayed Dispatched when forwarding unseen ( == new ) Processed (maybe) when piping unseen, but probably never used Deleted when deleting unseen Denied on user command Failed on Disposition-Notification-Options containing unknown required options. ( == any required options ) Failed needs a description in the special parameter.

Definition at line 89 of file kmime_mdn.h.

◆ SendingMode

  • SentManually The user explicitly gave permission for this particular MDN to be sent.
  • SentAutomatically The MDN was sent because the MUA had previously been configured to do so automatically.

IOW: SentManually for when we have asked the user SentAutomatically when we use the default specified by the user

Definition at line 158 of file kmime_mdn.h.

Function Documentation

◆ descriptionFor()

KMIME_EXPORT QString KMime::MDN::descriptionFor ( DispositionType d,
const QList< DispositionModifier > &  )

Definition at line 267 of file kmime_mdn.cpp.

◆ dispositionNotificationBodyContent()

KMIME_EXPORT QByteArray KMime::MDN::dispositionNotificationBodyContent ( const QString & r,
const QByteArray & o,
const QByteArray & omid,
DispositionType d,
ActionMode a,
SendingMode s,
const QList< DispositionModifier > & m,
const QString & special )

Generates the content of the message/disposition-notification body part.

Definition at line 236 of file kmime_mdn.cpp.

This file is part of the KDE documentation.
Documentation copyright © 1996-2024 The KDE developers.
Generated on Tue Mar 26 2024 11:20:12 by doxygen 1.10.0 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.