Finde den Fehler nicht bei Weckerbastelei

Begonnen von accessburn, 11 Januar 2016, 23:26:42

Vorheriges Thema - Nächstes Thema

accessburn

Huhu,

ich versuche mir einen kleinen Wecker zu basteln und hab irgendwas verbastelt :-(
Ich finde den Fehler einfach nicht, vielleicht sitz ich zu lange davor. Hat jemand eine Idee wieso nach dem ändern eines Dropdownfeldes der Wert nicht mehr in den Dummy geschrieben wird?

Grüße aus Ffm


# --- Wecker
define Wecker_Radio at *20:47:00 set SRadio PLAY http://streams.ffh.de/ffhchannels/mp3/hq80er.m3u;;set SRadio VOLUME 90%
set Wecker_Radio inactive

define Wecker_Std dummy
attr Wecker_Std room Wecker
attr Wecker_Std group Wecker
attr Wecker_Std setList state:01,02,03,04,05,06,07,08,09,10,11,12,13,14,15,16,17,18,19,20,21,22,23
attr Wecker_Std webCmd state
attr Wecker_Std alias Stunden
attr Wecker_Std webCmd state:06
define irgendwas_Std notify Wecker_Std { my $Uhr_Std =ReadingsVal("Wecker_Std","state","12") }

define Wecker_Min dummy
attr Wecker_Min room Wecker
attr Wecker_Min group Wecker
attr Wecker_Min setList state:00,05,10,15,20,25,30,35,40,45,50,55
attr Wecker_Min webCmd state
attr Wecker_Min alias Minuten
attr Wecker_Min webCmd state:00
define irgendwas_Min notify Wecker_Min { my $Uhr_Min =ReadingsVal("Wecker_Min","state","00") }

define test dummy
attr test room Wecker
attr test group Wecker
attr test setList state:An,Aus
attr test webCmd state
attr test alias An oder Aus
attr test webCmd state:Aus
attr test devStateIcon Aus:general_aus@red An:general_an@green
Wezzy Rpi2b> FHEM, Elro, Intenso, FTUI, Jeelink v3, Max!Cube, Fire5, Foscam, NAS, Fritz!Box + Fon, Max!Wandthermostat, Amazon Echo
Wezzy Rp3b> OctoPi
Jessie Rp3b> UPNP, NAS, Pi-Hole

rudolfkoenig

Welcher Wert int welcher dummy?
Mir faellt nur auf, dass die notifys "sinnlos" sind, sie Fragen ein Wert ab, ohne etwas zu setzen.

accessburn

Eigentlich will ich eine Variable mit Minuten und eine mit Stunden speichern um daraus den AT-Befehl zu basteln. Aber ich weiß nicht was ich da falsch mache :(
Wezzy Rpi2b> FHEM, Elro, Intenso, FTUI, Jeelink v3, Max!Cube, Fire5, Foscam, NAS, Fritz!Box + Fon, Max!Wandthermostat, Amazon Echo
Wezzy Rp3b> OctoPi
Jessie Rp3b> UPNP, NAS, Pi-Hole

franky08

define irgendwas_Std notify Wecker_Std { my $Uhr_Std =ReadingsVal("Wecker_Std","state","12") }

notify läuft nins Leere, hier kann nichts gesetzt werden, das = an ReadingsVal, fehlt ein Leerzeichen

oops Rudi war schneller

VG
Frank
Debian Wheezy auf ZBOX nano/ Debian Bullseye auf 2.ter ZBOX nano F2F an 2x RaspiB
22Zoll ViewSonic als Infodislay (WVC)
3xHMLAN mit vccu ,fhem5.8, CCU2,
ECMD an AVR-NET-IO mit DAC u. ADC an Junkers Stetigregelung, Siemens LOGO!8, JeeLink uvm...

franky08

Zeiten im at werden über modifyTimeSpec geändert.
Debian Wheezy auf ZBOX nano/ Debian Bullseye auf 2.ter ZBOX nano F2F an 2x RaspiB
22Zoll ViewSonic als Infodislay (WVC)
3xHMLAN mit vccu ,fhem5.8, CCU2,
ECMD an AVR-NET-IO mit DAC u. ADC an Junkers Stetigregelung, Siemens LOGO!8, JeeLink uvm...

franky08

Hier mal ein Beispiel von mir, damit wird eine Zeit zum Einschalten der Kaffemaschine über setList vorgewählt:

define Kaffemaschine_an_du dummy
attr Kaffemaschine_an_du DbLogExclude .*
attr Kaffemaschine_an_du alias Kaffeemaschine Einschaltzeit Vorwahl
attr Kaffemaschine_an_du room Kueche
attr Kaffemaschine_an_du setList state:06:00,06:30,07:00,07:30,08:00,08:30,09:00,09:30,10:00
attr Kaffemaschine_an_du webCmd state
define Kaffee_an at *07:30 set Kaffeemaschine_Sw on
attr Kaffee_an DbLogExclude .*
attr Kaffee_an alias Kaffeemaschine an
attr Kaffee_an room Kueche
define Kaffemasch_nty notify Kaffemaschine_an_du set Kaffee_an modifyTimeSpec $EVENT
attr Kaffemasch_nty DbLogExclude .*
attr Kaffemasch_nty room Unsorted


VG
Frank
Debian Wheezy auf ZBOX nano/ Debian Bullseye auf 2.ter ZBOX nano F2F an 2x RaspiB
22Zoll ViewSonic als Infodislay (WVC)
3xHMLAN mit vccu ,fhem5.8, CCU2,
ECMD an AVR-NET-IO mit DAC u. ADC an Junkers Stetigregelung, Siemens LOGO!8, JeeLink uvm...

accessburn

Das ist ja schon mal suuuuuuuuuuper toll  :P

Das hatte ich irgendwann schonmal so zum laufen gebracht. Was ich jedoch dann wollte ( und somit verbockte ) war die aufteilung von Stunden und minuten in zwei dummys um von 0-23 Stunden und 0-59 Minuten stufenlos zu schalten.

Hilfst du/ihr mir da auch auf die Sprünge?
Wezzy Rpi2b> FHEM, Elro, Intenso, FTUI, Jeelink v3, Max!Cube, Fire5, Foscam, NAS, Fritz!Box + Fon, Max!Wandthermostat, Amazon Echo
Wezzy Rp3b> OctoPi
Jessie Rp3b> UPNP, NAS, Pi-Hole

franky08

Das wird nicht funktionieren da der timespec ein Ausdruck h:min ist und du das im at nicht getrennt setzen kannst mit modifyTimeSpec.
Debian Wheezy auf ZBOX nano/ Debian Bullseye auf 2.ter ZBOX nano F2F an 2x RaspiB
22Zoll ViewSonic als Infodislay (WVC)
3xHMLAN mit vccu ,fhem5.8, CCU2,
ECMD an AVR-NET-IO mit DAC u. ADC an Junkers Stetigregelung, Siemens LOGO!8, JeeLink uvm...

accessburn

Ich komme halt aus der PHP-Szene, da würde ich das quasi mit
$string = $std . ":" . $Min . ":00";
setzen. Das ist also da nicht möglich. Sehr schade :-(
Wezzy Rpi2b> FHEM, Elro, Intenso, FTUI, Jeelink v3, Max!Cube, Fire5, Foscam, NAS, Fritz!Box + Fon, Max!Wandthermostat, Amazon Echo
Wezzy Rp3b> OctoPi
Jessie Rp3b> UPNP, NAS, Pi-Hole

franky08

Auf Perl Ebene bestimmt aber ich hab jetzt keine Zeit das zusammen zu knippern. Im Prinzip 2 dummys mit setList einmal für die Stunden und einmal für die Minuten dann mittels regex bei dummy1 die Minuten abschneiden und beim 2. dummy die Stunden und zum schluss beide wieder mit den gewählten h:min zusammensetzen und ins at schreiben.
Obwohl das garantiert auch einfacher gehen wird, seh ich iMo aber nicht  8)

VG
Frank
Debian Wheezy auf ZBOX nano/ Debian Bullseye auf 2.ter ZBOX nano F2F an 2x RaspiB
22Zoll ViewSonic als Infodislay (WVC)
3xHMLAN mit vccu ,fhem5.8, CCU2,
ECMD an AVR-NET-IO mit DAC u. ADC an Junkers Stetigregelung, Siemens LOGO!8, JeeLink uvm...

accessburn

Trotzdem danke. Ich schaue mal was ich so zusammen klemptnern kann :-D
Wezzy Rpi2b> FHEM, Elro, Intenso, FTUI, Jeelink v3, Max!Cube, Fire5, Foscam, NAS, Fritz!Box + Fon, Max!Wandthermostat, Amazon Echo
Wezzy Rp3b> OctoPi
Jessie Rp3b> UPNP, NAS, Pi-Hole

franky08

Oder sieh dir mal WeekdayTimer an, vlt. gehts damit.

VG
Frank
Debian Wheezy auf ZBOX nano/ Debian Bullseye auf 2.ter ZBOX nano F2F an 2x RaspiB
22Zoll ViewSonic als Infodislay (WVC)
3xHMLAN mit vccu ,fhem5.8, CCU2,
ECMD an AVR-NET-IO mit DAC u. ADC an Junkers Stetigregelung, Siemens LOGO!8, JeeLink uvm...

CoolTux

Ich würde zwei Dummys machen. Einer Stunde einer Minute. Mit setList einfach alle entsprechenden Werte pro Dummy. Also Dummy1 0-12 Dummy2 0-59. Was für ein Aufwand :-)
Dann ein notify auf Dummy2, weil man ja die Minuten zu meist als letztes setzt. In dem notify liest Du denn beide Dummys aus und bastelst daraus Dein string zum setzen des at's


Fertig
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

accessburn

Zitat von: CoolTux am 12 Januar 2016, 10:49:06
Ich würde zwei Dummys machen.

Würde ich auch, daher mein Eingangsscript ganz oben, in dem das so war, aber nicht funktionierte  :P
Wezzy Rpi2b> FHEM, Elro, Intenso, FTUI, Jeelink v3, Max!Cube, Fire5, Foscam, NAS, Fritz!Box + Fon, Max!Wandthermostat, Amazon Echo
Wezzy Rp3b> OctoPi
Jessie Rp3b> UPNP, NAS, Pi-Hole

CoolTux

Hast Du nicht, daher hat es auch nicht funktioniert. Noch mal lesen bitte was ich geschrieben habe.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net