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
       

С какого клиента было отравлено письмо?

function Get-MessageClientType {
    <#
    .SYNOPSIS
        Определяет тип клиента, с которого было отправлено сообщение.
    .DESCRIPTION
        Анализирует поле SourceContext в логах отслеживания сообщений Exchange
        и возвращает ClientType с расшифровкой.
    .EXAMPLE
        Get-MessageTrackingLog ... | Get-MessageClientType
    #>
 
    begin {
        # Таблица расшифровок
        $ClientMap = @{
            'AirSync'     = 'ActiveSync (мобильный клиент)'
            'OWA'         = 'Outlook Web Access (через браузер)'
            'MOMT'        = 'Outlook (MAPI или Cached Mode)'
            'POP3'        = 'POP3 клиент'
            'IMAP4'       = 'IMAP клиент'
            'Hub'         = 'Hub Transport'
            'SMTP'        = 'SMTP подключение'
            'EAS'         = 'Exchange ActiveSync'
            'Submission'  = 'Подача через сервер'
            'StoreDriver' = 'Внутренний транспорт Exchange'
        }
    }
 
    process {
        $_ |
        Where-Object { $_.SourceContext -match "ClientType" } |
        Select-Object `
            TimeStamp,
            Sender,
            Recipients,
            MessageSubject,
            @{Name = 'ClientTypeCode'; Expression = {
                if ($_.SourceContext -match 'ClientType:([A-Za-z0-9_]+)') {
                    $matches[1]
                } else {
                    'Unknown'
                }
            }},
            @{Name = 'ClientTypeDescription'; Expression = {
                $type = if ($_.SourceContext -match 'ClientType:([A-Za-z0-9_]+)') { $matches[1] } else { 'Unknown' }
                if ($ClientMap.ContainsKey($type)) {
                    $ClientMap[$type]
                } else {
                    "Неизвестный тип ($type)"
                }
            }}
    }
}
 
# --- Примеры использования ---
 
# Группы серверов
$Piter  = "server11","server12","server13"
$Moscow = "server21","server22","server23"
$All    = $Piter + $Moscow
 
# --- Поиск письма по получателю ---
$All |
    Get-MessageTrackingLog `
        -Start "10/01/2025 0:00" `
        -Source STOREDRIVER `
        -Recipient "myuser@mydomain.ru" `
        -MessageSubject "Тема письма" `
        -ResultSize Unlimited |
    Get-MessageClientType |
    Format-Table -AutoSize
 
# --- Поиск письма по отправителю ---
$All |
    Get-MessageTrackingLog `
        -Start "10/01/2025 0:00" `
        -Source STOREDRIVER `
        -EventId SUBMIT `
        -Sender "myuser@mydomain.ru" `
        -MessageSubject "Тема письма" `
        -ResultSize Unlimited |
    Select-Object TimeStamp, EventId, Source, ServerHostName, Sender,
                  @{Name="Recipients";Expression={$_.Recipients}},
                  MessageSubject, SourceContext |
    Get-MessageClientType |
    Out-GridView -Title "Результаты по типу клиента"