thanks guys for the help so far. the lights are now turning on but im not getting a notification to say that the timer has been reset.
this is what I have now.
var Timer KitchenLightsTimer = null
val int timeoutMinutesMorning = 60 // choose an appropriate value
val int timeoutMinutesDay = 60 // choose an appropriate value
val int timeoutMinutesAfternoon = 60 // choose an appropriate value
val int timeoutMinutesEvening = 60 // choose an appropriate value
val int timeoutMinutesNight = 60 // choose an appropriate value
val int timeoutMinutesBed = 5 // choose an appropriate value
rule "Kitchen_Motion_Timer ON"
when
Item Lounge_Motion received update ON
then
Kitchen_Motion_Timer.sendCommand(ON)
end
rule "Kitchen_Motion_Timer OFF"
when
Item Kitchen_Motion_Timer received update OFF
then
sendCommand(Kitchen_Light, "0")
sendCommand(Kitchen_PendantLightLeft, "82,55,0")
sendCommand(Kitchen_PendantLightCenter, "82,55,0")
sendCommand(Kitchen_PendantLightRight, "82,55,0")
postUpdate(All_Lights, OFF)
end
rule "Motion Timer in the Kitchen"
when
Item Kitchen_Motion_Timer received update ON
then
if((KitchenLightsTimer === null) && (vTimeOfDay.state == "MORNING")) {
sendNotification(“**********”, "Kitchen Light Timer Has Been Created!!")
KitchenLightsTimer = createTimer(now.plusMinutes(timeoutMinutesMorning ), [|
Kitchen_Motion_Timer.sendCommand(OFF)
KitchenLightsTimer = null
])
}
else {
if(vTimeOfDay.state == "MORNING") {
KitchenLightsTimer.reschedule(now.plusMinutes(timeoutMinutesMorning ))
sendNotification(“**********”, "Kitchen Light Timer Has Been Reset!!")
}
}
if((KitchenLightsTimer === null) && (vTimeOfDay.state == "DAY")) {
sendNotification(“**********”, "Kitchen Light Timer Has Been Created!!")
KitchenLightsTimer = createTimer(now.plusMinutes(timeoutMinutesDay ), [|
Kitchen_Motion_Timer.sendCommand(OFF)
KitchenLightsTimer = null
])
}
else {
if(vTimeOfDay.state == "DAY") {
KitchenLightsTimer.reschedule(now.plusMinutes(timeoutMinutesDay ))
sendNotification(“**********”, "Kitchen Light Timer Has Been Reset!!")
}
}
if((KitchenLightsTimer === null) && (vTimeOfDay.state == "AFTERNOON")) {
sendNotification(“**********”, "Kitchen Light Timer Has Been Created!!")
KitchenLightsTimer = createTimer(now.plusMinutes(timeoutMinutesAfternoon ), [|
Kitchen_Motion_Timer.sendCommand(OFF)
KitchenLightsTimer = null
])
}
else {
if(vTimeOfDay.state == "AFTERNOOON") {
KitchenLightsTimer.reschedule(now.plusMinutes(timeoutMinutesAfternoon ))
sendNotification(“**********”, "Kitchen Light Timer Has Been Reset!!")
}
}
if((KitchenLightsTimer === null) && (vTimeOfDay.state == "EVENING")) {
sendNotification(“**********”, "Kitchen Light Timer Has Been Created!!")
KitchenLightsTimer = createTimer(now.plusMinutes(timeoutMinutesEvening ), [|
Kitchen_Motion_Timer.sendCommand(OFF)
KitchenLightsTimer = null
])
}
else {
if(vTimeOfDay.state == "EVENING") {
KitchenLightsTimer.reschedule(now.plusMinutes(timeoutMinutesEvening ))
sendNotification(“**********”, "Kitchen Light Timer Has Been Reset!!")
}
}
if((KitchenLightsTimer === null) && (vTimeOfDay.state == "NIGHT")) {
sendNotification(“**********”, "Kitchen Light Timer Has Been Created!!")
KitchenLightsTimer = createTimer(now.plusMinutes(timeoutMinutesNight ), [|
Kitchen_Motion_Timer.sendCommand(OFF)
KitchenLightsTimer = null
])
}
else {
if(vTimeOfDay.state == "NIGHT") {
KitchenLightsTimer.reschedule(now.plusMinutes(timeoutMinutesNight ))
sendNotification(“**********”, "Kitchen Light Timer Has Been Reset!!")
}
}
if((KitchenLightsTimer === null) && (vTimeOfDay.state == "BED")) {
sendNotification(“**********”, "Kitchen Light Timer Has Been Created!!")
KitchenLightsTimer = createTimer(now.plusMinutes(timeoutMinutesBed ), [|
Kitchen_Motion_Timer.sendCommand(OFF)
KitchenLightsTimer = null
])
}
else {
if(vTimeOfDay.state == "BED") {
KitchenLightsTimer.reschedule(now.plusMinutes(timeoutMinutesBED ))
sendNotification(“**********”, "Kitchen Light Timer Has Been Reset!!")
}
}
end
rule "Motion Sensor Kitchen Lights"
when
Item Kitchen_Motion_Timer received command ON
then
if ((Someones_Home.state == ON) && (vTimeOfDay.state == "MORNING"))
{
sendCommand(Kitchen_Light, "100")
sendCommand(Kitchen_PendantLightLeft, "82,55,100")
sendCommand(Kitchen_PendantLightCenter, "82,55,100")
sendCommand(Kitchen_PendantLightRight, "82,55,100")
postUpdate(All_Lights, ON)
}
if ((Someones_Home.state == ON) && (vTimeOfDay.state == "DAY"))
{
sendCommand(Kitchen_Light, "100")
sendCommand(Kitchen_PendantLightLeft, "82,55,100")
sendCommand(Kitchen_PendantLightCenter, "82,55,100")
sendCommand(Kitchen_PendantLightRight, "82,55,100")
postUpdate(All_Lights, ON)
}
if ((Someones_Home.state == ON) && (vTimeOfDay.state == "AFTERNOON"))
{
sendCommand(Kitchen_Light, "100")
sendCommand(Kitchen_PendantLightLeft, "82,55,100")
sendCommand(Kitchen_PendantLightCenter, "82,55,100")
sendCommand(Kitchen_PendantLightRight, "82,55,100")
postUpdate(All_Lights, ON)
}
if ((Someones_Home.state == ON) && (vTimeOfDay.state == "EVENING"))
{
sendCommand(Kitchen_Light, "100")
sendCommand(Kitchen_PendantLightLeft, "82,55,100")
sendCommand(Kitchen_PendantLightCenter, "82,55,100")
sendCommand(Kitchen_PendantLightRight, "82,55,100")
postUpdate(All_Lights, ON)
}
if ((Someones_Home.state == ON) && (vTimeOfDay.state == "NIGHT"))
{
sendCommand(Kitchen_Light, "100")
sendCommand(Kitchen_PendantLightLeft, "82,55,100")
sendCommand(Kitchen_PendantLightCenter, "82,55,100")
sendCommand(Kitchen_PendantLightRight, "82,55,100")
postUpdate(All_Lights, ON)
}
if ((Someones_Home.state == ON) && (vTimeOfDay.state == "BED"))
{
sendCommand(Kitchen_PendantLightCenter, "82,55,5")
postUpdate(All_Lights, ON)
}
end