72 lines
2.5 KiB
PowerShell
72 lines
2.5 KiB
PowerShell
function Get-ZertoAlert {
|
|
[cmdletbinding( defaultParameterSetName = "main" )]
|
|
param(
|
|
[Parameter( ParameterSetName = "alertId", Mandatory = $true, ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true )]
|
|
[string[]]$alertId,
|
|
[Parameter( ParameterSetName = "entities", Mandatory = $true )]
|
|
[switch]$entities,
|
|
[Parameter( ParameterSetName = "helpIdentifiers", Mandatory = $true )]
|
|
[switch]$helpIdentifiers,
|
|
[Parameter( ParameterSetName = "levels", Mandatory = $true )]
|
|
[switch]$levels,
|
|
[Parameter( ParameterSetName = "filter" )]
|
|
[string]$startDate,
|
|
[Parameter( ParameterSetName = "filter" )]
|
|
[string]$endDate,
|
|
[Parameter( ParameterSetName = "filter" )]
|
|
[string]$vpgIdentifier,
|
|
[Parameter( ParameterSetName = "filter" )]
|
|
[string]$siteIdentifier,
|
|
[Parameter( ParameterSetName = "filter" )]
|
|
[string]$zorgIdentifier,
|
|
[Parameter( ParameterSetName = "filter" )]
|
|
[string]$level,
|
|
[Parameter( ParameterSetName = "filter" )]
|
|
[string]$helpIdentifier,
|
|
[Parameter( ParameterSetName = "filter" )]
|
|
[string]$entity,
|
|
[Parameter( ParameterSetName = "filter" )]
|
|
[switch]$isDismissed
|
|
)
|
|
|
|
begin {
|
|
$baseUri = "alerts"
|
|
$returnObject = [System.Collections.ArrayList]@()
|
|
}
|
|
|
|
process {
|
|
switch ( $PSCmdlet.ParameterSetName ) {
|
|
"main" {
|
|
$uri = "{0}" -f $baseUri
|
|
$results = Invoke-ZertoRestRequest -uri $uri
|
|
$returnObject.Add($results) | Out-Null
|
|
}
|
|
|
|
"alertId" {
|
|
foreach ( $id in $alertId ) {
|
|
$uri = "{0}/{1}" -f $baseUri, $alertId
|
|
$results = Invoke-ZertoRestRequest -uri $uri
|
|
$returnObject.Add($results) | Out-Null
|
|
}
|
|
}
|
|
|
|
"filter" {
|
|
$filter = New-ZertoApiFilter -filterTable $PSBoundParameters
|
|
$uri = "{0}{1}" -f $baseUri, $filter
|
|
$results = Invoke-ZertoRestRequest -uri $uri
|
|
$returnObject.Add($results) | Out-Null
|
|
}
|
|
|
|
default {
|
|
$uri = "{0}/{1}" -f $baseUri, $PSCmdlet.ParameterSetName.ToLower()
|
|
$results = Invoke-ZertoRestRequest -uri $uri
|
|
$returnObject.Add($results) | Out-Null
|
|
}
|
|
}
|
|
}
|
|
|
|
end {
|
|
return $returnObject
|
|
}
|
|
}
|