如何使用 Microsoft Graph API 在线程中发送消息?

How to send message in a thread using microsoft graph API?

我正在构建一个工具,我需要在其中使用 Microsoft Graph API 在同一个线程中发送超过 2 条消息(消息具有相同的主题和收件人),并且它们之间有一定的间隔。

问题是我无法使用 API 在同一主题中发送邮件,即使主题和收件人相同,Outlook 将它们显示为不同的主题(但在收件人方面(Gmail side) - 它们属于同一个线程)。

我尝试在第二条消息中使用 conversationId(我在第一条消息中收到),但它们最终仍显示在不同的线程中。

有什么方法可以在同一线程中发送消息吗?

根据您的描述,我假设您想使用 https://graph.microsoft.com/v1.0/groups/{id}/threads 端点在同一线程中发送 2 条以上的消息。 参考this document

A new conversation, conversation thread, and post are created in the group. Use reply thread or reply post to further post to that thread.

因此我们可以使用 replay 端点在同一个线程中发送消息。

要在一个线程中发送电子邮件,您应该使用 createReply 方法,您可以在其中提供以前发送的消息的 messageId。

棘手的部分是,在您使用 sendsendMail API 方法发送消息后,您无法访问 messageId。即使你通过 create 方法创建消息,发送后的 messageId 也会不同。

所以解决方案是发送邮件并在 'Sent Items' 文件夹中找到它以检索 messageId。我是根据时间、主题和接收者来做这件事的。还有有用的参数 $top.

使用正确的 messageId,您将能够创建回复并在同一线程中发送。