Just a small update to my status display. I am really to lazy to check the status display every day. To overcome this i added a rule that uses pushover to inform me once a day about the plant status. From my earlier post i have changed the PlantDataMap by adding name and location of the plant as well as chanhing the items names.
Here is the new rule
/ Values are taken from the Miflora app
val Map<String, Double> PlantDataMap = newHashMap (
"MO_Plant001_Moisture_Min" -> 15.0, "MO_Plant001_Moisture_Max" -> 60.0, "MO_Plant001_Conductivity_Min" -> 350.0, "MO_Plant001_Conductivity_Max" -> 2000.0, "MO_Plant001_Name" -> "Chilli", "MO_Plant001_Room" -> "Küche",
"MO_Plant002_Moisture_Min" -> 15.0, "MO_Plant002_Moisture_Max" -> 60.0, "MO_Plant002_Conductivity_Min" -> 350.0, "MO_Plant002_Conductivity_Max" -> 2000.0, "MO_Plant002_Name" -> "Olive", "MO_Plant002_Room" -> "Büro",
"MO_Plant003_Moisture_Min" -> 15.0, "MO_Plant003_Moisture_Max" -> 65.0, "MO_Plant003_Conductivity_Min" -> 350.0, "MO_Plant003_Conductivity_Max" -> 1000.0, "MO_Plant003_Name" -> "Zebramarante", "MO_Plant003_Room" -> "Schlafzimmer",
"MO_Plant004_Moisture_Min" -> 15.0, "MO_Plant004_Moisture_Max" -> 60.0, "MO_Plant004_Conductivity_Min" -> 350.0, "MO_Plant004_Conductivity_Max" -> 2000.0, "MO_Plant004_Name" -> "Zyperngras", "MO_Plant004_Room" -> "Schlafzimmer",
"MO_Plant005_Moisture_Min" -> 15.0, "MO_Plant005_Moisture_Max" -> 60.0, "MO_Plant005_Conductivity_Min" -> 350.0, "MO_Plant005_Conductivity_Max" -> 2000.0, "MO_Plant005_Name" -> "Goldtüpfelfarn", "MO_Plant005_Room" -> "Wohnzimmer",
"MO_Plant006_Moisture_Min" -> 15.0, "MO_Plant006_Moisture_Max" -> 60.0, "MO_Plant006_Conductivity_Min" -> 350.0, "MO_Plant006_Conductivity_Max" -> 1500.0, "MO_Plant006_Name" -> "Saumfarn", "MO_Plant006_Room" -> "Wohnzimmer",
"MO_Plant007_Moisture_Min" -> 15.0, "MO_Plant007_Moisture_Max" -> 60.0, "MO_Plant007_Conductivity_Min" -> 350.0, "MO_Plant007_Conductivity_Max" -> 2000.0, "MO_Plant007_Name" -> "Goldfruchtpalme", "MO_Plant007_Room" -> "Wohnzimmer"
)
//------------------------------------------------------------------------------------------------------------------------------------------------------------
//
// Rule: Every day at 16:00 create a pushover message and send it out
//
//------------------------------------------------------------------------------------------------------------------------------------------------------------
rule "Publish Plant Status"
when
Time cron "0 0 16 ? * *"
then
var String Message = "-> Pflanzenstatus <-\n"
PlantThings.members.forEach[ Plant |
var ActualStatus = PlantStatus.members.filter[ pm | pm.name == Plant.name+"_Status"].head.state as DecimalType
var ActualName = PlantDataMap.get(Plant.name + "_Name")
if ((ActualStatus == 1) || (ActualStatus == 2) || (ActualStatus == 3) || (ActualStatus == 6) || (ActualStatus == 9)) {
Message = Message + ActualName + " -> " + transform("MAP", "plantstatus.map", ActualStatus.toString) + "\n"
}
]
Message = Message + "-> Ende <-"
pushover(Message, "Disorganiser")
pushover(Message, "Froschzilla")
end
pushover could be replaced by any other service.
Things todo:
1.) Rework the status message to be more informative - Suggestions are welcome
2.) Sort plants by room to optimize the care route - Help is welcome, because at the moment if have no idea
That’s it for today
Thomas