FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: sunchecker am 26 November 2014, 19:04:15

Titel: [gelöst] Dummywert (bei Klick auf "An") an anderen Dummy übergeben
Beitrag von: sunchecker am 26 November 2014, 19:04:15
Hallo zusammen,
leider habe ich ein totales Anfängerproblem: Seit zwei Tagen versuche ich mit dem Forum zu verstehen wo mein Fehler ist...


...
define Nachttemperatur dummy
attr Nachttemperatur group Heizung
attr Nachttemperatur room Heizung
attr Nachttemperatur setList off on
define istag notify Nachttemperatur:off set Solltemperatur 20
define istnacht  notify TagundNacht:on{fhem("set Solltemperatur". ReadingsVal("Nachttemperatur1", "state", "")}
...



Für Nachttemperatur1 habe ich einen Dummy mit dropdown-Menue.
Solltemperatur ist der Dummy für meine Heizungssteuerung.

Was ich eigentlich nur erreichen will, ist das der Wert von Nachttemperatur1 (bei klick auf "An") an den Dummy Solltemperatur übergeben wird.

Für eine Hilfe bin ich sehr dankbar ! :)

Titel: Antw:Dummywert (bei Klick auf "An") an anderen Dummy übergeben
Beitrag von: Puschel74 am 26 November 2014, 19:21:11
Hallo,

a)
attr Nachttemperatur webCmd off on

b)
ZitatWas ich eigentlich nur erreichen will, ist das der Wert von Nachttemperatur1 (bei klick auf "An") an den Dummy Solltemperatur übergeben wird.
Ja schön.
TagundNacht ist was  ???
define istnacht  notify TagundNacht:on{fhem("set Solltemperatur". ReadingsVal("Nachttemperatur1", "state", "")}
Das notify triggert auf ein Event on von TagundNacht - aber das zeigst du uns nicht  ;)

Also - triggert das notify überhaupt?
TagundNacht:on {fhem("set Solltemperatur ".Value("Nachttemperatur1")}

Wenn du im DEF schaust siehst du das das regexp von istnacht so aussieht
on{
Falsch.

Mein Code ist auch NUR für das DEF gedacht - den Wert eines Dummy kann mann mit Value abfragen.

Grüße
Titel: Antw:Dummywert (bei Klick auf "An") an anderen Dummy übergeben
Beitrag von: sunchecker am 26 November 2014, 20:31:31
Schon einmal vielen Dank für die superschnelle Antwort!
Leider klappt das so nicht...

Hier noch einmal der gesamte code:

define Solltemperatur dummy
attr Solltemperatur group Heizung
attr Solltemperatur room Heizung
attr Solltemperatur setList state:0,5,10,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30
attr Solltemperatur webCmd state

define Nachttemperatur dummy
attr Nachttemperatur group Heizung
attr Nachttemperatur room Heizung
attr Nachttemperatur setList state:0,5,10,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30
attr Nachttemperatur webCmd state

define Nachtmodus dummy
attr Nachtmodus group Heizung
attr Nachtmodus room Heizung
attr Nachtmodus setList off on
define istag notify Nachtmodus:off set Solltemperatur 20
define istnacht notify Nachtmodus:on {fhem("set Solltemperatur". ReadingsVal("Nachttemperatur", "state", "")}

TagundNacht war ein copy&paste-Fehler... habe die Variable nun Nachtmodus genannt.

Hintergrund:
DieNachttemperatur soll über ein Dropdown frei wählbar sein und über den Schalter Nachtmodus:on den Wert von Nachttemperatur bekommen.
Habe ein Bild angefügt. Eigentlich ist die Sache sehr einfach, doch komme ich einfach nicht drauf wie...
Titel: Antw:Dummywert (bei Klick auf "An") an anderen Dummy übergeben
Beitrag von: Puschel74 am 26 November 2014, 21:16:02
Hallo,

aber auch hier gilt:
fhem("set Solltemperatur ".Value("Nachttemperatur")

Leerzeichen müssen wohl überlegt gesetzt werden.

Wenn es so nicht klappt versuch mal die "Langversion":
Nachtmodus:on {
  my $wert=Value("Nachttemperatur");
  fhem("set Solltemperatur ".$wert);
}


Gut gemeinter Tipp:
Finger weg von der fhem.cfg
Fehlermeldungen zeigt dir FHEM im Logfile an - diese ggf. bitte posten
Und nach wie vor:
attr Nachtmodus webCmd on off

Und es konnte mir immer noch niemand schlüssig erklären warum Werte unbedingt von einem Dummy (oder Device) in einen anderen Dummy kopiert werden müssen.
Aber gut, das dürft ihr gerne so machen wie ihr das wollt.

Es wäre allerdings nett wenn du ALLE Vorschläge versuchen würdest.
Danke.

Grüße
Titel: Antw:Dummywert (bei Klick auf "An") an anderen Dummy übergeben
Beitrag von: sunchecker am 26 November 2014, 22:26:34
Es hat geklappt!!!

Nochmals vielen Dank für die Antwort! Mit Deinem Tipp hat es geklappt.

Die entscheidende Zeile war:
define istnacht  notify Nachtmodus:on { fhem("set Solltemperatur ".ReadingsVal('Nachttemperatur','State', '16') ) }

Mein dummer Anfängerfehler war state klein zu schreiben.

:) :) :)
Titel: Antw:Dummywert (bei Klick auf "An") an anderen Dummy übergeben
Beitrag von: Puschel74 am 26 November 2014, 22:33:24
Na wunderbar.
Ich sehe du hast meine Antworten weder gelesen noch verstanden.

ZitatNochmals vielen Dank für die Antwort! Mit Deinem Tipp hat es geklappt.
Ich kann nicht erkennen das ich DIESEN Tipp gegeben habe.

Und das sind dann genau die Situationen wo ich mich immer frage - wozu soll ich noch antworten.
Aber egal - dann bitte noch wie im angepinnten Beitrag beschrieben den Titel kennzeichnen.
Danke und viel Spaß noch.

Und dann kommt der nächste Anfänger und jammert das er keine Hilfe bekommt - na bei dieser Resonanz kein Wunder.
Titel: Antw:Dummywert (bei Klick auf "An") an anderen Dummy übergeben
Beitrag von: sunchecker am 29 November 2014, 10:39:18
Das lag daran, dass nichts von dem funktionierte. So wie ich es geschrieben habe funktioniert es und ist ggf. Hilfreich für andere.
Trotzdem bin ich sehr dankbar für die Spur - sonst wäre ich vielleicht nie drauf gekommen.
Die eventuellen Unterstellungen/Beleidigungen oder was auch immer mit betimmten Sätzen gemeint war, habe ich gerne überlesen.

Wünsche allen ein schönes Wochenende!
Titel: Antw:Dummywert (bei Klick auf "An") an anderen Dummy übergeben
Beitrag von: Puschel74 am 29 November 2014, 10:42:46
Und auch hier gilt:
NICHT schliessen - ein Gelöst vor den Betreff des ersten Beitrags genügt.
Danke.