Homeassistant REST API mit Powershell

Homeassistant REST API mit Powershell

In zahlreichen Beiträgen findet man Beispiele, wie man per wget oder curl die RESTfull API seines Hassio verwenden kann. Ich möchte hier kurz vorstellen, wie man per Powershell einen Schalter umlegen kann, oder Werte eines Sensors ausliest.

# Einen Token kann man sich im Hassio unter seinem Benutzerprofil erstellen
$token = "TOKENSTRING DURCH EIGENEN GENERIERTEN TOKEN ERSETZEN"
# der User heißt genau so:
$user = "Bearer"
$headers = @{"authorization"="$("$user $token")";"content-type"="application/json"}

# Beispiel einen einen Sensor auslesen:
$response = Invoke-RestMethod -Headers  $headers  -Uri "https://homeautomation.gayl.org:443/api/states/climate.fritz_dect_301_5 " -Method Get 
$response.attributes.current_temperature
    
#Beispiel einen Schalter ausschalten
$body = ConvertTo-Json @{"entity_id" = "switch.gpio14_2"} 
# Mögliche Aktionen: turn_off / turn_on / toggle:
Invoke-RestMethod -Headers  $headers  -Uri "https://homeautomation.gayl.org:443/api/services/homeassistant/turn_off " -Method Post -Body $body