A ticket EMAILNET-40683 has been logged for your requirement in our issue tracking system. You will be informed via this forum thread once there is an update available on it.
Since the OLM format is undocumented, we are investigating its internal structure in order to add this feature.
OLM doesn’t support unique ID in the form user request. There is an index that contains file offset by which you can find the item. Also, each item has a unique path+name, such as:
Although it is unique, it’s hardly convenient to use it as a unique ID.
As a workaround, we can generate and assign to each item an unique ID that you can use to retrieve messages. But these IDs will only work with Aspose.Email.
Please let us know if this workaround will appropriate for you.
Hello,
First of all, thank you very much for your great work, I agree when a format is not documented, it’s a nightmare to reverse engineer it, anyway, yes the only thing developers will need when reading storages, is a uniqueID for each item as a reference for next read attempts.
No difference if that uniqueID really exists inside the storage or you generated a value to make the life easier for the developer.
So, the short answer is a big yes, that will be life saving.
But the question is that can you please be so kind and apply the same uniqueID to other storage readers (which natively don’t have such feature) like Mbox/Mboxrd Reader, Tgz Reader and Nsf Reader too?
Because when dealing with storages, this is a big headache to overcome
We will definitely consider applying this way to Mbox/Mboxrd Reader and Tgz Reader. There will probably no problem to implement it.
As for NSF, we are not sure of the result. As already mentioned in the documentation, the NSF implementation is quite limited.
In addition, we still have not solved the problem of getting folders in NSF. This is because the NSF format is very closed, and problematic for reverse engineering, because we do not know the algorithms used to encrypt the data. Please note that the implementation is basic and not good for active use.
Hello,
Please kindly forward this to the developer(s):
Once the “unique ID” property is added to the storage readers (Olm/Mbox/Tgz) can you please also add such function:
ExtractMessage ( newly added unique ID as string)
So we can directly save a single message using that unique ID? (so no need to loop through all again)
Best