Public/Status/Get-MMUserStatus.ps1
|
# Retrieves user status from MatterMost function Get-MMUserStatus { <# .SYNOPSIS Gets the status of one or more MatterMost users. .EXAMPLE Get-MMUserStatus -UserId 'abc123' .EXAMPLE Get-MMUserStatus -UserIds @('abc123', 'def456') .EXAMPLE Get-MMUser -Username 'john' | Get-MMUserStatus #> [CmdletBinding(DefaultParameterSetName = 'Single')] [OutputType('MMUserStatus')] param( [Parameter(Mandatory, ParameterSetName = 'Single', ValueFromPipelineByPropertyName)] [Alias('id', 'user_id')] [string]$UserId, [Parameter(Mandatory, ParameterSetName = 'Batch')] [string[]]$UserIds ) process { if ($PSCmdlet.ParameterSetName -eq 'Batch') { Invoke-MMRequest -Endpoint 'users/status/ids' -Method POST -Body $UserIds | ForEach-Object { $_ | ConvertTo-MMUserStatus } } else { Invoke-MMRequest -Endpoint "users/$UserId/status" -Method GET | ConvertTo-MMUserStatus } } } |