Public/Disconnect-UnifiController.ps1
|
function Disconnect-UnifiController { [CmdletBinding()] param() if (-not $script:UnifiSession -or -not $script:UnifiConfig) { Write-Warning "Not currently connected to a controller." return } $baseUrl = $script:UnifiConfig.ControllerUrl $params = @{ Method = 'POST' Uri = "$baseUrl/api/logout" WebSession = $script:UnifiSession } if ($script:UnifiConfig.SkipCertificateCheck) { $params.SkipCertificateCheck = $true } try { Invoke-RestMethod @params | Out-Null } catch { # Session may already be expired — clear local state regardless Write-Verbose "Logout request failed (session may have already expired): $_" } $script:UnifiSession = $null $script:UnifiConfig = $null Write-Host "Disconnected." -ForegroundColor Yellow } |