以下是通过 EWS 获取指定用户会议信息的 PowerShell 脚本:

# 设置连接 Exchange Server 的凭据
$cred = Get-Credential

# 设置 EWS URL
$url = 'https://<Exchange_Server_FQDN>/EWS/Exchange.asmx'

# 设置要查询的用户邮箱地址
$userEmail = '<User_Email_Address>'

# 创建 Exchange Web Service 对象
$ews = New-Object Microsoft.Exchange.WebServices.Data.ExchangeService([Microsoft.Exchange.WebServices.Data.ExchangeVersion]::Exchange2016)
$ews.Credentials = $cred
$ews.Url = $url

# 创建会议搜索过滤器
$calendarView = New-Object Microsoft.Exchange.WebServices.Data.CalendarView((Get-Date).Date, (Get-Date).AddDays(30))
$calendarView.PropertySet = New-Object Microsoft.Exchange.WebServices.Data.PropertySet([Microsoft.Exchange.WebServices.Data.BasePropertySet]::FirstClassProperties)
$calendarView.Traversal = [Microsoft.Exchange.WebServices.Data.ItemTraversal]::Shallow

# 查询会议信息
$appointments = $ews.FindAppointments([Microsoft.Exchange.WebServices.Data.WellKnownFolderName]::Calendar,$calendarView)

# 过滤指定用户的会议信息
$userAppointments = $appointments | Where-Object { $_.RequiredAttendees.Address -eq $userEmail }

# 输出会议信息
$userAppointments | Select-Object Subject, Start, End, Location, RequiredAttendees

请将 <Exchange_Server_FQDN> 替换为 Exchange Server 的完全限定域名(FQDN),将 <User_Email_Address> 替换为要查询的用户邮箱地址。 此脚本将查询指定用户在当前日期到未来 30 天内的所有会议信息,并输出会议的主题、开始时间、结束时间、地点和必需参与者。

Powershell 脚本:通过 EWS 获取指定用户会议信息(Exchange Server 2016)

原文地址: https://www.cveoy.top/t/topic/oM3y 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录