Repository navigation
DE Editor Rules
Mit Regeln reagiert ein Element auf mehr als nur seinen eigenen Zustand. Es gibt sie bei jeder Art von Element: Lichtern, LED-Streifen, Geräten, der Station des Saugroboters, Möbeln, Textelementen und Räumen.

rules ist eine geordnete Liste. Jede Regel hat Bedingungen (if) und Ausgaben. Für jedes Ausgabefeld gewinnt die erste Regel, deren Bedingungen alle zutreffen und die dieses Feld setzt. Eine Regel ohne if ist der Standard.
rules:
- if: [ ... ] # alle Bedingungen müssen zutreffen (UND)
color: red
- color: blue # kein "if": gilt, wenn keine frühere Regel eine Farbe gesetzt hatBedingungen kannst du in zwei Modi schreiben. Jede Regel hat einen Schalter Nach Entitäten / Jinja-Vorlage; beim Wechsel von Entitäten zu Jinja werden die vorhandenen Bedingungen umgewandelt.
Eine Bedingung ist {entity, attribute?, state | state_not | above | below}. state und state_not dürfen eine Liste sein. {any: [Bedingungen]} ist eine ODER-Gruppe.
if:
- entity: climate.living_room
attribute: hvac_action
state: heating
- entity: sensor.outdoor_temperature
below: 5
- any:
- entity: binary_sensor.window
state: "on"
- entity: binary_sensor.door
state: "on"Im Formular hat jede Bedingung eine Entität (mit der Abkürzung diese Entität), ein optionales Attribut, und der Operator lautet ist / ist nicht / größer als / kleiner als / Vorlage. Neue Bedingungen werden mit der Entität des Elements vorausgefüllt (ein Raum nimmt seinen Temperatursensor).
Eine einzelne Bedingung {template: "{{ ... }}"}. Home Assistant rendert sie live, und sie ist wahr bei true, on, yes, 1 oder einer Zahl ungleich null.
if:
- template: "{{ is_state('binary_sensor.front_door', 'on') and states('sensor.outdoor_temperature') | float(0) < 0 }}"Eine text-Ausgabe, die {{ }} enthält, ist ebenfalls eine Vorlage.
| Ausgabe | Wirkung |
|---|---|
color |
Färbt das Symbol und den Badge-Rand ein; bei Möbeln Umriss und Füllung; bei einem Licht überschreibt sie die Lampenfarbe (Badge, Leuchten, Streifen); beim Roboter ersetzt sie die Designfarbe, auch in der Station |
glow |
Fügt ein Leuchten um das Element hinzu |
animate |
Überschreibt active eines Geräts: true / false. animate: false stoppt auch die Symbolanimation |
wave |
Farbe der Wärmewellen des Heizkörpers |
text |
Ersetzt den Text unter dem Symbol (einfach oder eine Vorlage) |
tint (oder color) |
Bei einem Raum: färbt den Boden ein; opacity legt die Stärke fest (Standard 0,14) |
hide |
Blendet das Element aus (bei einem Raum: seine Beschriftung) |
icon |
Tauscht das Symbol aus (Geräte, Lichter, Möbel, die Station). none entfernt es; wähle es mit der Symbolauswahl |
background |
Hintergrund eines Textelements |
fx |
Ringanimation: ring, radar, comet, countdown, spin, orbit, breath, blink, heartbeat, shake, none
|
progress |
Eine Entität, die einen countdown antreibt (siehe unten) |
progress_total |
Eine Länge in Minuten für einen countdown
|
Farben: red, orange, yellow, green, blue, purple, pink, white, black, jeder im Formular gewählte Farbname des Designs (unter dem Namen gespeichert, zum Beispiel teal) oder jede CSS-Farbe (Hex, rgb(...), var(...)).
Lichter, LED-Streifen, die Station und Möbel haben keine eigene Ringanimation, der Ring erscheint also nur, wenn eine Regel fx setzt. Der Ring eines LED-Streifens sitzt in der Mitte des Streifens, bei Möbeln in der Mitte des Rechtecks.
Für die Ausgabe eines Rings gilt die Priorität: Regel, dann die eigene Einstellung des Geräts, dann der Alarm-Standard nach Zustand.
fx: countdown zeichnet einen schrumpfenden Bogen. Woher er seinen Fortschritt bekommt:
-
progress: timer.kitchen: eintimer(aktiv oder pausiert), -
progress: sensor.dryer_remainingmitdevice_class: duration(Sekunden, Minuten oder Stunden; die Gesamtdauer istprogress_total, sonst der bisher höchste gesehene Wert), -
progress: sensor.dryer_endmitdevice_class: timestamp(die Endzeit; der Start ist daslast_changeddes laufenden Geräts, sonstprogress_total), -
progress: sensor.dryer_progressin%: der Ring füllt sich wie ein Akku (0 % leer, 100 % voll), -
progress_total: 45ohne Entität: ein Countdown dieser Länge in Minuten, gemessen ab der Änderung der Bedingungsentität der Regel (bei einem Gerät ab dem Moment, in dem es zu laufen beginnt).
Ohne eine dieser Angaben ist der Countdown ein dekorativer Zyklus von 4 Sekunden.
Jede Regel hat in ihrer Kopfzeile eine Schaltfläche { }, die nur diese Regel als YAML im Code-Editor von Home Assistant öffnet (Syntaxfarben, Zeilennummern, Vorschläge für Entitäten und Symbole). Die Änderung wird übernommen, wenn du den Editor verlässt. Dasselbe YAML siehst du im Planformat.

Wenn dein Home Assistant eine ai_task.*-Entität hat, die Datengenerierung unterstützt, zeigt der Abschnitt Regeln Mit KI vorschlagen. Beschreibe in einem Satz, was du willst. Der Editor sendet die Beschreibung zusammen mit dem Regelformat, den für dieses Element erlaubten Ausgaben, seiner Entität (Zustand und Attribute), den aktuellen Regeln und einer Liste deiner Entitäten (bis zu 1500, ohne update-, event-, scene- und script-Entitäten) an ai_task.generate_data. Die Antwort kommt als YAML und öffnet sich als Entwurf; erst Vorschlag übernehmen ersetzt die Regeln. Lässt sich die Anfrage nicht erfüllen, antwortet der Assistent mit einem Satz, den du als Meldung siehst.
devices:
- id: washer
kind: generic
name: Waschmaschine
entity: sensor.washer_state
icon: mdi:washing-machine
x: 1.2
z: 3.4
rules:
- if:
- entity: sensor.washer_state
state: running
color: blue
animate: true
fx: countdown
progress: sensor.washer_finish_time # device_class: timestamp
- if:
- entity: sensor.washer_state
state: finished
color: green
fx: blink
text: FertigEine Vorlage mit now() wird jede Minute neu gerendert, die Regel schaltet sich also fünf Minuten nach dem Öffnen der Tür ein.
rooms:
- id: hall
name: Flur
points: [[0, 0], [3, 0], [3, 2.5], [0, 2.5]]
rules:
- if:
- template: >-
{{ is_state('binary_sensor.front_door', 'on')
and (now() - states.binary_sensor.front_door.last_changed).total_seconds() > 300 }}
tint: orange
opacity: 0.3devices:
- id: leak
kind: generic
name: Leck
entity: binary_sensor.kitchen_leak
x: 2.0
z: 1.0
rules:
- if:
- entity: binary_sensor.kitchen_leak
state: "on"
color: red
glow: true
fx: blink
text: Leck!
- hide: trueDie letzte Regel hat keine Bedingung, das Element wird also immer ausgeblendet, wenn es kein Leck gibt.
devices:
- id: phone_battery
kind: generic
name: Handy
entity: sensor.phone_battery_level
x: 4.0
z: 2.0
rules:
- if:
- entity: sensor.phone_battery_level
below: 20
color: red
fx: countdown
progress: sensor.phone_battery_level
- fx: countdown
progress: sensor.phone_battery_level
color: greenEin Backofen, der ab dem Einschalten 45 Minuten herunterzählt:
devices:
- id: oven
kind: generic
name: Backofen
entity: switch.oven
x: 3.1
z: 0.4
rules:
- if:
- entity: switch.oven
state: "on"
fx: countdown
progress_total: 45
color: orangeUnd ein Küchentimer als Helfer, der den Ring antreibt:
rules:
- if:
- entity: timer.kitchen
state: active
fx: countdown
progress: timer.kitchen
color: yellowdevices:
- id: radiator_living
kind: radiator
entity: climate.living_room
x: 4.3
z: 1.1
rules:
- if:
- entity: switch.boost_living_room
state: "on"
color: yellow
- if:
- any:
- entity: binary_sensor.living_room_window
state: "on"
- entity: binary_sensor.balcony_door
state: "on"
color: blue
- if:
- entity: switch.valve_living_room
state: "on"
color: orange
animate: true
wave: red
- animate: falseZurück zu Elemente oder zum Planformat.
Documentation site | Repository | Issues | Support: Ko-fi · PayPal · Bitcoin
English
- FNS Floorplan – help
- Installation
- Quick start
- Editor overview
- Rooms
- Doors and windows
- Items
- Rules
- Look
- Card
- Room panel
- Robot vacuum
- History and check
- Plan format
- Websocket API
- FAQ and troubleshooting
- Changelog
- The card is not found after the installation
- "Custom element doesn't exist" or a configuration error appears
- Icons are missing
- Some texts are not translated
- A light does not glow in the colour I expect
- The card shows the old version after an update
- The card is slow or choppy
- Saving says the plan changed meanwhile (conflict)
- The plan is empty
- A rule does not apply
- The sidebar entry is missing
- Something else does not work
- The card says it is waiting for the integration
- Support
Česky
- FNS Floorplan – nápověda
- Instalace
- Rychlý start
- Přehled editoru
- Místnosti
- Dveře a okna
- Položky
- Pravidla
- Vzhled
- Karta
- Panel místnosti
- Robotický vysavač
- Historie a kontrola
- Formát plánu
- Websocket API
- Časté otázky a řešení potíží
- Změny
- Po instalaci se karta nenajde
- Občas se objeví „Custom element doesn't exist“ nebo chyba konfigurace
- Chybí ikony
- Některé texty se nepřekládají
- Světlo nesvítí v barvě, kterou čekám
- Po aktualizaci karta zobrazuje starou verzi
- Karta se seká nebo je pomalá
- Při ukládání se hlásí, že se půdorys mezitím změnil (konflikt)
- Půdorys je prázdný
- Pravidlo se neuplatní
- V postranním menu chybí položka
- Něco jiného nefunguje
- Karta hlásí, že čeká na integraci
- Podpora
Deutsch
- FNS Floorplan – Hilfe
- Installation
- Schnellstart
- Editor-Übersicht
- Räume
- Türen und Fenster
- Elemente
- Regeln
- Aussehen
- Karte
- Raum-Panel
- Saugroboter
- Verlauf und Prüfung
- Planformat
- Websocket-API
- Häufige Fragen und Fehlerbehebung
- Änderungen
- Die Karte wird nach der Installation nicht gefunden
- „Custom element doesn't exist“ oder ein Konfigurationsfehler erscheint
- Symbole fehlen
- Einige Texte werden nicht übersetzt
- Ein Licht leuchtet nicht in der erwarteten Farbe
- Die Karte zeigt nach einem Update die alte Version
- Die Karte ruckelt oder ist langsam
- Beim Speichern heißt es, der Plan habe sich inzwischen geändert (Konflikt)
- Der Plan ist leer
- Eine Regel greift nicht
- Der Seitenleisten-Eintrag fehlt
- Etwas anderes funktioniert nicht
- Die Karte meldet, dass sie auf die Integration wartet
- Unterstützung
Polski
- FNS Floorplan – pomoc
- Instalacja
- Szybki start
- Przegląd edytora
- Pomieszczenia
- Drzwi i okna
- Elementy
- Reguły
- Wygląd
- Karta
- Panel pomieszczenia
- Odkurzacz
- Historia i kontrola
- Format planu
- Websocket API
- FAQ i rozwiązywanie problemów
- Lista zmian
- Karta nie jest znaleziona po instalacji
- Pojawia się „Custom element doesn't exist” lub błąd konfiguracji
- Brakuje ikon
- Niektóre teksty nie są przetłumaczone
- Światło nie świeci w kolorze, jakiego oczekuję
- Karta pokazuje starą wersję po aktualizacji
- Karta działa wolno lub się zacina
- Zapis zgłasza, że plan w międzyczasie się zmienił (konflikt)
- Plan jest pusty
- Reguła nie działa
- Brakuje pozycji w pasku bocznym
- Coś innego nie działa
- Karta pisze, że czeka na integrację
- Wsparcie