在发送时检索发送的电子邮件ID

时间:2019-08-02 13:06:05

标签: office-js

我正在开发一个Office加载项,它将与电子邮件相关的信息(与emai的itemId关联)保存到外部数据库中。

我想在发送电子邮件之前或之后立即执行类似的操作,但是itemId在仍在编写的电子邮件中不存在。

发送电子邮件后,是否有API可以接收通知? on send功能可能会被用于此目的,但我希望以正式的方式使用它。

如果没有,是否还有其他API可以解决此问题?

1 个答案:

答案 0 :(得分:1)

要获取itemId,您必须保存该项目。 saveAsync的响应包含itemId。

Office.context.mailbox.item.saveAsync(
  function callback(result) {
    if (result.status == Office.AsyncResultStatus.Succeeded) {
      itemId = result.value;
    }
  }
);

注意:

  1. 您可以使用getItemIdAsync预览API,但我建议在您的生产环境中使用预览API。
  2. Mac Outlook不支持保存会议。如果您仅定位电子邮件,则saveAsync应该可以工作,但是对于会议,请遵循work around

编辑:

否,发送电子邮件后,没有其他方法(发送功能除外)从电子邮件中获取内容。 您将必须获取itemId,然后将电子邮件内容从Exchange同步到外部数据库。 Mac的解决方法可以解决您的问题。