ich finde expire ist gerade für anfänger extrem gut geeignet. kein timer reshedule o.ä. ist mehr notwendig. hier fehlt nur ein wenig das grundverständniss.
im grunde braucht man ja nur expire items und eine copy/paste synchronisierungsrule dazu.
auch bei komplexen rules (ich hab sowas im bad/klo/küche in verbindung mit rules) kann man da schon recht gut alles umsetzen.
Beiträge von horschte
-
-
Ich mache mir also für jeden expire Zeiraum ein item
Timer 1 5Minuten
Timer 2 3 Stundenrichtig. nenne es einfach ein timer item. diese items kannst du mit einem switch verknüpfen durch so eine synchronisierungsrule wie oben geschrieben. du kannst natürlich mehrere timer mit einem gerät verknüpfen. brauchst dann aber natürlich auch wieder die synchronisierung.
Nee doch nicht verstanden. Woher weiß das expire für wlches item es gilt??
durch die synchronisierungsrule funktioniert das. da sieht man doch drin, dass dein sonoff durch den timer geschaltet wird. du sprichst irgendwo anders das timer item an. das timeritem schaltet dann bspw den sonoff.
beispiel 2 timer
CodeSwitch sonoff26 "BlaBla" {channel="mqtt:topic:embedded-mqtt-broker:sonoff26:sonoff26"} Switch Timer1_sonoff26 "Timer1 Lampe" {expire="60s,command=OFF" } Switch Timer2_sonoff26 "Timer2 Lampe" {expire="5m,command=OFF" }
daher auch 2 benötigte synchronisierungen
Code
Alles anzeigenrule "timer1 schaltet sonoff26 synchron" when Item Timer1_sonoff26 changed then switch Timer1_sonoff26.state { case ON: { sonoff26.sendCommand(ON) } case OFF: { sonoff26.sendCommand(OFF) } } end rule "timer2 schaltet sonoff26 synchron" when Item Timer2_sonoff26 changed then switch Timer2_sonoff26.state { case ON: { sonoff26.sendCommand(ON) } case OFF: { sonoff26.sendCommand(OFF) } } end
jetzt hast du 2 unterschiedliche timer die deinen sonoff schalten. für deine aktivierungsrule in der du bspw deinen aqara bewegungsmelder nutzt, sendest du dann nur noch zu deinem gewünschten timer ein send command on. durch die synchronisierungsrules schaltet dein sonoff dann nach der gewünschten zeit ab.
in welche items Datei ich die expire schreibe, ist egal?
ich nutze für mein gesamtes system (und das ist nicht gerade klein) eine einzige items datei.
-
der expire schalter soll extra angelegt werden wie ich in meinem beitrag geschrieben hab. ansonsten würde sich dein sonoff immer wieder allein ausschalten und könnte nie dauerhaft oder unterschiedlich lang an bleiben.
CodeSwitch sonoff26 "BlaBla" {channel="mqtt:topic:embedded-mqtt-broker:sonoff26:sonoff26"} Switch Timer_sonoff26 "Timer Lampe" {expire="60s,command=OFF" }
und dazu die synchronisationsrule zwischen dem timer und deinem sonoff
Code
Alles anzeigenrule "timer schaltet sonoff26 synchron" when Item Timer_sonoff26 changed then switch Timer_sonoff26.state { case ON: { sonoff26.sendCommand(ON) } case OFF: { sonoff26.sendCommand(OFF) } } end
in deinen schaltrules sprichst du nun nicht mehr den sonoff direkt an sondern das expire item Timer_sonoff26
so kannst du mehrere expireitems anlegen die ja nichts anderes als timer sind. -
-
-
-
-
-
-
Irgendwie kriegen die LEDs nicht mit, wlchen State sie haben und gehen vielleicht auch deshalb nicht aus?
wenn du über paperui diesen channel nicht schalten kannst dann ist das item offenbar nicht korrekt konfiguriert, things oder das teil ist offline.
ausserdem, nicht bei allen color-channels kann auch ein dimmer genutzt werden. in dem fall musst du das item als coloritem anlegen und einen rgb wert in der rule senden. bspw ....sendCommand("0,0,100"). die 100 steht für den helligkeitswert.Das Anlegen von expire Items verstehe ich noch weniger.
Im Wiki sieht das so aus, als müsste ich das expire nur in den Befehl einfügen.Switch HallLight "HallLight [%s]" { zwave="3", expire="1h30m,command=OFF" }oder müsste ich dann für 1h31m ein anderes item anlegen?
bsp für einen primitiven timer mittels expire
Switch Lampe "Lampe" {cannel="xxxxxxxxxxxxxxxx" } <------ die normale steuerung des gewünschten items
Switch Timer_Lampe "Timer Lampe" {expire="60s,command=OFF" } <------ expire item was nach 60sek immer off schaltet, es sei denn es erhält zwischenzeitlich wieder einen on befehlmit der dieser rule werden lampe und timer synchron gehalten
Code
Alles anzeigenrule "timer lampe synchron" when Item Timer_Lampe changed then switch Timer_Lampe.state { case ON: { Lampe.sendCommand(ON) } case OFF: { Lampe.sendCommand(ON) } } end
wenn du nun bspw mit bewegungsmeldern, items oder was auch immer etwas triggern möchtest (wie in deinem beispiel gotobed), dann schaltest du nur noch "Timer_Lampe". dadurch hast du kein problem mit ablaufenden timern, doppelten timerstarts usw usw. da sich deine lampe synchron zum timer verhält. und dieser bleibt min 60sek an und wenn er erneut getriggert wird nochmals 60sek. das ist das reshedule system welches @BirdOfPrey bereits angesprochen hat. nur das mittels expire die rules deutlich vereinfacht werden
-
um die ganzen timerberechnungen nicht in rules machen zu müssen, kann man sich ebenso ein oder mehrere expire-items anlegen und integrieren. so ist die gesamte timersteuerung ausgelagert und die rules werden deutlich verkleinert.
das expire item kann so auch bequem mit weiteren items/rules verknüpft und somit timerwerte übergeben werden.
bspw expire item 60sek anlegen, eine oder mehrere lampen schalten per case rule synchron zum expire item. bewegungsmelder, switch o.ä. aktiviert das expire item....fertig. kein reshedule o.ä. notwendig. -
Ich hoffe mal sowas kann man heute mit einem Alexa Teil automatisieren.
ja geht natürlich problemlos. per kommando die entsprechende alexa auf volle lautstärke stellen und ein zufälliges (per spracheingabe kommando -> skillstart) bellen abspielen.
man könnte natürlich auch alle alexas unterschiedlich ansteuern. dann denkt der einbrecher da lebt ein hunderudel .
die "ankündigung" eines störenfrieds ist auf alle fälle schonmal bei allen alexas drin. gehäusedruck für den sensor ist gerade in arbeit. -
24.95€ für nen homematic klingelsensor.
das ganze wollte ich schon lange mal umsetzen, gestern kam er an.
eingepflegt wird das ganze in openhab, der bisherige lautsprecher wird abgeklemmt. künftige signalgeber werden wahrscheinlich das xiaomi gateway und diverse alexas.
nicht das ich mir so nur wenn jemand klingelt ein bild auf dem tv anzeigen oder bei abwesenheit per telegram schicken lassen kann....ne, ich kann an wochenenden und feiertagen automatisiert die klingel abstellen lassen, so das kein bittsteller mehr meinen mittagsschlaf stört.
-
Nein. Regex ist nicht Exec
-
Nur schade, dass der Alarm read-only ist.
ja da war ich auch recht traurig damals. zumal im oh forum sich die binding entwickler zuversichtlich geäußert haben, dass man irgendwann auch senden kann. wäre die ultimative alarmanlage.
-
wusste ich ja nicht, letzte meldung war über irgendwelche fehler.
-
als js profi wäre es sicher kein Problem alle abfragen für Millionen bekannte channels zu vereinigen. Ich hab mit js zumindest nichts zu tun. Wir kennen uns nur flüchtig
btw....hab gerade die aqara rauchmelder eingebunden. obwohl sie nicht auf der kompatiblitätsliste für z2t stehen werden diverse channels fertig ausgegeben. -
ich halte js transformation da wirklich für keine gute idee. da müsstest du für jeden unterschiedlichen channel was anlegen. die von mir gepostete lösung funktioniert, selbst getestet mit nem aqara melder.
-
Also, noch einmal ganz förmlich:
Entschuldigung!alles gut....du brauchst dich nicht entschuldigen. mir gehts nur darum, dass ich und bestimmt andere auch keine lust haben zeit für sachen zu investieren, die letztendlich nicht umgesetzt werden. das ist alles.
So viele Sachen habe ich doch gar nicht angefangen und nicht zu Ende gebracht. Oder?
ich meinte das hier bspw TV Headend Server Status in Sitemap
P.S. was machst Du eigentlich beruflich??
Hast Du in Richtung IT / Programmieren gelernt / studiert.ich mach was in der it branche, bin aber erst mit 30 quereinsteiger gewesen.
-
das ist das nächste projekt welches du abbrichst ohne genau zu analysieren warum was bei dir nicht geht. nicht böse gemeint aber das steigert in meinem fall nicht unbedingt die motivation bei irgendwelchen sachen zu helfen und lösungen zu deinen smarthome wünschen auszuarbeiten.