hallo ihr lieben da mein Sohn nachts immer das Lichtanlässt möchte ich nun das die entsprechende lampe nach 30 minuten ausgeschaltet wird aber nur wenn es nach 00:00 wie sollte ich das am besten machen ?
timer von bis habe ich schon fürs flur nachtlicht hinbekommen aber das setzt mich hier vor ein problem
Mangels weiterer Infos: Wecker stellen und persönlich nachsehen/ausschalten 8)
Zitat von: Bartimaus am 26 November 2017, 22:01:43
Mangels weiterer Infos: Wecker stellen und persönlich nachsehen/ausschalten 8)
Boah wie hilfreich, dann frag halt nach
Gesendet von meinem KFSUWI mit Tapatalk
ah okay sorry cp vergessen
define Badezimmer_Decke MQTT_DEVICE
attr Badezimmer_Decke IODev myBroker
attr Badezimmer_Decke devStateIcon ON:rc_GREEN:OFF OFF:rc_RED:ON
attr Badezimmer_Decke icon hue_filled_br30
attr Badezimmer_Decke publishSet ON OFF cmnd/Badezimmer_Decke/POWER1
attr Badezimmer_Decke room Badezimmer
attr Badezimmer_Decke stateFormat transmission-state
attr Badezimmer_Decke subscribeReading_Licht stat/Badezimmer_Decke/POWER1
attr Badezimmer_Decke subscribeReading_Sensor tele/Badezimmer_Decke/SENSOR
attr Badezimmer_Decke subscribeReading_Status stat/Badezimmer_Decke/STATUS
attr Badezimmer_Decke webCmd ON:OFF
Diese Lampe soll zwischen 00:00 und 5:00 maximal 30 minuten laufen nach dem einschalten
Das geht relativ simpel mit einem https://fhem.de/commandref_DE.html#DOIF
norify + disabled-for-intervals?
Im notify ein at mit defmod erstellen, oder on-for-timer...
Notify auf das Device triggern, beim Event onschauen ob es zwischen 00:00 und 05:00 Uhr ist wenn ja
sleep 1800; set Badezimmer_Decke off
Ich mag komplett falsch liegen da ich selbst noch in den Anfangsschuhen stecke, aber bekanntlich lernt man bei den Problemen anderer ja auch ein wenig :)
Führt ein Sleep nicht dazu dass es 100%ig nach 30 Minuten ausgeschaltet wird?
Ich stelle mir gerade vor
00:05 Uhr => jemand geht ins Bad .. notify wird getriggert und sleep startet
00:33 Uhr => geht nochmals jemand ins Bad ... wird dann der sleep zurückgesetzt?
So wie ich das bisher verstanden habe müsste die Person dann doch plötzlich um 00:35Uhr im Dunkeln sitzen, oder?
also ich hatte mir jetzt mal sowas zusammen gestrickt hoffe ist irgendwie richtig
define Badezimmer_Decke_Autooff DOIF ([23:00-06:00] and [Badezimmer_Decke] eq "ON") (sleep 1600;set Badezimmer_Decke off)
Badezimmer_Decke
ist halt zusammen gewürfelte sch... aus verschiedenen beiträgen und halbwissen bin ich schon aufem richtigen weg ?
weil irgendwie gehts nicht
Zitat von: leif am 26 November 2017, 22:50:13
Ich mag komplett falsch liegen da ich selbst noch in den Anfangsschuhen stecke, aber bekanntlich lernt man bei den Problemen anderer ja auch ein wenig :)
Führt ein Sleep nicht dazu dass es 100%ig nach 30 Minuten ausgeschaltet wird?
Ich stelle mir gerade vor
00:05 Uhr => jemand geht ins Bad .. notify wird getriggert und sleep startet
00:33 Uhr => geht nochmals jemand ins Bad ... wird dann der sleep zurückgesetzt?
So wie ich das bisher verstanden habe müsste die Person dann doch plötzlich um 00:35Uhr im Dunkeln sitzen, oder?
Wenn kein anderer Sensor zum abfragen da ist dann geht das Licht nach 30 min aus. Das ist korrekt. Ist halt ein on-for-timer
Machs so, dann sitz keiner plötzlich im dunkeln
define Badezimmer_Decke_Autooff DOIF ([23:00-06:00] and [Badezimmer_Decke:"ON"]) (set Badezimmer_Decke off)
attr Badezimmer_Decke_Autooff wait 1600
Gesendet von meinem SM-J510FN mit Tapatalk
Und in wie fern sitzt dann keiner im Dunkeln?
Nach 30min wird doch immer noch das Licht hart aus geschalten.
Für die Uhrzeit würde ich im übrigen eine reine Abfrage wählen und triggern
[?00:00-06:00]
Zitat von: knopf_piano am 27 November 2017, 06:39:10
Machs so, dann sitz keiner plötzlich im dunkeln
define Badezimmer_Decke_Autooff DOIF ([23:00-06:00] and [Badezimmer_Decke:"ON"]) (set Badezimmer_Decke off)
attr Badezimmer_Decke_Autooff wait 1600
Gesendet von meinem SM-J510FN mit Tapatalk
Genau so habe ich es jetzt gemacht aber ich schalte das licht ein und nix passiert habe extra das wait mal auf 30 sec gestellt aber er schaltet nicht aus. und das einer im Dunkeln steht ist egal niemand braucht um die uhrzeit bei uns länger als 30 min aufem Scheisshaus und Notfals ist Alexa noch da.
Doppelt gemoppelt ?
Einen Dummy "on" setzen, wenn das Licht angemacht wird, der einen Timer mit der gewünschten Zeit gestartet.
Der Dummy wird danach auf "off" gesetzt.
Damit wird, bei innerhalb der gewünschten Zeit erneutem Einschalten, der Timer auf 0 zurückgesetzt und zählt neu runter..
Wie wäre es denn mit einem watchdog?
Durch Einschalten der Lampe triggern und wenn nicht innerhalb 30 Minuten erneut getriggert, dann halt ausschalten; sofern es halb eins oder danach ist.
Da die Zustände und webCmd's alle groß geschrieben sind, dürfte ein schlichtes
set Badezimmer_Decke off
nicht funktionieren, oder? Vielleicht dann so:
set Badezimmer_Decke OFF
:
Gesendet von iPad mit Tapatalk
off klein oder gross alles das gleiche es tut sich nichts werde morgen den 433 mhz gegen nen sonoff tauschen mal sehen ob sich da was tut. wegen dem status ka ist nur ne idee !
so arbeite jetzt testweise mit dem Wohnzimmer sonoff da ich jetzt einen schalter fürs Bad beestellt habe aber ncht nicht da ist
attr Wohnzimmer_Decke IODev myBroker
attr Wohnzimmer_Decke devStateIcon ON:rc_GREEN:OFF OFF:rc_RED:ON
attr Wohnzimmer_Decke icon hue_filled_br30
attr Wohnzimmer_Decke publishSet ON OFF cmnd/wohnzimmer_decke/POWER1
attr Wohnzimmer_Decke room Wohnzimmer
attr Wohnzimmer_Decke stateFormat transmission-state
attr Wohnzimmer_Decke subscribeReading_Licht stat/wohnzimmer_decke/POWER1
attr Wohnzimmer_Decke subscribeReading_Sensor tele/wohnzimmer_decke/SENSOR
attr Wohnzimmer_Decke subscribeReading_Status stat/wohnzimmer_decke/STATUS
attr Wohnzimmer_Decke webCmd ON:OFF
define Wohnzimmer_Decke_Autooff DOIF ([08:00-19:00] and [Wohnzimmer_Decke:"ON"]) (set Wohnzimmer_Decke OFF)
attr Wohnzimmer_Decke_Autooff room Wohnzimmer
attr Wohnzimmer_Decke_Autooff wait 30
ich glaube er kann das reading der Tasmota firmware nicht richtig deuten das ist flaube ich das problem
Wohnzimmer_Decke outgoing publish sent ON OFF
soe siehts im web if aus also weiss er im grunde nicht ob an oder aus ist kann das sein !?!?
mosquito ausgabe
Client mosqsub/1275-raspberryp received PUBLISH (d0, q0, r0, m0, 'stat/wohnzimmer_decke/ERGEBNIS', ... (15 bytes))
stat/wohnzimmer_decke/ERGEBNIS {"POWER":"OFF"}
Client mosqsub/1275-raspberryp received PUBLISH (d0, q0, r0, m0, 'stat/wohnzimmer_decke/POWER', ... (3 bytes))
stat/wohnzimmer_decke/POWER OFF
Client mosqsub/1275-raspberryp received PUBLISH (d0, q0, r0, m0, 'tele/Schlafzimmer_Decke/STATUS', ... (141 bytes))
tele/Schlafzimmer_Decke/STATUS {"Zeit":"2017-11-30T16:15:14","Laufzeit":3,"VCC":3.159,"POWER":"OFF","WLAN":{"AP":1,"SSID":"CyCleMat","RSSI":82,"APMac":"C8:0E:14:A1:35:9F"}}
Client mosqsub/1275-raspberryp received PUBLISH (d0, q0, r0, m0, 'stat/wohnzimmer_decke/ERGEBNIS', ... (14 bytes))
stat/wohnzimmer_decke/ERGEBNIS {"POWER":"ON"}
Client mosqsub/1275-raspberryp received PUBLISH (d0, q0, r0, m0, 'stat/wohnzimmer_decke/POWER', ... (2 bytes))
stat/wohnzimmer_decke/POWER ON
Was genau geht nicht. Der set Befehl oder das triggern?
lasse ich das weg geht das licht direkt aus
attr Wohnzimmer_Decke_Autooff wait 30
habe ich es drinne passiert nix licht bleibt an
wait 0:30
sooo
attr Wohnzimmer_Decke_Autooff wait 0:30
ist drinne sobald ich das licht das erste mal einschalte geht es sofort wieder aus schalte ich es wieder ein bleibt es an
Vielleicht eine doofe Frage: Aber liefert "Wohnzimmer_Decke" vielleicht regelmäßig ON-Events?
Gib mal bitte dein aktuelles DOIF her. Also list Devicename
Internals:
DEF ([08:00-19:00] and [Wohnzimmer_Decke:"ON"]) (set Wohnzimmer_Decke OFF)
NAME Wohnzimmer_Decke_Autooff
NR 43
NTFY_ORDER 50-Wohnzimmer_Decke_Autooff
STATE cmd_2
TYPE DOIF
READINGS:
2017-11-30 17:10:45 Device Wohnzimmer_Decke
2017-11-30 17:11:15 cmd 2
2017-11-30 17:11:15 cmd_event Wohnzimmer_Decke
2017-11-30 17:11:15 cmd_nr 2
2017-11-30 17:10:45 e_Wohnzimmer_Decke_events transmission-state: outgoing publish sent
2017-11-30 17:11:15 state cmd_2
2017-11-30 17:02:53 timer_01_c01 01.12.2017 08:00:00
2017-11-30 17:02:53 timer_02_c01 30.11.2017 19:00:00
2017-11-30 17:11:15 wait_timer no timer
condition:
0 DOIF_time($hash,0,1,$wday,$hms) and EventDoIf('Wohnzimmer_Decke',$hash,'ON',1)
days:
devices:
0 Wohnzimmer_Decke
all Wohnzimmer_Decke
do:
0:
0 set Wohnzimmer_Decke OFF
1:
helper:
event transmission-state: outgoing publish sent
globalinit 1
last_timer 2
sleepdevice Wohnzimmer_Decke
sleepsubtimer -1
sleeptimer -1
timerdev Wohnzimmer_Decke
timerevent transmission-state: outgoing publish sent
triggerDev Wohnzimmer_Decke
timerevents:
transmission-state: outgoing publish sent
timereventsState:
transmission-state: outgoing publish sent
triggerEvents:
transmission-state: outgoing publish sent
triggerEventsState:
transmission-state: outgoing publish sent
internals:
interval:
0 -1
1 0
itimer:
localtime:
0 1512111600
1 1512064800
readings:
realtime:
0 08:00:00
1 19:00:00
regexp:
0:
all:
state:
STATE:
time:
0 08:00:00
1 19:00:00
timeCond:
0 0
1 0
timer:
0 0
1 0
timers:
0 0 1
trigger:
all Wohnzimmer_Decke
triggertime:
1512064800:
localtime 1512064800
hash:
1512111600:
localtime 1512111600
hash:
Attributes:
room Wohnzimmer
wait 0:30
Ok. Die 30 wieder rein. Also kein 0:30 sondern nur 30. Und dann musst du noch ein Attribut so always machen. Dann sollte es gehen.
Im Reading sieht man ob der Timer an fängt, also getriggert wurde
define nachtLicht notify <lampe>:on { my @time = localtime(); CommandSet(undef,"<lampe> on-for-timer 1800") if (($time[2] * 3600) + ($time[1] * 60) + $time[0]) <= 18000 }
<lampe> ist durch den deviceName der Lampe zu ersetzen. Beim Einschalten wird die Lampe auf 30 Minuten "umgeschaltet" wenn es nach Mitternacht und nicht nach 5 Uhr morgens ist.
Also Damit Funktioniert es aus Fhem raus scheinbar muss ich noch mqtt richtig auswerten.
define Wohnzimmer_Decke MQTT_DEVICE
attr Wohnzimmer_Decke IODev myBroker
attr Wohnzimmer_Decke devStateIcon ON:rc_GREEN:OFF OFF:rc_RED:ON
attr Wohnzimmer_Decke icon hue_filled_br30
attr Wohnzimmer_Decke publishSet ON OFF cmnd/wohnzimmer_decke/POWER1
attr Wohnzimmer_Decke room Wohnzimmer
attr Wohnzimmer_Decke stateFormat transmission-state
attr Wohnzimmer_Decke subscribeReading_Licht stat/wohnzimmer_decke/POWER1
attr Wohnzimmer_Decke subscribeReading_Sensor tele/wohnzimmer_decke/SENSOR
attr Wohnzimmer_Decke subscribeReading_Status stat/wohnzimmer_decke/STATUS
attr Wohnzimmer_Decke webCmd ON:OFF
define Wohnzimmer_Decke_Autooff DOIF ([19:00-23:59] and [Wohnzimmer_Decke:"ON"]) (set Wohnzimmer_Decke OFF)
attr Wohnzimmer_Decke_Autooff room Wohnzimmer
attr Wohnzimmer_Decke_Autooff wait 30
attr Wohnzimmer_Decke_Autooff do always