Die offizielle Windows Software fürs Elgato Streamdeck unterstützt Home Assistant, Streamdeck UI nicht, das kann man mit kleinen Python Skripten aber einfach lösen
Downloads:
- API-Skript(Template): https://github.com/Technikfreaksyt/Programmieren-Lernen-Youtube/blob/main/HomeAssitant-PythonAPISkript.py
Kapitel im Video
- 00:00 Intro
- 01:18 Das API Skript erklärt
- 03:04 API Skript Template anpassen
- 03:59 Skript anpassen
- 04:16 Streamdeck UI Button einrichten
- 05:08 Outro
Das Skript erklärt
Über den wichten Teilen sind Nummern, diese sind auch hier in der Erklärung:
- Die IP Adresse von Home Assistant
- Domain des Objekts (meistens switch, remote, light, usw)
- Was passiert (toogle, turn_on, turn_off)
- Home Assistant API Token
- Wieder die passende Domain
- Das ist die entitiy_id
Home Assistant API Token erstellen
Um den Token zu generieren einfach unten links auf deinen Benutzer klicken, oben dann auf Sicherheit und nach ganz unten scrollen, wo du einen Token erstellen kannst.
Entity_ID herausfinden
Auf der Seite des Gerätes auf das Symbol klicken. Dann auf das Symbol der Einstellungen Hier ist dann die ID.
Skript erstellen
Jetzt musst du einfach alles ins Skript einfügen und dann könnte es z.B. so aussehen:
import requests
HASS_URL = "http://192.168.178.65:8123/api/services/switch/toggle"
TOKEN = "12345"
data = {
"entity_id": "switch.fernseher" # oder auch light.licht
}
headers = {
"Authorization": f"Bearer {TOKEN}",
"Content-Type": "application/json",
}
response = requests.post(HASS_URL, headers=headers, json=data)
if response.status_code == 200:
print("Erfolgreich ausgeführt!")
else:
print(f"Fehler: {response.status_code}")
Button in Streamdeck UI einrichten
Damit du dieses Skript auch in Streamdeck UI nutzen kannst musst du das Skript speichern und darfst es auch nicht löschen und dann den Befehl dafür „erstellen“:
python3 {PFAD_VOM_SKRIPT}
So könnte es z.B. aussehen:
python3 /home/technikfreaks/homeassistantapi.py
Diesen Befehl dann noch zu einem Button hinzufügen und fertig:
Kommentare