MS Teams users export issue with "ResultSize" parameter

MS 426 Reputation points
2022-04-03T19:54:22.147+00:00

Hi Team,

I am running a script to export a large number of users for data collection, The script runs with out any issues in Teams module 2.3.1, but its not working in 4.0.0 version

Here is the part of the script used to pull out the Teams user data..

Connect-MicrosoftTeams -Credential $credential
Get-CsTenant -Identity xxxxxxxxxxxxx

$session = Get-PSSession - Removing -Session $session from just after invoke-command below

$data = invoke-command -ScriptBlock {get-csonlineuser -Filter 'AssignedPlan -like "TEAMS" -and SoftDeletionTimestamp -eq $Null -and UserAccountControl -ne "AccountDisabled, PasswordNotRequired, NormalAccount"' -ResultSize Unlimited | Select-Object UserPrincipalName, SipAddress, OnPremLineUri, LineUri, AssignedPlan, TeamsMeetingPolicy, TeamsMessagingPolicy, TeamsCallingPolicy, TeamsMeetingBroadcastPolicy,
TeamsAppPermissionPolicy, TeamsCallParkPolicy, OnlineDialOutPolicy, TeamsCortanaPolicy, TeamsUpgradePolicy, OnlineVoicemailPolicy, EnterpriseVoiceEnabled, OnlineVoiceRoutingPolicy, TenantDialPlan, `
HostingProvider, InterpretedUserType, MCOValidationError, City}

$userCount = $data.Count
while($usercount -lt 340000){
write-host "Number of returned users ($userCount) is too low, trying again...please wait.".
#Get-PSSession | Remove-PSSession
Connect-MicrosoftTeams -Credential $credential
Get-CsTenant -Identity 5b973f99-77df-4beb-b27d-aa0c70b8482c
#$session = Get-PSSession - Removing -Session $session from just after invoke-command below
$data = invoke-command -ScriptBlock {get-csonlineuser -Filter 'AssignedPlan -like "TEAMS" -and SoftDeletionTimestamp -eq $Null -and UserAccountControl -ne "AccountDisabled, PasswordNotRequired, NormalAccount"' -ResultSize 'Unlimited'| Select-Object UserPrincipalName, SipAddress, OnPremLineUri, LineUri, AssignedPlan, TeamsMeetingPolicy, TeamsMessagingPolicy, TeamsCallingPolicy, TeamsMeetingBroadcastPolicy,
TeamsAppPermissionPolicy, TeamsCallParkPolicy, OnlineDialOutPolicy, TeamsCortanaPolicy, TeamsUpgradePolicy, OnlineVoicemailPolicy, EnterpriseVoiceEnabled, OnlineVoiceRoutingPolicy, TenantDialPlan, `
HostingProvider, InterpretedUserType, MCOValidationError, City}
$userCount = $data.Count
}

I'm getting the following error "Cannot process argument transformation on parameter 'ResultSize'. Cannot convert value "Unlimited" to type "System.UInt32". Error: "

189527-image.png

Any fix for this?
Thanks In Advance...!!

Regards,
MS

Windows for business Windows Server User experience PowerShell
Microsoft Teams Microsoft Teams for business Other
0 comments No comments
{count} votes

Accepted answer
  1. Rich Matheisen 47,901 Reputation points
    2022-04-04T14:40:54.007+00:00

    Try something like this:

    Get-CsOnlineUser -Filter 'AssignedPlan -like "*TEAMS*"' -ResultSize 40000 |
        Where-Object {$_.SoftDeletionTimeStamp -eq $null} |
            ForEach-Object{
                $csuser = $_
                Get-ADUser -Identity $_.samaccountname |
                    Where-Object {$_.PasswordNotRequired -eq $false -and $_.Enabled -eq $true} |
                        ForEach-Object{
                            [PSCustomObject]@{
                                UserPrincipalName = $_.UserPrincipalName
                                SipAddress = $csuser.SipAddress
                                OnlinePremLineUri = $csuser.OnlinePremLineUri
                                LineUri = $csuser.LineUri
                                AssignedPlan = $csuser.AssignedPlan
                                TeamsMeetingPolicy = $csuser.TeamsMeetingPolicy
                                TeamsMessagingPolicy = $csuser.TeamsMessagingPolicy
                                TeamsCallingPolicy = $csuser.TeamsCallingPolicy
                                TeamsMeetingBroadcastPolicy = $csuser.TeamsMeetingBroadcastPolicy
                                TeamsAppPermissionPolicy = $csuser.TeamsAppPermissionPolicy
                                TeamsCallParkPolicy = $csuser.TeamsCallParkPolicy
                                OnlineDialOutPolicy = $csuser.OnlineDialOutPolicy
                                TeamsCortanaPolicy = $csuser.TeamsCortanaPolicy
                                TeamsUpgradePolicy = $csuser.TeamsUpgradePolicy
                                OnlineVoicemailPolicy = $csuser.OnlineVoicemailPolicy
                                EnterpriseVoiceEnabled = $csuser.EnterpriseVoiceEnabled
                                OnlineVoiceRoutingPolicy = $csuser.OnlineVoiceRoutingPolicy
                                TenantDialPlan = $csuser.TenantDialPlan
                                HostingProvider = $csuser.HostingProvider
                                InterpretedUserType = $csuser.InterpretedUserType
                                MCOValidationError = $csuser.MCOValidationError
                                City = $csuser.City
                            }
                        }
            }
    

    I don't use Skype so I have no way to test this!


0 additional answers

Sort by: Most helpful

Your answer

Answers can be marked as Accepted Answers by the question author, which helps users to know the answer solved the author's problem.