Get-MessageTrackingLog -Sender mike.nash@contoso.com -MessageSubject "Company newsletter" -Start (Get-Date).AddHours(-48) -EventId RECEIVE | Select MessageID
$msg = Search-MessageTrackingReport -Identity mike.nash@contoso.com -BypassDelegateChecking -MessageId b4699b83d1084712b2b746582ceedc15@contoso.com
 
$report = Get-MessageTrackingReport -Identity $msg.MessageTrackingReportId -BypassDelegateChecking
$report.RecipientTrackingEvents[0]
$report.RecipientTrackingEvents | Select RecipientDisplayName,Status
Get-MessageTrackingReport -Identity $msg.MessageTrackingReportId -BypassDelegateChecking -RecipientPathFilter jim.daly@contoso.com -ReportTemplate RecipientPath
$recipienttrackingevents = @($report | Select -ExpandProperty RecipientTrackingEvents)
$recipients = $recipienttrackingevents | select recipientaddress
foreach ($recipient in $recipients) {
 
    $events = Get-MessageTrackingReport -Identity $msg.MessageTrackingReportId -BypassDelegateChecking `
    -RecipientPathFilter $recipient.RecipientAddress -ReportTemplate RecipientPath
 
    $events.RecipientTrackingEvents[-1] | Select RecipientAddress,Status,EventDescription
}

Скрипт

   https://github.com/cunninghamp/Powershell-Exchange/tree/master/Get-MessageReadStatusReport