Files
UnifiCLI/Public/Disconnect-UnifiController.ps1

35 lines
880 B
PowerShell

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
}