ReadingsGroup mehrere NTM Werte auflisten

Begonnen von iceman, 22 März 2016, 16:27:46

Vorheriges Thema - Nächstes Thema

iceman

Hi,

ich habe mit mehreren at Befehlen eine Art Zeitschaltuhr realisiert, die auch abhängig von Sonne auf- bzw. untergang +Offset geschaltet wird. Nun möchte ich alle At Befehle, die zu einer Funsteckdose gehören laufgelistet haben. Ich Denke ich kann dass mit ReadingsGroup und dem NTM Wert, der in den at Type gespeichert ist realisieren. Scheitere aber... Die zusamengehörigen Zeiten habe ich wie folgt angelegt:


define at_Treppenhaus1_1_an at +*{sunset_rel(ReadingsVal("Treppenhaus1_1_an","state","0")*60)} {fhem "set ELRO on";;}
define at_Treppenhaus1_1_aus at *{ReadingsVal("Treppenhaus1_1_aus","state","20:00")} {fhem "set ELRO off";;}
define at_Treppenhaus1_2__an at *{ReadingsVal("Treppenhaus1_2__an","state","05:30")} {fhem "set ELRO on";;}
define at_Treppenhaus1_2_aus at *{ReadingsVal("Treppenhaus1_2_aus","state","00:03")} {fhem "set ELRO off";;}


ich hab's schon mit:

define Treppenhaus readingsGroup at_Treppenhaus1_1_an:NTM at_Treppenhaus1_1_aus:NTM at_Treppenhaus1_2_an:NTM at_Treppenhaus1_2_aus:NTM
attr Treppenhaus room AutoLicht
attr Verbrauch valueFormat {NTM => "%.1f W"}


versucht und mit anderen Varianten, aber ich komme nicht drauf wie ich die Uhrzeiten anzeigen kann...

Kann mir jemand einen Tip geben?

justme1968

NTM ist ein internal und kein reading. du kannst es mit +NTM einbinden. es gibt aber keinen longpoll update dafür.

define Treppenhaus readingsGroup at_Treppenhaus.*:+NTM

ansonsten schau dir mal WeekdayTimer an. damit lassen sich mehrere tägliche schaltzeiten für ein device besser handhaben als mit mehreren at.

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

iceman

Danke Justme1968.

Damit funktioinert es jetzt.

Der WeekdayTimer ist auch interessant, allerdings konnte ich bisher die eingestellten Zeiten damit nicht im Frontend anzeigen. Außerdem möchte ich die Zeiten ebenfalls auch über das Frontend einstellen können. Das hab ich bisher so wie im WakeupLight Beispiel gelöst.

define Treppenhaus1_1_an dummy
attr Treppenhaus1_1_an alias Treppenhaus1_1_an X Minuten vor Sonnenuntergang
attr Treppenhaus1_1_an group Licht_DG
attr Treppenhaus1_1_an room AutoLicht
attr Treppenhaus1_1_an setList state:slider,-90,1,90
attr Treppenhaus1_1_an webCmd state
define at_Treppenhaus1_1_an at +*{sunset_rel(ReadingsVal("Treppenhaus1_1_an","state","0")*60)} {fhem "set ELRO on";;}
define ntfy_Treppenhaus1_1_an notify Treppenhaus1_1_an { fhem("modify at_Treppenhaus1_1_an *$EVENT");; }
define n_Treppenhaus1_1_an notify (Treppenhaus1_1_an|global:INITIALIZED|global:REREADCFG).* \
   modify at_Treppenhaus1_1_an +*{sunset_rel(ReadingsVal("Treppenhaus1_1_an","state","0")*60)}

....


Ghet das mit dem WeekdayTimer auch?

justme1968

du kannst beim WeekdayTimer die zeiten jeweils genau so über einen perl ausdruck in {} berechnen lassen.

ich weiss zwar nicht warum du den Offset interaktiv einstellen möchtest. wenn es ein mal passt muss man das doch nicht mehr anfassen... aber das geht auch mit dem auslesen des Offsets aus einem dummy. um das neu berechnen zu triggern gibt es glaube ich eine routine. schau mal in der commandref. zur not geht auch disabe/enable.

die schaltzeiten stehen jeweils in den PROFILE... internals. für jeden wochentag. wenn du die sunset_abs_dat($date, ...) variante verwendest siehst auch wie sich die schaltzeiten von tag zu tag ändern.


ich habe zum beispiel so etwas:define BaumTimer  WeekdayTimer Baum {sunrise_abs_dat($date,"HORIZON=-20")}|on {sunrise_abs_dat($date)}|off {sunset_abs_dat($date,"REAL")}|on {"23:59"}|off

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968