Regeln mit Alexa

Einrichtung der openHAB Umgebung und allgemeine Konfigurationsthemen.

Moderatoren: seppy, udo1toni

MrCrashy
Beiträge: 113
Registriert: 2. Jan 2021 09:53
Answers: 0

Re: Regeln mit Alexa

Beitrag von MrCrashy »

Würde das mit so einer Rule funktionieren?

Code: Alles auswählen

rule "Systemstart Schalter"
when
	//system start
then
	Cinema_Nigh.sendCommand(OFF)
	// weitere Schalter
Wenn ja, ist es sinnvoll jeden schalter einzeln da hin zu schreiben? Oder kann man die Schalter in eine Gruppe packen, so dass man nur die Gruppe da hinein schreiben muss?
Und: Wie lautet der Befehl bei "when"?

Darkwin101
Beiträge: 424
Registriert: 6. Mär 2019 11:19
Answers: 14

Re: Regeln mit Alexa

Beitrag von Darkwin101 »

Der Befehl bei when wäre System started
Es würde Beides gehe also entweder als Gruppe oder einzeln.


Ich würde zur mapdb/rrdj4 Persistent raten das ist eigentlich das einfachste

MrCrashy
Beiträge: 113
Registriert: 2. Jan 2021 09:53
Answers: 0

Re: Regeln mit Alexa

Beitrag von MrCrashy »

Ok vielen Dank, ich werde mir das später mal dazu durchlesen.

Ich habe noch eine Frage, diese passt zwar nicht zu dem Post, aber vielleicht kannst du mir diese auch beantworten.
Derzeit habe ich eine Stehlampe im Kinderzimmer. Diese wird über "Time cron" Ein- und Ausgeschaltet. Ebenfalls habe ich noch die Funktion eingebaut, dass die Lampe nicht automatisch einschaltet, wenn sie vorher manuell ausgeschaltet wurde. Das funktioniert auch tadellos.
So sieht die Rule aus:

Code: Alles auswählen

rule "Stehlampe automatisch an"
when 
    Time cron "0 15 19 ? * * *"
then 
    if(manStehlampe.state == OFF){
        logInfo("Beleuchtung", "Stehlampe wurde manuell ausgeschaltet, kein automatischer Einschaltvorgang!")
    }
    else if (manStehlampe.state == ON){
        gHUE_Lamp_Childsroom.sendCommand(ON)
        logInfo("Beleuchtung", "Stehlampe wurde automatisch eingeschaltet.")
    }
end 

rule "Stehlampe automatisch aus"
when
    Time cron "0 30 22 ? * * *"
then 
    gHUE_Lamp_Childsroom.sendCommand(OFF)
    logInfo("Beleuchtung", "Die Stehlampe im Kinderzimmer wurde automatisch ausgeschaltet.")
end 
Jetzt möchte ich aber den Einschalttimer eventuell mal ändern und möchte dafür nicht immer die "Time cron" ändern. Jetzt müsste ich ja über HabPanel eine Uhrzeit eingeben können und diese dann anstelle der Time cron einsetzten können. Ist das möglich? Oder sollte ich besser mit einem Schalter und Mapping einfach ein paar Uhrzeiten vordefinieren?

Darkwin101
Beiträge: 424
Registriert: 6. Mär 2019 11:19
Answers: 14

Re: Regeln mit Alexa

Beitrag von Darkwin101 »

Oh das ist nicht ganz mein Kaliber dabei sollte dir jemand anderes Helfen soweit bin ich nicht in Openhab, drin, da auch eher Anfänger und es ist auch nicht so einfach umzusetzen soweit ich weiß.

Benutzeravatar
udo1toni
Beiträge: 15265
Registriert: 11. Apr 2018 18:05
Answers: 245
Wohnort: Darmstadt

Re: Regeln mit Alexa

Beitrag von udo1toni »

MrCrashy hat geschrieben: 3. Jan 2021 14:05 Ok vielen Dank, ich werde mir das später mal dazu durchlesen.

Ich habe noch eine Frage, diese passt zwar nicht zu dem Post, aber vielleicht kannst du mir diese auch beantworten.
Derzeit habe ich eine Stehlampe im Kinderzimmer. Diese wird über "Time cron" Ein- und Ausgeschaltet. Ebenfalls habe ich noch die Funktion eingebaut, dass die Lampe nicht automatisch einschaltet, wenn sie vorher manuell ausgeschaltet wurde. Das funktioniert auch tadellos.
So sieht die Rule aus:

Code: Alles auswählen

rule "Stehlampe automatisch an"
when 
    Time cron "0 15 19 ? * * *"
then 
    if(manStehlampe.state == OFF){
        logInfo("Beleuchtung", "Stehlampe wurde manuell ausgeschaltet, kein automatischer Einschaltvorgang!")
    }
    else if (manStehlampe.state == ON){
        gHUE_Lamp_Childsroom.sendCommand(ON)
        logInfo("Beleuchtung", "Stehlampe wurde automatisch eingeschaltet.")
    }
end 

rule "Stehlampe automatisch aus"
when
    Time cron "0 30 22 ? * * *"
then 
    gHUE_Lamp_Childsroom.sendCommand(OFF)
    logInfo("Beleuchtung", "Die Stehlampe im Kinderzimmer wurde automatisch ausgeschaltet.")
end 
Jetzt möchte ich aber den Einschalttimer eventuell mal ändern und möchte dafür nicht immer die "Time cron" ändern. Jetzt müsste ich ja über HabPanel eine Uhrzeit eingeben können und diese dann anstelle der Time cron einsetzten können. Ist das möglich? Oder sollte ich besser mit einem Schalter und Mapping einfach ein paar Uhrzeiten vordefinieren?
Es kommt halt drauf an, wie leidensfähig Du bist :) Die Philosophie von openHAB ist, zu automatisieren, da passt ein von Hand eingestellter Timer nicht ins Konzept. Konsequenterweise gibt es erst gar keine Elemente dafür. Du kannst die fehlenden Elemente "irgendwie" nachbauen und damit z.B. Minuten und Stunden in zwei Items einstellen, andererseits wirst Du ja gar nicht 24 * 60 Möglichkeiten brauchen. Die Variante mit einem Item, welches eine begrenze Menge an Optionen zur Verfügung stellt, wäre da mein Favorit. Über das Selection Widget kann man bequem eine große Menge verschiedener Schaltzeiten auswählen. Einziger Wermutstropfen: Zeit und Anzeige werden komplett getrennt angelegt, man muss also beim Erstellen sehr sorgfältig arbeiten.
openHAB4.3.5 stable in einem Debian-Container (bookworm) (Proxmox 8.4.1, LXC), mit openHABian eingerichtet

MrCrashy
Beiträge: 113
Registriert: 2. Jan 2021 09:53
Answers: 0

Re: Regeln mit Alexa

Beitrag von MrCrashy »

Ok, danke dafür erstmal. So ähnlich könnte ich mir das auch vorstellen. Also dass ich z.B. einfach 5 vordefinierte Zeiten auswählen kann. Ich habe mir das Widget auch angeschaut, nur leider werde ich daraus nicht wirklich schlau.

Das Widget kann ja nur ein Item auswählen, also nur einen Schalter. Muss ich diesen dann so erstellen?

Code: Alles auswählen

Switch Lampe_TimerSwitch	"Zeitschaltuhr Lampe"	mappings=[1=22.45, 2=23.00 usw..]
Und dann eine Rule entsprechend erstellen? Oder wie kann man so etwas verwirklichen?

MrCrashy
Beiträge: 113
Registriert: 2. Jan 2021 09:53
Answers: 0

Re: Regeln mit Alexa

Beitrag von MrCrashy »

Bin schon die ganze Zeit am probieren, aber irgendwie will es nicht :roll:

Benutzeravatar
udo1toni
Beiträge: 15265
Registriert: 11. Apr 2018 18:05
Answers: 245
Wohnort: Darmstadt

Re: Regeln mit Alexa

Beitrag von udo1toni »

Das passt vorn und hinten nicht. In der Sitemap kannst Du das so definieren:

Code: Alles auswählen

Selection item=Lampe_TimerSwitch label="Zeitschaltuhr Lampe" mappings=[1="22:45", 2="23:00" usw..]
Wobei ich hier voraussetze, dass Lampe_TimerSwitch ein Number Item ist.
openHAB4.3.5 stable in einem Debian-Container (bookworm) (Proxmox 8.4.1, LXC), mit openHABian eingerichtet

Antworten