Helper for creating or extracting Message Disposition Notifications (MDN), as defined in RFC-3798. More...
Static Public Member Functions | |
| static void | attachMDNRequest (ref< message > msg, const mailboxList &mailboxes) |
| static void | attachMDNRequest (ref< message > msg, const mailbox &mbox) |
| static const std::vector < sendableMDNInfos > | getPossibleMDNs (const ref< const message > msg) |
| static bool | isMDN (const ref< const message > msg) |
| static receivedMDNInfos | getReceivedMDN (const ref< const message > msg) |
| static bool | needConfirmation (const ref< const message > msg) |
| static ref< message > | buildMDN (const sendableMDNInfos &mdnInfos, const string &text, const charset &ch, const mailbox &expeditor, const disposition &dispo, const string &reportingUA=NULL_STRING, const std::vector< string > &reportingUAProducts=std::vector< string >()) |
Helper for creating or extracting Message Disposition Notifications (MDN), as defined in RFC-3798.
Attach a MDN request to the specified message.
| msg | message in which to add a MDN request | |
| mbox | mailbox to which the MDN will be sent |
References MDNHelper::attachMDNRequest().
| void attachMDNRequest | ( | ref< message > | msg, | |
| const mailboxList & | mailboxes | |||
| ) | [static] |
Attach a MDN request to the specified message.
| msg | message in which to add a MDN request | |
| mailboxes | list of mailboxes to which the MDN will be sent |
Referenced by MDNHelper::attachMDNRequest(), and MDNHelper::getPossibleMDNs().
| ref< message > buildMDN | ( | const sendableMDNInfos & | mdnInfos, | |
| const string & | text, | |||
| const charset & | ch, | |||
| const mailbox & | expeditor, | |||
| const disposition & | dispo, | |||
| const string & | reportingUA = NULL_STRING, |
|||
| const std::vector< string > & | reportingUAProducts = std::vector <string>() | |||
| ) | [static] |
Build a new MDN for the message.
The resulting MDN can then be sent over SMTP transport service.
| mdnInfos | information about the MDN to construct | |
| text | human readable message. The purpose of this message is to provide an easily-understood description of the condition(s) that caused the report to be generated. | |
| ch | charset of the text | |
| expeditor | expeditor of the MDN | |
| dispo | disposition information | |
| reportingUA | name of reporting user-agent (optional) | |
| reportingUAProducts | list of products in the reporting user-agent (optional) |
| const std::vector< sendableMDNInfos > getPossibleMDNs | ( | const ref< const message > | msg | ) | [static] |
Return a list of possible MDNs that can be generated for the specified message.
| msg | message for which to send a MDN |
References mailboxList::appendMailbox(), MDNHelper::attachMDNRequest(), and mailbox::clone().
| receivedMDNInfos getReceivedMDN | ( | const ref< const message > | msg | ) | [static] |
If the specified message is a MDN, return information about it.
| msg | message |
| exceptions::invalid_argument | if the message is not a MDN |
| bool isMDN | ( | const ref< const message > | msg | ) | [static] |
Test whether the specified message is a MDN.
| msg | message |
Referenced by MDNHelper::needConfirmation().
| bool needConfirmation | ( | const ref< const message > | msg | ) | [static] |
Check whether we need user confirmation for sending a MDN even if he/she explicitely allowed automatic send of MDNs.
This can happen in some situations, described in RFC-3798.
| msg | message for which to send a MDN |
References MDNHelper::isMDN().
1.6.2