I am working on a application which integrates with MS Exchange to recieve user requests. As part of this requirement I need to ensure that only the original email is processed by the system. If the user replies to the sent email or forwards it again to the application I need to ignore them as duplicates.
I checked the EWS API (EmailMessage) documentation and didnt see anything that will give me that information. After searching a bit I came across an MAPI property "PR_LAST_VERB_EXECUTED" that might have the information I am looking for but then didnt come across any sample code that explains how to use it or derive it from the EmailMessage interface.
The only other alternative I could see is leveraging the conversation id field to check if the new email recieved is part of an existing conversation. In which case consider it to be a duplicate.
If anyone has implemented something similar please let me know