Platform SDK: Exchange Server

Nondelivery Report Failed Recipient List Properties

The failed recipient list is a MAPI address list containing information about recipients to whom the gateway could not deliver the message. It contains the following properties:

PR_RECIPIENT_TYPE

This property should be copied from the PR_RECIPIENT_PROPERTY of the appropriate recipient on the original message, if available. Allowed values are MAPI_TO, MAPI_CC, and MAPI_BCC.

PR_RECIPIENT_NUMBER

This property contains the offset of the recipient in the original message. For example, the first recipient has a PR_RECIPIENT_NUMBER value of 1. If this recipient is a member of a distribution list, then the offset of the distribution list in the original message is used.

PR_DISPLAY_NAME

This property contains values from the original message.

PR_ADDRTYPE

This property contains values from the original message.

PR_EMAIL_ADDRESS

This property contains values from the original message.

PR_ENTRYID

This property contains values from the original message.

PR_NDR_REASON_CODE

These codes are enumerated in the MAPITAGS.H file.

PR_NDR_DIAG_CODE

These codes are enumerated in the MAPITAGS.H file. For a list of allowed values, see the documentation for the PR_NDR_DIAG_CODE property in the MAPI Programmer’s Reference.

PR_REPORT_TIME

PR_REPORT_TIME is the time at which a per-recipient report was generated. Ideally this should be the time at which the message was found to be undeliverable. The X.400 standard requires the Arrival Time attribute on reports. However, the Microsoft Exchange Server information store requires PR_REPORT_TIME as a mandatory element on delivery reports and nondelivery reports.

PR_ARRIVAL_TIME

PR_ARRIVAL_TIME is the MAPI equivalent of the X.400 per-recipient report attribute Arrival Time. This is defined as “The date and time at which the communique entered the Management Domain (MD) that produced the per-recipient report.” The MAPI property PR_ARRIVAL_TIME is used in two different contexts; it is a message envelope property associated with the original message, and it is also a per-recipient property on the nondelivery report.

The appropriate values to set for PR_ARRIVAL_TIME and PR_REPORT_TIME depend on where the nondelivery report was generated and on the amount of information known to the gateway and the foreign system.

PR_ORIGINATOR_NON_DELIVERY_REPORT_REQUESTED

This code must be set to TRUE for a nondelivery report.

PR_ORIGINATOR_DELIVERY_REPORT_REQUESTED

This code must be set to FALSE for a nondelivery report.