HomeMatic WebUI: Unterschied zwischen den Versionen

Aus Wikimatic
Wechseln zu: Navigation, Suche
(versteckte Konfigurationsseiten)
(WebUI-Logik)
Zeile 1: Zeile 1:
 +
== die Logik der WebUI Programme ==
 +
Merksätze zur WebUI-Logik
 +
#Es wird immer ein ganzes Programm ausgeführt, also von jeder Dann-Teil, wenn der jeweilige Wenn-Teil zutrifft. Die Bezeichnung "Sonst..." oder "Sonst Wenn..." ist falsch, es müsste heißen "Sonst..." und "Außerdem Wenn..." (so korrekt?)
 +
#Auslösen bei Änderung oder Aktualisierung achtet nicht auf die Bedingung sondern legt zunächst nur fest, wann die Bedingungsprüfung für ein Programm gestartet werden soll. "bei ''offen'' '''auslösen auf Änderung'''" bedeutet '''nicht''': "bei ''öffnen''"!
 +
===Beispiele===
 +
Was tut dieses beispielhafte Programm?
  
 +
Bedingung: Wenn...
 +
  Geräteauswahl ''Fenster'' bei ''offen'' '''auslösen auf Änderung'''
 +
  ODER
 +
  Geräteauswahl ''Lampe'' bei ''Schaltzustand: ein'' '''auslösen auf Änderung'''
 +
Aktivität: Dann...
 +
  Systemzustand ''Wohnmodus'' bei ''Wach''
 +
 +
Das Programm liest sich zunächst so, als würde der Wohnmodus beim Öffnen des Fensters oder beim Einschalten der Lampe auf ''Wach'' gesetzt. Dies ist zwar richtig, aber nicht die ganze Wahrheit. Warum verdeutlicht die folgende fiktive Schreibweise (fiktiv, weil das WebUI das so nicht darstellt, aber eigentlich so meint):
 +
 +
Ausführung: Immer wenn...
 +
  Geräteauswahl ''Fenster'' wird '''Geändert'''
 +
  ODER
 +
  Geräteauswahl ''Lampe'' wird '''Geändert'''
 +
Bedingung: ...dann prüfe ob...
 +
  Geräteauswahl ''Fenster'' bei ''offen''
 +
  ODER
 +
  Geräteauswahl ''Lampe'' bei ''Schaltzustand: ein''
 +
Aktivität: Wenn Bedingung wahr, dann...
 +
  Systemzustand ''Wohnmodus'' bei ''Wach''
 +
 +
Hier wird der Unterschied deutlich: '''Das Programm wird auch dann ausgeführt, wenn die Lampe bereits eingeschaltet ist und das Fenster geschlossen wird, oder wenn das Fenster offen ist und die Lampe ausgeschaltet wird!'''
  
=== die Logic der WebUI Programme ===
 
 
----
 
----
  
  
=== versteckte Konfigurationsseiten ===
+
== versteckte Konfigurationsseiten ==
 
*[[Anzeige des Sende- Und Empfanspegels]]
 
*[[Anzeige des Sende- Und Empfanspegels]]

Version vom 6. Februar 2011, 22:31 Uhr

die Logik der WebUI Programme

Merksätze zur WebUI-Logik

  1. Es wird immer ein ganzes Programm ausgeführt, also von jeder Dann-Teil, wenn der jeweilige Wenn-Teil zutrifft. Die Bezeichnung "Sonst..." oder "Sonst Wenn..." ist falsch, es müsste heißen "Sonst..." und "Außerdem Wenn..." (so korrekt?)
  2. Auslösen bei Änderung oder Aktualisierung achtet nicht auf die Bedingung sondern legt zunächst nur fest, wann die Bedingungsprüfung für ein Programm gestartet werden soll. "bei offen auslösen auf Änderung" bedeutet nicht: "bei öffnen"!

Beispiele

Was tut dieses beispielhafte Programm?

Bedingung: Wenn...
  Geräteauswahl Fenster bei offen auslösen auf Änderung
  ODER
  Geräteauswahl Lampe bei Schaltzustand: ein auslösen auf Änderung
Aktivität: Dann...
  Systemzustand Wohnmodus bei Wach

Das Programm liest sich zunächst so, als würde der Wohnmodus beim Öffnen des Fensters oder beim Einschalten der Lampe auf Wach gesetzt. Dies ist zwar richtig, aber nicht die ganze Wahrheit. Warum verdeutlicht die folgende fiktive Schreibweise (fiktiv, weil das WebUI das so nicht darstellt, aber eigentlich so meint):

Ausführung: Immer wenn...
  Geräteauswahl Fenster wird Geändert
  ODER
  Geräteauswahl Lampe wird Geändert
Bedingung: ...dann prüfe ob...
  Geräteauswahl Fenster bei offen
  ODER
  Geräteauswahl Lampe bei Schaltzustand: ein
Aktivität: Wenn Bedingung wahr, dann...
  Systemzustand Wohnmodus bei Wach

Hier wird der Unterschied deutlich: Das Programm wird auch dann ausgeführt, wenn die Lampe bereits eingeschaltet ist und das Fenster geschlossen wird, oder wenn das Fenster offen ist und die Lampe ausgeschaltet wird!



versteckte Konfigurationsseiten