我正在构建一个 .NET Core WEB API,它使用 Microsoft Graph SDK 作为 Outlook 消息和日历的自动化层。要求之一是识别哪些消息已被回复或已转发。
我尚不清楚如何在使用 Graph Explorer 的结果时确定电子邮件是否已转发或回复。 “我的邮件”示例请求。
This answer声明 ConversationId
属性保持不变(确实如此),并且唯一的指示是主题前面的“FW:”或“RE:”。也在 the Message documentation我似乎找不到合适、可靠的方法来识别这些。
谁能告诉我如何做到这一点?
最佳答案
如果您查看收件箱中的邮件,并且想知道邮件客户端(例如 Oultook 或 OWA)是否已对这些邮件执行操作,那么您可以使用 PidTagLastVerbExecuted https://learn.microsoft.com/en-us/office/client-developer/outlook/mapi/pidtaglastverbexecuted-canonical-property (这就是 Outlook 确定它的方式)例如
https://graph.microsoft.com/v1.0/me/messages?$expand=SingleValueExtendedProperties($filter=(Id%20eq%20'Integer%200x1081'))
如果消息已得到回复,您会看到类似的结果
"singleValueExtendedProperties": [
{
"id": "Integer 0x1081",
"value": "102"
}
]
这仍然不是 100% 可靠,因此如果您这样做是为了审核,唯一的方法是使用跟踪日志(Office365 中的 MessageTrace)
关于microsoft-graph-api - 在 Microsoft Graph API 中确定转发和回复的电子邮件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60042191/