Platform SDK: Exchange Server |
The envelope is a MAPI message that contains the following properties.
PR_MESSAGE_CLASS is used for the message class. This property should be in the form REPORT.X.NDR, where X is the message class of the original message. If the original message is unavailable, this property should be set to REPORT.IPM.Note.NDR.
PR_REPORT_DESTINATION NAME and PR_DESTINATION_ENTRY_ID are address properties for the recipient of the nondelivery report. These properties should always be available on the original message. If the original message is unavailable, they can be determined through the same mechanism that the gateway uses to map recipient addresses on incoming mail, such as proxy address lookup.
Microsoft Exchange Server reports can only be sent to a single recipient. If a gateway receives a nondelivery report that must go to multiple recipients, the gateway must create and submit several messages.
PR_MTS_SUBJECT_ID is used for the Message Transfer System (MTS) identifier from the original message. In the X.400 model, a message is given an MTS identifier when it enters the MTS for delivery. When a Microsoft Exchange Server message is submitted to a gateway, the MTS identifier is written into the message’s PR_MTS_ID property.
If the original message and its envelope are available when a nondelivery report is created, the PR_MTS_SUBJECT_ID property on the report should be copied from the PR_MTS_ID property of the original message.
If the original message and its envelope are unavailable, there are two alternatives:
PR_MTS_SUBJECT_ID is a binary MAPI property that it must contain a null-terminated string. The data pointer of a PR_MTS_SUBJECT_ID SPropValue structure must point to a null-terminated string and the byte count must include the terminating null.
The correct format for PR_MTS_SUBJECT_ID is:
c=country name;a=ADMD name;p=PRMD ID;l=local ID\0
where the parameters can be anything that meets the requirements for X.400 MTS identifiers.
An invented value for PR_MTS_SUBJECT_ID should contain a reasonable approximation of true MTS ID values. The gateway can obtain correct values for country name, ADMD name, and PRMD ID in several ways:
The value for Local ID in an MTS ID should be chosen so that it encapsulates whatever identifying information was available from the foreign system. This could be a correlation identifier, a foreign message identifier, or other information.
For example, the following value is a syntactically correct PR_MTS_SUBJECT_ID string:
c=US;a= ;p=Microsoft;l=<"Hui-z2.0.v54.7xA4o"@xyz-corp.com>\0