【发布时间】:2021-02-19 18:24:53
【问题描述】:
我有一个 Outlook 插件邮件项,我需要找到它的 ID,以便使用它与 Microsoft Graph 进行通信。
mailitem EntryID 与 Microsoft Graph 消息 ID 不同。
我想办法做到这一点的唯一方法是像这样获取 PR_INTERNET_MESSAGE_ID:
Public Shared Function GetInternetMessageID(ByRef mail As MailItem) As String
Try
Dim s As String = mail.PropertyAccessor.GetProperty("http://schemas.microsoft.com/mapi/proptag/0x007D001F").ToString.ToLower.Replace(vbCrLf, " ").Replace(" ", "").Replace("message-id:<", "message-id: <")
Return "<" + s.GetInnerString("message-id: <", ">") + ">"
Catch ex As System.Exception
Return String.Empty
End Try
End Function
然后像这样从 Graph 中获取消息:
https://graph.microsoft.com/v1.0/me/messages?$filter=internetMessageId eq '<HE1AR0301DD2555F3F27E45C4E1100@HE1PR1301MB2255.eurprd03.prod.outlook.com>'
但是从上面的代码中获取“PropertyAccessor.GetProperty”很慢 - 大约需要 3-4 秒。
所以现在我有了三个不同的 ID:
- 邮件项条目 ID
- PR_INTERNET_MESSAGE_ID
- 图形消息 ID
嗯嗯。
我可以使用 mailitem EntryID 查找 Graph 消息吗? ... 或者我可以在 Outlook 邮件项中找到 Graph 邮件 ID?
你们如何使用 Outlook 插件邮件项并在 Microsoft Graph 中查找此邮件项的项目?
【问题讨论】:
标签: microsoft-graph-api outlook-addin