How can i obtain UniqueId from MessageId

0 votes
asked Jul 26, 2020 by damino (120 points)

I am sending a mail message using SMTP and Rebex, I am getting the messageId while sending email and storing it in my database, but later on i want to know if it is delivered or not. i can see that you have a class named delivery-status for it, but i cant find the sent mail from imap with messageid, it requires sequenceid or uniqueid, which i dont have them.
I have only messageId and envelopeId which are the same for me.
How can i obtain uniqueId using messageId?

Applies to: Rebex Secure Mail

1 Answer

0 votes
answered Jul 27, 2020 by Lukas Pokorny (124,570 points)


Unfortunately, it's not that simple in IMAP. IMAP protocol's unique ID has no relation at all to MessageId or EnvelopeId. To make it even more complicated, a delivery status notification (DSN) is not actually a response, and can't be searched for using MessageId or EvenlopeId. Overall, there is no straightforward way to simply obtain a unique ID of a DSN based on the message ID.

Instead, a different process is usually used: The application checks Inbox for new messages. For each new message, it determines whether it's a delivery status notification. If it is, the application parses it and tries matching the DSN against known MessageId or EnvelopeId of a sent messages.