Outlook 插件 - 获取具有特定邮件 ID 的电子邮件

Posted

技术标签:

【中文标题】Outlook 插件 - 获取具有特定邮件 ID 的电子邮件【英文标题】:Outlook plugin - Fetch emails with specific message ids 【发布时间】:2019-04-22 06:49:59 【问题描述】:

我正在为 Outlook 编写一个插件,我只需要根据一些后端逻辑获取几封电子邮件。

我已将这些电子邮件消息唯一 ID 存储在我的数据库中。在点击插件图标时,我希望只加载那些电子邮件以加载到我的收件箱中。

例如,逻辑与我们单击特定文件夹(如已发送邮件或未读邮件)的方式相同,它仅使用相应的电子邮件刷新收件箱。

我按照教程创建了一个插件图标: https://docs.microsoft.com/en-us/outlook/add-ins/addin-tutorial

使用 NodeJS 进行编码。您能否指点一下,我们如何在收件箱中加载电子邮件?或者如果我们只能在收件箱中加载特定的电子邮件?

【问题讨论】:

你能澄清一下你的用例在这里吗?看起来你只是想获取给定消息 id 的内容,你可以通过graph 来完成,但我不了解这里的加载项因素。 点击插件图标后,需要获取少量电子邮件(基于唯一的消息 ID)。 已更新问题。请检查现在是否清楚 Outlook 加载项有很多限制。您通常无法修改沙盒区域之外的内容,除非您正在进行视图侦听的服务器端更改。您不能告诉收件箱只显示您想要显示的消息。您可能必须在对话框窗口 (displayDialogAsync) 中创建自己的“视图”来显示项目,也许您可​​以使用 displayMessageForm 本地启动它们。 无法通过 Office.JS 界面更改收件箱的视图。正如其他人所建议的那样,您可以在任务窗格或对话框中显示这些电子邮件。您甚至可以提供通过 displayMessageForm 打开这些电子邮件的功能。您还可以通过 Graph/Rest/EWS 将这些项目移动/复制到另一个文件夹。 【参考方案1】:

如果您尝试使用 Outlook 的收件箱显示模块来显示您正在刷新的项目,这是不可能的。您将不得不打开一个对话框/或一个新的浏览器选项卡来显示自定义项目列表 - 我认为这不是好的用户体验。正如 Brian 所说,office-js 插件非常受限。

【讨论】:

以上是关于Outlook 插件 - 获取具有特定邮件 ID 的电子邮件的主要内容,如果未能解决你的问题,请参考以下文章

通过 Outlook 插件编辑电子邮件正文中的文本

获取已发送邮件的id

在 Outlook 2007 中获取当前用户的电子邮件地址

Outlook 加载项:获取所选会议的与会者电子邮件地址

如何在 Outlook 插件中访问 EWS `UniqueId` 字段

Outlook 2013:用于访问电子邮件内容的 Visual Studio 插件