Neue Features: Aggregationsfunktion, Filtern nach Zahl mit Nachkommastellen

Begonnen von Damian, 15 April 2017, 21:25:06

Vorheriges Thema - Nächstes Thema

StephanFHEM

also...mit dem Perl-Aufruf von dir schreibt er leider gar nichts mehr ins Reading. Das Reading bekommt keine Änderung

Damian

Da fehlten noch Anführungszeichen bei state:

{(join(", ",AggrDoIf('@a','_Fenster|_Tuer','state','"open|closed"')))}
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF


Damian

naja auch das ist inzwischen überholt ;)

man kann jetzt auch Trennzeichen definieren mit s(<Trennzeichen>)

bei dir dann:

setreading $SELF Sensoren [@as(, )"_Fenster|_Tuer",state,"open|closed"]

Ich dachte mir, den Wunsch werden noch ein paar andere User haben ;)
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

StephanFHEM


Damian

Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

Per

Was vllt. auch noch interessant wäre, ist die Anzahl der in die Listen aufgenommenen Devices (z.B. $count ?) als Variable für #.

Damian

Zitat von: Per am 27 April 2017, 12:52:15
Was vllt. auch noch interessant wäre, ist die Anzahl der in die Listen aufgenommenen Devices (z.B. $count ?) als Variable für #.
gibt es doch mit #
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

Per

([#:"Fenster":state:"offen","closed"] > 0) (set msg # Fenster sind noch offen)
geht also?

Damian

Zitat von: Per am 27 April 2017, 13:32:15
([#:"Fenster":state:"offen","closed"] > 0) (set msg # Fenster sind noch offen)
geht also?

natürlich, ist doch in der commandref auch so beschrieben mit:


Zitat# Anzahl der betroffenen Devices, der folgende Doppelpunkt kann weggelassen werden

allerdings meinst du wahrscheinlich:

([#:"Fenster:closed":state:"offen"] > 0)

wenn "closed" das zu triggernde Ereignis sein soll.
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

RoBra81

Hallo,

Ich habe diese neuen Funktionen durch Zufall entdeckt und auch den Hinweis, dass man damit Strukturen ersetzen kann. Da ich mit meinen Strukturen nie ganz zufrieden war, wollte ich diese durch DOIFs ersetzen. Nun meine Frage: die Strukturen für meine Lampen haben entweder den Status All_Off oder Any_On - gibt es im DOIF die Möglichkeit, bei der Anzahl die 0 durch All_Off und alles größer 0 durch Any_On zu ersetzen?

Vielen Dank
Ronny

Gesendet von meinem SM-G935F mit Tapatalk


Damian

Zitat von: RoBra81 am 05 Mai 2017, 09:44:02
Hallo,

Ich habe diese neuen Funktionen durch Zufall entdeckt und auch den Hinweis, dass man damit Strukturen ersetzen kann. Da ich mit meinen Strukturen nie ganz zufrieden war, wollte ich diese durch DOIFs ersetzen. Nun meine Frage: die Strukturen für meine Lampen haben entweder den Status All_Off oder Any_On - gibt es im DOIF die Möglichkeit, bei der Anzahl die 0 durch All_Off und alles größer 0 durch Any_On zu ersetzen?

Vielen Dank
Ronny

Gesendet von meinem SM-G935F mit Tapatalk

Anzahl wovon?
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

RoBra81

Ich zähle mit der neuen Aggregationsfunktion die eingeschalteten Lampen eines Raumes:

define OG.fk.STR.Licht DOIF
attr OG.fk.STR.Licht room Flur_Kinder
attr OG.fk.STR.Licht state [#"OG\.fk\.LI\.\w*.":state:"on"]


Nun möchte ich aber nicht die Anzahl haben, sondern bei 0 den state "All_Off" und bei größer 0 den state "Any_On"...

Ronny

Damian

Zitat von: RoBra81 am 05 Mai 2017, 09:56:14
Ich zähle mit der neuen Aggregationsfunktion die eingeschalteten Lampen eines Raumes:

define OG.fk.STR.Licht DOIF
attr OG.fk.STR.Licht room Flur_Kinder
attr OG.fk.STR.Licht state [#"OG\.fk\.LI\.\w*.":state:"on"]


Nun möchte ich aber nicht die Anzahl haben, sondern bei 0 den state "All_Off" und bei größer 0 den state "Any_On"...

Ronny

ok.

state {([#"OG\.fk\.LI\.\w*.":state:"on"]==0) ? "All_Off" : "Any_On"}
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

RoBra81