1. 当用户发送一封邮件后,我们首先要确定该邮件是否已经送达给收件人,以验证该邮件正常传递;

此处我们以使用cw01邮箱发邮件给cw02用户为例,查看该邮件的送达状态。

  1. 使用”以管理员身份运行” exchange命令行管理程序,输入以下命令将送达报告获得的结果存储在变量msg内:

$msg = Search-MessageTrackingReport -Identity cw01 -Recipients [email protected] -BypassDelegateChecking

Exchange用户邮件状态跟踪_第1张图片

  1. 搜索成功后,运行以下命令浏览结果:

$msg | %{ Get-MessageTrackingReport -Identity $_.MessageTrackingReportId -BypassDelegateChecking }

Exchange用户邮件状态跟踪_第2张图片

从上图中可以看到该邮件在什么时间已经送到给cw02用户

  1. 通过以上邮件送达报告,我们也只是知道邮件是不是已经送达到收件人了,但这并不能满足我们的要求,关键还要知道收件人是否已经阅读该邮件,默认在邮件系统未启用邮件的阅读跟踪,需要进行阅读跟踪配置;

  2. 使用”以管理员身份运行” exchange命令行管理程序,输入以下命令将启用阅读跟踪:

Set-OrganizationConfig -ReadTrackingEnabled $true

Exchange用户邮件状态跟踪_第3张图片

  1. 当在组织级别启用邮件阅读跟踪后,该操作就会对所有用户生效,但是有时候可能不希望能够看到领导邮件的状态,所以需要针对领导账户单独禁用邮件跟踪,运行以下命令设置:

Set-Mailbox -Identity Exadmin -MessageTrackingReadStatusEnabled $false

以上禁用Exadmin用户账号的邮件阅读跟踪

  1. 在组织级别启用阅读跟踪之后,就可以针对单封邮件的阅读状态进行追踪:如下所示,追踪用户cw01发送的主题为“邮件送达测试”的邮件是否被收件人cw02查看,通过输入以下命令将邮件送达的值赋予给变量msg:

$msg = Search-MessageTrackingReport -Identity cw01 -Subject "邮件送达测试" -BypassDelegateChecking

Exchange用户邮件状态跟踪_第4张图片

  1. 接着运行以下命令查看收件人cw02是否阅读这封邮件:

$msg | %{ Get-MessageTrackingReport -Identity $_.MessageTrackingReportId -BypassDelegateChecking -RecipientPathFilter [email protected] -ReportTemplate RecipientPath }

  1. 当cw02没有阅读这封邮件时,如下图所示:
    Exchange用户邮件状态跟踪_第5张图片

  2. 当cw02已经阅读这封邮件时,如下图所示:
    Exchange用户邮件状态跟踪_第6张图片