【问题标题】:Microsoft Graph Mail - Suppressing read receiptsMicrosoft Graph 邮件 - 禁止阅读回执
【发布时间】:2020-06-11 10:03:51
【问题描述】:

我们有一个系统会定期扫描邮箱,处理电子邮件,然后将其删除。当一个带有已读回执的项目被删除时,它会发送一个我们想要禁止的已读回执。这在 EWS 中是可能的,但我们正在将我们的代码迁移到 Graph SDK。

我们在 EWS 中是如何做到的:

if (rawMail.IsReadReceiptRequested) rawMail.SuppressReadReceipt();
rawMail.IsRead = true; 
rawMail.Update(ConflictResolutionMode.AutoResolve);

这是我们尝试过的:

await graphClient.Users["userid"].Messages["messageid"].Request().Select('IsReadReceiptRequested').UpdateAsync(new Microsoft.Graph.Message() { IsReadReceiptRequested = false });

但是,它返回此错误,好像它不是处理已读回执的有效方法:

ErrorInvalidPropertyUpdateSentMessage 
Message: Update operation is invalid for property of a sent message

感谢任何帮助

谢谢

【问题讨论】:

  • 你能解决这个问题吗?如果是怎么办? @user3665749
  • 我们最终在传输规则中阻止了出站发送回执。不是一个很好的解决方案,但只有我们当时拥有的东西。 18 个月前...

标签: microsoft-graph-api exchangewebservices


【解决方案1】:

这样做的一种方法是直接设置 PidTagReadReceiptRequested https://docs.microsoft.com/en-us/office/client-developer/outlook/mapi/pidtagreadreceiptrequested-canonical-property 和 PidTagNonReceiptNotificationRequested 的扩展属性,例如在 Graph Explorer 中这样的补丁似乎可以正常工作

{
  "singleValueExtendedProperties": [
     {
           "id":"Boolean 0x0C06",
           "value": "false"
     },
     {
	   "id":"Boolean 0x0029",
           "value": "false"
     }
  ]
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-07-31
    相关资源
    最近更新 更多