Hallo,
ich beginne gerade mit OpenHab.
Meine Items ist noch sehr übersichtlich
Ebenso die Rules
Auch wenn ich jetzt keine Switch betätige werden in der Events.log jede Minute Events geloggt.
Warum ?. Kann mir das jemand erklären.
Mein Problem ist, das meine Rule für einen Taster einwandfrei funktioniert, ausser wenn zum gleichen Zeitpunkt der Event läuft.
import org.openhab.core.library.types.*
import org.openhab.core.persistence.*
import org.openhab.model.script.actions.*
import java.util.Date
import java.text.SimpleDateFormat
rule SystemStart
when
System started
then
sendCommand(LED_Blue, OFF)
sendCommand(LED_Green, OFF)
sendCommand(LED_Red, OFF)
end
//Schalter
/*
rule Switch_1
when
Item Switch_1 changed
then
if (Switch_1.state==ON) {
sendCommand(LED_Green, ON)
} else {
sendCommand(LED_Green, OFF
)
}
end
*/
//Taster
rule Contact_1
when
Item Contact_1 changed
then
logInfo("Taster.rules", "Impuls" )
if (Contact_1.state==OFF) {
if (LED_Blue.state==ON) {
sendCommand(LED_Blue, OFF)
logInfo("Taster.rules", "Blau Aus")
} else {
sendCommand(LED_Blue, ON)
logInfo("Taster.rules", "Blau an")
}
}
end
//Cron
/*
rule Contact_2
when
Time cron "0/1 * * * * ?"
then
if (LED_Red.state==ON) {
sendCommand(LED_Red, OFF)
} else {
sendCommand(LED_Red, ON)
}
end
Vielen dank
Jörg
ich beginne gerade mit OpenHab.
Meine Items ist noch sehr übersichtlich
Code:
Group JN_FirstFloor "Flur Oben" <kitchen> Switch Light_TF_Test "Testlampe" (JN_FirstFloor) {tinkerforge="name=rs_test" } Switch Switch_1 "Schalter" {tinkerforge="uid=gpy, subid=ina1"} Switch Contact_1 "Taster" {tinkerforge="uid=gpy, subid=ina2"} //Contact ina0 "ina0 [Schalterl ist %s]" {tinkerforge="uid=gpy, subid=ina1"} Switch LED_Green "LED_Green" {tinkerforge="name=io16outb0"} Switch LED_Blue "LED_Blue" {tinkerforge="name=io16outb1"} Switch LED_Red "LED_Red" {tinkerforge="name=io16outb2"}
Code:
import org.openhab.core.library.types.* import org.openhab.core.persistence.* import org.openhab.model.script.actions.* import java.util.Date import java.text.SimpleDateFormat rule SystemStart when System started then sendCommand(LED_Blue, OFF) sendCommand(LED_Green, OFF) sendCommand(LED_Red, OFF) end //Taster rule Contact_1 when Item Contact_1 changed then logInfo("Taster.rules", "Impuls" ) if (Contact_1.state==OFF) { if (LED_Blue.state==ON) { sendCommand(LED_Blue, OFF) logInfo("Taster.rules", "Blau Aus") } else { sendCommand(LED_Blue, ON) logInfo("Taster.rules", "Blau an") } } end
Warum ?. Kann mir das jemand erklären.
Mein Problem ist, das meine Rule für einen Taster einwandfrei funktioniert, ausser wenn zum gleichen Zeitpunkt der Event läuft.
import org.openhab.core.library.types.*
import org.openhab.core.persistence.*
import org.openhab.model.script.actions.*
import java.util.Date
import java.text.SimpleDateFormat
rule SystemStart
when
System started
then
sendCommand(LED_Blue, OFF)
sendCommand(LED_Green, OFF)
sendCommand(LED_Red, OFF)
end
//Schalter
/*
rule Switch_1
when
Item Switch_1 changed
then
if (Switch_1.state==ON) {
sendCommand(LED_Green, ON)
} else {
sendCommand(LED_Green, OFF
)
}
end
*/
//Taster
rule Contact_1
when
Item Contact_1 changed
then
logInfo("Taster.rules", "Impuls" )
if (Contact_1.state==OFF) {
if (LED_Blue.state==ON) {
sendCommand(LED_Blue, OFF)
logInfo("Taster.rules", "Blau Aus")
} else {
sendCommand(LED_Blue, ON)
logInfo("Taster.rules", "Blau an")
}
}
end
//Cron
/*
rule Contact_2
when
Time cron "0/1 * * * * ?"
then
if (LED_Red.state==ON) {
sendCommand(LED_Red, OFF)
} else {
sendCommand(LED_Red, ON)
}
end
Vielen dank
Jörg
Kommentar