#************************************************* # This Script used to collect ActiveSync statistics. #************************************************* #set Entire forest Set-ADServerSettings -ViewEntireForest $true #********************************* #Outputfile path $outputfile=Read-Host "Enter Ouput File" $stream = [System.IO.StreamWriter] $outputfile ##********************************* #initilizing Outputfile $stream.WriteLine("DisplyaName|Title|PrimarySmtpAddress|Company|City|OrganizationalUnit|Mailbox Server|Mailbox Database|ActiveSync Identity|DeviceID|DeviceType|DeviceUserAgent|DeviceModel|DeviceIMEI|DeviceFriendlyName|DeviceOS|DeviceOSLanguage|DevicePhoneNumber|FirstSyncTime|LastSyncAttemptTime|LastSuccessSync|LastPolicyUpdateTime|DeviceWipeSentTime|DeviceWipeAckTime|LastPingHeartbeat|") #********************************* #Info collection $Database=Read-host "Enter DAG or DatabaseName" $DBs=Get-MailboxDatabase "*$Database*" |?{$_.Admindisplayversion -match "15"} foreach($DB in $DBs) { $MBxs=Get-mailbox -ResultSize unlimited -Database $DB.Name foreach($MB in $MBxs) { write-host $MB $ActSyns=Get-MobileDeviceStatistics -Mailbox $MB.Identity if ($ActSyns -Ne $Null) { foreach ($ActSyn in $Actsyns) { write-host $Actsyn.Identity $user= Get-user $MB.Identity # Colecting User Info $stream.Write($MB.DisplayName) $stream.Write("|") $stream.Write($User.Title) $stream.Write("|") $stream.Write($MB.PrimarySmtpAddress) $stream.Write("|") $stream.Write($User.Company) $stream.Write("|") $stream.Write($User.City) $stream.Write("|") $stream.Write($User.OrganizationalUnit) $stream.Write("|") # Mailbox Info $stream.Write($MB.ServerName) $stream.Write("|") $stream.Write($MB.Database.Name) $stream.Write("|") #ActiveSync Info $stream.Write($ActSyn.Identity) $stream.Write("|") #Device Info $stream.Write($ActSyn.DeviceID) $stream.Write("|") $stream.Write($ActSyn.DeviceType) $stream.Write("|") $stream.Write($ActSyn.DeviceUserAgent) $stream.Write("|") $stream.Write($ActSyn.DeviceModel) $stream.Write("|") $stream.Write($ActSyn.DeviceIMEI) $stream.Write("|") $stream.Write($ActSyn.DeviceFriendlyName) $stream.Write("|") $stream.Write($ActSyn.DeviceOS) $stream.Write("|") $stream.Write($ActSyn.DeviceOSLanguage) $stream.Write("|") $stream.Write($ActSyn.DevicePhoneNumber) $stream.Write("|") #Timing $stream.Write($ActSyn.FirstSyncTime) $stream.Write("|") $stream.Write($ActSyn.LastSyncAttemptTime) $stream.Write("|") $stream.Write($ActSyn.LastSuccessSync) $stream.Write("|") $stream.Write($ActSyn.LastPolicyUpdateTime) $stream.Write("|") $stream.Write($ActSyn.DeviceWipeSentTime) $stream.Write("|") $stream.Write($ActSyn.DeviceWipeAckTime) $stream.Write("|") $stream.Write($ActSyn.LastPingHeartbeat) $stream.Write("|") #Newline after collecting info for a user $stream.WriteLine("") } } }$stream.flush() } #********************************* $stream.Dispose() $stream.close()