EDIINTPipeLine service is used to parse inbound AS2 messages and MDNs.
When an unknown MDN is received, (unknown means it acknowledges a message unknown in MSGMDNCORRELATION table), the service fails with 'No record found for Original-Message-ID' error.
Setting DontFailUnknownMDNs parameter to true causes the service to not to fail in this case, but the problem is no information about MDN content are written in ProcessData.
So, it is impossible to know which message ID the MDN acknowledges, or the MDN status.
The following item should be added to ProcessData, for known and unknown MDNs:
- A new item, containing the ID of the acknowledged message (does not exist currently).
The point of all of this is to enable AS2 asynchronous flows external tracking across several distinct SBI instances.
When sending an asynchronous AS2 message, track the message ID in a shared database. MDN return address is a VIP, redirecting to several distinct SBI servers.
When the MDN is received, it could be received by another SBI instance than the one which actually sent the original message (so no record in MSGMDNCORRELATION).
So this instance with no record in MSGMDNCORRELATION should be able to parse the MDN and retrieve the acknowledged message ID and the MDN status, to correlate it into the shared database.