Dummy-Device mit Initialwert vorbelegen

Begonnen von brmpfl, 14 Januar 2014, 20:40:42

Vorheriges Thema - Nächstes Thema

brmpfl

Moin,

ich stehe gerade auf dem Schlauch.

Ich habe ein Dummy-Device definiert, dass über ein notify gesetzt wird.
Dieses Dummy-device steht jetzt aber bis zum Eintreffen des 1. Events im Status '??'.
Das senkt den WAF!  ;)

Also möchte ich, dass dem Dummy-Device bereits bei/mit der Definition ein Wert aus einem realen Device zugewiesen wird.
Nur komme ich im Moment nicht drauf, wie ich das anstelle!?

Hier der relevante Teil:


#
# Temperatursensor
#
define sz_S300TH CUL_WS 2
attr sz_S300TH model S300TH
attr sz_3000TH room hidden
#
# Dummy-Device zum Anzeigen der Temperatur von sz_S300TH
#
define sz_Temperatur dummy
attr sz_Temperatur group Klima
attr sz_Temperatur alias Temperatur
define sz_S300TH_Temperature_Notify notify sz_S300TH:temperature:.* {\
  fhem 'set sz_Temperatur ' . $EVTPART1 . ' °C'\
}


:)
:)
Hajo

betateilchen

define initDummy notify global:INITIALIZED set sz_Temperatur 25

Frauen lieben kuschlige Temperaturen.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

brmpfl

Hmmm,

das rockt bei mir nicht.
Zumindest nach einem rereadcfg tut sich nix


define sz_KlimaInit notify global:INITIALIZED {\
  my $temperature = ReadingsVal("sz_S300TH", "temperature ", "---");;\
  fhem 'set sz_Temperatur ' . $temperature . ' °C';;\
}


:)
:)
Hajo

fiedel

Das geht nur bei "richtigen" Neustarts. Ich hab das so gelöst:

define sz_KlimaInit watchdog . 00:00:01 SAME {\ ... 

Das geht auch bei reread o.Ä.. Muss allerdings mehr am Ende der CFG definiert werden, da es über der Def. des Dummies und des Sensors nichts bringt.

Gruß

Frank
FeatureLevel: 6.1 auf Wyse N03D ; Deb. 11 ; Perl: v5.14.2 ; IO: HM-MOD-RPI-PCB + VCCU|CUL 868 V 1.66|LinkUSBi |TEK603
HM: SEC-SCO|SCI-3-FM|LC-SW4-PCB|ES-PMSW1-PL|RC-4-2|SEN-MDIR-O|SEC-WDS-2
CUL: HMS100TF|FS20 S4A-2 ; OWDevice: DS18S20|DS2401|DS2406|DS2423

bugster_de

Hi,

wenn ihr den notify so anleget, dann wird er bei einem Nuestart als auch bei rereadcfg ausgelöst:

define sz_KlimaInit notify global:INITIALIZED|REREADCFG

bmwfan

Hallo,
jetzt grabe ich den alten Thread nochmal aus, da ich auch vorbelegen will.
Ich habe wie beschrieben ein notify angelegt:
global:INITIALIZED|REREADCFG (set du_Robby_Control dreset, set du_switch test)
aber der Testdummy du_switch steht nach eine rereadcfg nicht auf test sondern auf dem alten Wert. Funktioniert der notify nicht, wenn mehrere set-Befehle angegeben werden?
Gruß Jürgen
Synology DS720+ mit Docker-Container und Haupt-FHEM, HM-LAN, Jalousienaktoren HmWired, Shelly-Devices; Raspi 3B+ mit piVCCU ohne FHEM-Instanz, CUL, JeeLink; Raspi 3B+ mit FHEM und HMUARTUSB,  Raspi 3B+ mit HMUARTGPIO, 1-wire, ebusd

igami

Zitat von: bmwfan am 17 April 2017, 17:29:03
Hallo,
jetzt grabe ich den alten Thread nochmal aus, da ich auch vorbelegen will.
Ich habe wie beschrieben ein notify angelegt:
global:INITIALIZED|REREADCFG (set du_Robby_Control dreset, set du_switch test)
aber der Testdummy du_switch steht nach eine rereadcfg nicht auf test sondern auf dem alten Wert. Funktioniert der notify nicht, wenn mehrere set-Befehle angegeben werden?
Gruß Jürgen
Du scheinst das mit DOIF zu vermischen, bei notify stehen die Befehle nicht in einer Klammer und werden durch ein Semikolon getrennt
Pi3 mit fhem.cfg + DbLog/logProxy
Komm vorbei zum FHEM Treffen im Kreis Gütersloh! Das nächste Mal im April 2020.

MAINTAINER: archetype, LuftdatenInfo, monitoring, msgDialog, Nmap, powerMap
ToDo: AVScene, FluxLED

bmwfan

Stimmt, ich versuche so weit als möglich alles mit DOIF zu realisieren und habe es hier ohne nachzudenken gleich gemacht.
Besten Dank für den Tip.
Gruß Jürgen
Synology DS720+ mit Docker-Container und Haupt-FHEM, HM-LAN, Jalousienaktoren HmWired, Shelly-Devices; Raspi 3B+ mit piVCCU ohne FHEM-Instanz, CUL, JeeLink; Raspi 3B+ mit FHEM und HMUARTUSB,  Raspi 3B+ mit HMUARTGPIO, 1-wire, ebusd