[ { "id": "Automate Heating - Turn Off Heating Based On Outside Temperature", "result": { "structured": "TRIGGER: When outdoor temperature sensor [sensor.ibs_th_10f3_temperature] changes state. CONDITIONS: heating override toggle [input_boolean.override_heating] is off AND (outdoor temperature sensor [sensor.ibs_th_10f3_temperature] temperature attribute is greater than or equal to heating automation setpoint [input_number.heating_automation_setpoint]) AND (current time is after heating automation start time [input_datetime.heating_automation_start_time] AND before heating automation end time [input_datetime.heating_automation_end_time] on any day of the week) AND home climate controller [climate.home] is in heat mode. ACTIONS: Set heating controller to 'Off' via evohome.set_system_mode service AND send a non-critical debug notification via Notification Handler Script [script.notification_handler] with message 'Heating turned off by climate control'.", "natural_language": { "trigger": "Whenever the outdoor temperature sensor [sensor.ibs_th_10f3_temperature] reports a new temperature reading.", "conditions": "The heating override toggle [input_boolean.override_heating] must be off, the measured outdoor temperature must be at or above the threshold set by the heating automation setpoint [input_number.heating_automation_setpoint], the current time must fall within the daily operating window defined by the heating automation start time [input_datetime.heating_automation_start_time] and end time [input_datetime.heating_automation_end_time], and the home climate controller [climate.home] must currently be set to heat mode.", "action": "Turns the heating system off by setting the controller to 'HeatingOff' mode and sends a debug notification confirming the action." }, "human_like": "Automatically turns off the home heating when it's warm enough outside and the system is running during scheduled hours.", "complexity": "medium" } }, { "id": "Automate Heating - Turn Off Heating Based On Proximity", "result": { "structured": "TRIGGER: When proximity sensor [proximity.home] reports a distance greater than 2 units for 1 minute OR When people home sensor [sensor.people_home] reports a state of 'False' for 1 minute. CONDITIONS: home climate controller [climate.home] is off AND proximity sensor [proximity.home] attribute 'dir_of_travel' is 'away_from' for 1 minute. ACTIONS: Call service 'evohome.set_system_mode' with mode 'HeatingOff' AND call script 'Notification Handler Script [script.notification_handler]' with a debug message 'Heating turned off by proximity'.", "natural_language": { "trigger": "The automation is triggered when the proximity sensor [proximity.home] detects that the nearest person is more than 2 units away for at least one minute, or when the people home sensor [sensor.people_home] indicates that no one is home for at least one minute.", "conditions": "The automation only proceeds if the home climate controller [climate.home] is already turned off, and if the proximity sensor [proximity.home] has been reporting a direction of travel as 'away from home' for at least one minute.", "action": "It turns off the heating system by setting the heating controller to 'HeatingOff' mode and sends a non-critical debug notification with the message 'Heating turned off by proximity'." }, "human_like": "Turns the heating off when everyone has left the area, confirmed by both a proximity sensor and a people sensor, and sends a notification.", "complexity": "medium" } }, { "id": "Automate Heating - Turn On Heating Based On Outside Temperature and Occupancy/Proximity", "result": { "structured": "TRIGGER: When outdoor temperature sensor [sensor.ibs_th_10f3_temperature] changes state. CONDITIONS: (outdoor temperature sensor [sensor.ibs_th_10f3_temperature] temperature attribute is less than or equal to heating automation setpoint [input_number.heating_automation_setpoint]) AND ((time is after heating automation end time [input_datetime.heating_automation_end_time] AND before heating automation start time [input_datetime.heating_automation_start_time]) AND (home climate controller [climate.home] is off) AND ((people home sensor [sensor.people_home] is True for 1 minute) OR (home climate controller [climate.home] is below 1))) OR ((home climate controller [climate.home] is off) AND (average household temperature sensor [sensor.average_household_temperature] is below heating automation minimum internal temperature [input_number.heating_automation_minimum_internal_temperature]) AND ((people home sensor [sensor.people_home] is True for 1 minute) OR (proximity sensor [proximity.home] is below 1))). ACTIONS: Reset the heating system via evohome.reset_system and send a debug notification via Notification Handler Script [script.notification_handler] with the message 'Heating turned on by climate control and/or proximity'.", "natural_language": { "trigger": "When the outdoor temperature sensor [sensor.ibs_th_10f3_temperature] reports a new temperature reading.", "conditions": "The automation checks if the outdoor temperature is at or below the set threshold defined by the heating automation setpoint [input_number.heating_automation_setpoint]. If that is true, it then checks one of two possible scenarios. The first scenario requires that the current time is within the operating window defined by the heating automation end time [input_datetime.heating_automation_end_time] and start time [input_datetime.heating_automation_start_time], that the home climate controller [climate.home] is currently off, and that occupancy is detected. Occupancy is confirmed if either the people home sensor [sensor.people_home] has been reporting 'True' for at least one minute, or if the home climate controller [climate.home] reports a value below 1 (acting as a proximity indicator). The second scenario requires that the home climate controller [climate.home] is off, that the average household temperature sensor [sensor.average_household_temperature] is below the minimum internal temperature threshold, and again that occupancy is detected via the same methods.", "action": "It resets the heating system and sends a non-critical debug notification stating that the heating was turned on by climate control and/or proximity detection." }, "human_like": "Turns on the heating when it's cold outside during operating hours or when the house is too cold inside, but only if someone is home.", "complexity": "high" } }, { "id": "Automate Heating - Turn On Heating On When Travelling Back To House", "result": { "structured": "TRIGGER: When proximity sensor [proximity.home] remains below 15 miles for 1 minute. CONDITIONS: (proximity sensor [proximity.home] direction of travel attribute is towards) AND ((The time is after heating automation end time [input_datetime.heating_automation_end_time] AND before heating automation start time [input_datetime.heating_automation_start_time] AND home climate controller [climate.home] is off) OR (home climate controller [climate.home] is off AND average household temperature sensor [sensor.average_household_temperature] is below heating automation minimum internal temperature [input_number.heating_automation_minimum_internal_temperature])). ACTIONS: Reset the heating system via evohome.reset_system AND send a debug notification via Notification Handler Script [script.notification_handler] with message 'Heating turned on by proximity'.", "natural_language": { "trigger": "When the proximity sensor [proximity.home] detects that the tracked object is within 15 miles of home and stays that way for at least one minute.", "conditions": "The proximity sensor [proximity.home] must be showing that the direction of travel is towards home. Additionally, either the current time is outside the scheduled heating automation window (after the end time and before the start time) and the home climate controller [climate.home] is off, or the home climate controller [climate.home] is off and the average household temperature sensor [sensor.average_household_temperature] is below the configured minimum temperature threshold.", "action": "Resets the heating system and sends a non-critical debug notification with the message 'Heating turned on by proximity'." }, "human_like": "Turns on the heating when you are travelling towards home and within 15 miles, provided the heating is off and it's either too cold inside or outside the normal heating schedule.", "complexity": "medium" } }, { "id": "Scene Example", "result": { "structured": "TRIGGER: When landing motion sensor [binary_sensor.landing_motion] changes from off to on OR When landing motion sensor [binary_sensor.landing_motion] changes from on to off AND remains off for 3 minutes. CONDITIONS: The sun is below the horizon (i.e., it is before sunrise OR after sunset). ACTIONS: IF the trigger is 'detected' (motion on), THEN create a dynamic scene named Before Scene [scene.before] by taking a snapshot of landing light [light.ikea_led2035g10_landing] AND turn on landing light scene [scene.landing_light]. IF the trigger is 'cleared' (motion off for 3 minutes), THEN turn on Before Scene [scene.before] AND delete Before Scene [scene.before].", "natural_language": { "trigger": "When the landing motion sensor [binary_sensor.landing_motion] first detects motion, or when it stops detecting motion and remains clear for three minutes.", "conditions": "The automation only runs if it is nighttime, meaning the sun is below the horizon (before sunrise or after sunset).", "action": "If motion is detected, the automation first saves the current state of the landing light [light.ikea_led2035g10_landing] into a temporary scene called 'Before Scene' [scene.before], and then activates a pre-defined lighting scene for the landing [scene.landing_light]. If motion has been absent for three minutes, the automation restores the light to its previously saved state by activating the 'Before Scene' [scene.before] and then deletes that temporary scene." }, "human_like": "Automatically turns on a specific light scene when motion is detected at night on the landing, and reverts the lights back to their original state after motion stops.", "complexity": "medium" } }, { "id": "'1642965174159'", "result": { "structured": "TRIGGER: When the time reaches kids bedtime start time [input_datetime.start_of_kids_bedtime]. CONDITIONS: None. ACTIONS: Turn on kids hue light [light.signify_netherlands_b_v_llc013_huelight] with brightness at 50% and color set to darkviolet.", "natural_language": { "trigger": "When the scheduled time set for kids bedtime start time [input_datetime.start_of_kids_bedtime] arrives.", "conditions": "There are no conditions that must be met.", "action": "Turns on the kids hue light [light.signify_netherlands_b_v_llc013_huelight] to a dim, dark violet color at 50% brightness." }, "human_like": "Turns on the kids' bedroom light to a dim purple color at their scheduled bedtime start time.", "complexity": "low" } }, { "id": "'1642965384035'", "result": { "structured": "TRIGGER: When the time reaches the value set in kids lights out time [input_datetime.kids_lights_out]. CONDITIONS: None. ACTIONS: Turn on kids hue light [light.signify_netherlands_b_v_llc013_huelight] with brightness set to 20% and color set to violet.", "natural_language": { "trigger": "At the specific time set in the kids lights out time [input_datetime.kids_lights_out].", "conditions": "There are no conditions that must be met.", "action": "Turns on the kids hue light [light.signify_netherlands_b_v_llc013_huelight] to a dim violet color, setting its brightness to 20%." }, "human_like": "Turns on a dim violet light in the kids' bedroom at their scheduled lights-out time.", "complexity": "low" } }, { "id": "'1643101162633'", "result": { "structured": "TRIGGER: When the time reaches kids lights off weekday time [input_datetime.kids_lights_off_weekday] OR when the time reaches kids lights off weekend time [input_datetime.kids_lights_off_weekend]. CONDITIONS: (workday sensor [binary_sensor.workday_sensor] is on) OR (the current time is after 08:55:00 on any day of the week). ACTIONS: Turn off all kids bedroom lights [light.all_kids_bedroom_lights].", "natural_language": { "trigger": "The automation triggers at a specific time set by the 'kids lights off weekday time' [input_datetime.kids_lights_off_weekday] or at the time set by the 'kids lights off weekend time' [input_datetime.kids_lights_off_weekend].", "conditions": "For the action to run, either the 'workday sensor' [binary_sensor.workday_sensor] must be on, indicating it's a workday, or the current time must be after 08:55:00, regardless of the day of the week.", "action": "Turns off all the lights in the kids bedroom, specifically the group 'all kids bedroom lights' [light.all_kids_bedroom_lights]." }, "human_like": "Automatically turns off the kids' bedroom lights at a scheduled time, with different times for weekdays and weekends, but only if it's a workday or after 8:55 AM.", "complexity": "medium" } }, { "id": "'1643165481081'", "result": { "structured": "TRIGGER: At the time specified by master bedroom lights off time [input_datetime.master_bedroom_lights_off_am]. CONDITIONS: None. ACTIONS: Turn off all master bedroom lights [light.all_master_bedroom_lights].", "natural_language": { "trigger": "At the specific daily time set in the master bedroom lights off time [input_datetime.master_bedroom_lights_off_am].", "conditions": "There are no conditions that must be met.", "action": "Turns off all the lights in the master bedroom, specifically the group named all master bedroom lights [light.all_master_bedroom_lights]." }, "human_like": "Automatically turns off all the master bedroom lights at a scheduled time each day.", "complexity": "low" } }, { "id": "'1643465573814'", "result": { "structured": "TRIGGER: When any battery sensor (excluding My Phone Battery Level [sensor.myphone_battery_level], My Phone Battery State [sensor.myphone_battery_state], Jessica iPhone Battery Level [sensor.jessicaiphone_battery_level], macOS Internal Battery Level [sensor.macos_internal_battery_level], and Jonathan's iPad Pro Battery Level [sensor.jonathans_ipad_pro_battery_level]) reports a battery level at or below 20%. CONDITIONS: None. ACTIONS: Run Notification Handler Script [script.notification_handler] with a non-critical notification message and create a persistent notification, both stating 'Low Battery detected on device {{sensors}}. Charge or replace the battery/batteries as soon as possible.'", "natural_language": { "trigger": "When any battery-powered device sensor (except for a few specified phones and tablets) reports its battery level has dropped to 20% or lower.", "conditions": "There are no additional conditions that must be met.", "action": "Sends a standard notification via the Notification Handler Script [script.notification_handler] and also creates a persistent notification in Home Assistant, both warning about the low battery on the specific device and advising to charge or replace the batteries." }, "human_like": "Sends a low battery alert for most devices in the home when their battery level falls to 20%, excluding specific personal phones and tablets.", "complexity": "low" } }, { "id": "'1643466860803'", "result": { "structured": "TRIGGER: At a manually set time of 06:45:00. CONDITIONS: workday sensor [binary_sensor.workday_sensor] is on. ACTIONS: Activate a sunrise effect on bed light [light.bed_light_huelight] over a duration of 45 minutes.", "natural_language": { "trigger": "The automation is scheduled to run at 6:45 AM.", "conditions": "It only runs if the workday sensor [binary_sensor.workday_sensor] indicates it is a workday.", "action": "It gradually turns on the bed light [light.bed_light_huelight] using a sunrise effect that lasts for 45 minutes." }, "human_like": "Gradually turns on the bedroom light at 6:45 AM on workdays to simulate a sunrise.", "complexity": "low" } }, { "id": "'1648915782728'", "result": { "structured": "TRIGGER: When the idle attribute of openhas comms cabinet [openhasp.comms_cabinet] is not 'off' AND remains so for 1 second. CONDITIONS: The current page of openhas comms cabinet [openhasp.comms_cabinet] is not '1' AND is not 'unavailable'. ACTIONS: Change the page of openhas comms cabinet [openhasp.comms_cabinet] to page 1.", "natural_language": { "trigger": "When the openhas comms cabinet [openhasp.comms_cabinet] is detected as not being idle (its idle attribute is not 'off') for at least one second.", "conditions": "The openhas comms cabinet [openhasp.comms_cabinet] must not already be on page '1', and it must be in an available state (not 'unavailable').", "action": "Sends a command to the openhas comms cabinet [openhasp.comms_cabinet] to switch its display back to page 1." }, "human_like": "Automatically returns the comms cabinet display to its main page (page 1) after a brief period of inactivity.", "complexity": "medium" } }, { "id": "'1648916510909'", "result": { "structured": "TRIGGER: When sun sensor [sun.sun] elevation attribute falls below -1. CONDITIONS: (The difference between current time and the state timestamp of uptime sensor [sensor.uptime_78] is greater than 2 minutes). ACTIONS: Publish MQTT message to topic 'hasp/plates/config/gui' with payload '{\"idle2\":120}'.", "natural_language": { "trigger": "When the sun's elevation, as reported by the sun sensor [sun.sun], drops below -1 degrees.", "conditions": "If more than 2 minutes have passed since the uptime sensor [sensor.uptime_78] last reported its state.", "action": "Sends an MQTT command to the topic 'hasp/plates/config/gui' to set an idle timeout value to 120 seconds." }, "human_like": "Activates a night mode setting for a display when the sun sets and the system has been running for a few minutes.", "complexity": "medium" } }, { "id": "'1648916529373'", "result": { "structured": "TRIGGER: When sun sensor [sun.sun] elevation attribute is above 1. CONDITIONS: (The difference between current time and the state timestamp of uptime sensor [sensor.uptime_78] is greater than 2 minutes). ACTIONS: Publish MQTT message to topic 'hasp/plates/config/gui' with payload '{\"idle2\":0}'.", "natural_language": { "trigger": "When the sun's elevation, as reported by the sun sensor [sun.sun], rises above 1 degree.", "conditions": "If the system has been running for more than 2 minutes since the last update from the uptime sensor [sensor.uptime_78].", "action": "Sends an MQTT command to the HASP device on the topic 'hasp/plates/config/gui' to set the 'idle2' parameter to 0, likely enabling a day mode display." }, "human_like": "Switches a wall panel to day mode when the sun is up and the system has been running for a few minutes.", "complexity": "medium" } }, { "id": "'1650279657325'", "result": { "structured": "TRIGGER: When people home sensor [sensor.people_home] changes from True to False AND remains False for 5 minutes. CONDITIONS: None. ACTIONS: Execute Notification Handler Script [script.notification_handler] with a debug message 'No occupancy detected for five minutes!' AND execute Away Mode Script [script.away_mode].", "natural_language": { "trigger": "When the people home sensor [sensor.people_home] changes from indicating someone is home (True) to indicating no one is home (False) and stays in that state for five minutes.", "conditions": "There are no additional conditions that must be met.", "action": "Sends a debug notification via the Notification Handler Script [script.notification_handler] with the message 'No occupancy detected for five minutes!' and then activates the Away Mode Script [script.away_mode]." }, "human_like": "Activates away mode and sends a notification when the home has been empty for five minutes.", "complexity": "low" } }, { "id": "'1650279683721'", "result": { "structured": "TRIGGER: When people home sensor [sensor.people_home] changes from 'False' to 'True' AND remains in state 'True' for 2 minutes. CONDITIONS: None. ACTIONS: Execute the following actions in parallel: 1. Run Notification Handler Script [script.notification_handler] with a non-critical, non-debug, non-system message 'Occupancy detected for two minutes!'. 2. Run Script 1682284192701 [script.1682284192701]. 3. Turn on dehumidifier switch 1 [switch.kitchendehumidifier]. 4. Turn on dehumidifier switch 2 [switch.diningroomdehumidifier].", "natural_language": { "trigger": "When the people home sensor [sensor.people_home] transitions from reporting no one home ('False') to reporting someone home ('True'), and this 'True' state persists for two full minutes.", "conditions": "There are no conditions that must be met; the automation runs immediately after the trigger criteria are satisfied.", "action": "The automation performs four actions simultaneously: it sends a notification via the Notification Handler Script [script.notification_handler] with the message 'Occupancy detected for two minutes!', it runs another script called Script 1682284192701 [script.1682284192701], and it turns on both the kitchen dehumidifier [switch.kitchendehumidifier] and the dining room dehumidifier [switch.diningroomdehumidifier]." }, "human_like": "When the home occupancy sensor detects someone has been home for two minutes, it sends a notification, runs a script, and turns on the kitchen and dining room dehumidifiers.", "complexity": "low" } }, { "id": "'1652822427159'", "result": { "structured": "TRIGGER: When Movement detected [binary_sensor.lumi_lumi_motion_agl04_iaszone] changes to on OR When bathroom door sensor [binary_sensor.lumi_lumi_sensor_magnet_aq2_opening] is opened. CONDITIONS: None. ACTIONS: IF current time is after bathroom night start time [input_datetime.bathroom_night_start] AND before bathroom night end time [input_datetime.bathroom_night_end] THEN activate bathroom night toilet and sink lights scene [scene.bathroom_night_toilet_and_sink_lights_only_warm_white_50_brightness], THEN wait until Movement detected [binary_sensor.lumi_lumi_motion_agl04_iaszone] remains off for 5 minutes, THEN activate reset bathroom lights lights off scene [scene.reset_bathroom_lights_lights_off], THEN stop automation. ELSE IF bathroom light level threshold sensor [sensor.bathroom_light_level_below_threshold] remains True for 1 minute THEN activate reset bathroom lights lights on scene [scene.reset_bathroom_lights_lights_on]. ELSE IF bathroom temporary override [input_boolean.bathroom_temporary_override] is off THEN activate reset bathroom lights lights off scene [scene.reset_bathroom_lights_lights_off]. ELSE turn off bathroom temporary override [input_boolean.bathroom_temporary_override]. THEN wait until Movement detected [binary_sensor.lumi_lumi_motion_agl04_iaszone] remains off for 5 minutes. THEN IF bathroom temporary override [input_boolean.bathroom_temporary_override] is off THEN activate reset bathroom lights lights off scene [scene.reset_bathroom_lights_lights_off]. ELSE turn off bathroom temporary override [input_boolean.bathroom_temporary_override]. THEN stop automation.", "natural_language": { "trigger": "The automation triggers when motion is detected by the bathroom motion sensor [binary_sensor.lumi_lumi_motion_agl04_iaszone] or when the bathroom door sensor [binary_sensor.lumi_lumi_sensor_magnet_aq2_opening] is opened.", "conditions": "There are no global conditions for this automation. The conditions are evaluated within the action sequence.", "action": "If the current time is within the defined night period (after bathroom night start time [input_datetime.bathroom_night_start] and before bathroom night end time [input_datetime.bathroom_night_end]), it turns on a specific night light scene [scene.bathroom_night_toilet_and_sink_lights_only_warm_white_50_brightness], waits for 5 minutes of no motion, then turns the lights off using a reset scene [scene.reset_bathroom_lights_lights_off] and stops. If it's not night time, it checks if the bathroom light level has been below a threshold [sensor.bathroom_light_level_below_threshold] for 1 minute. If so, it turns the lights on with a reset scene [scene.reset_bathroom_lights_lights_on]. If the light level is not low, it checks if a temporary override switch [input_boolean.bathroom_temporary_override] is off. If the override is off, it turns the lights off. If the override is on, it turns the override off. After this initial action, it waits for 5 minutes of no motion. Finally, it checks the override switch again: if it's off, it turns the lights off; if it's on, it turns the override off, and then the automation stops." }, "human_like": "This automation controls the bathroom lights, turning them on when motion or the door is detected, using different lighting scenes based on the time of day and ambient light level, and turning them off after a period of inactivity.", "complexity": "high" } }, { "id": "'1652902195686'", "result": { "structured": "TRIGGER: When bathroom occupancy sensor [binary_sensor.aqara_rtcgq13lm_occupancy] detects occupancy (turns on). CONDITIONS: bathroom light [light.bathroom] is unavailable AND remains in that state for 1 minute. ACTIONS: Execute Notification Handler Script [script.notification_handler] with a message stating 'Someone turned the bathroom light switch off again!'.", "natural_language": { "trigger": "When the bathroom occupancy sensor [binary_sensor.aqara_rtcgq13lm_occupancy] detects that someone is present in the bathroom.", "conditions": "If the bathroom light [light.bathroom] is reported as unavailable and has been in that state for at least one minute.", "action": "Sends a system notification via the Notification Handler Script [script.notification_handler] with the message: 'Someone turned the bathroom light switch off again!'." }, "human_like": "Sends a notification when the bathroom light is manually turned off at the switch while the room is occupied.", "complexity": "low" } }, { "id": "'1659437476662'", "result": { "structured": "TRIGGER: When bathroom temporary override [input_boolean.bathroom_temporary_override] changes state OR When bathroom override timer [timer.bathroom_override] starts OR When bathroom override timer [timer.bathroom_override] finishes OR When bathroom override timer [timer.bathroom_override] is cancelled. CONDITIONS: None. ACTIONS: First, if bathroom temporary override [input_boolean.bathroom_temporary_override] is on AND the trigger is NOT bathroom override timer [timer.bathroom_override] finishing OR bathroom override timer [timer.bathroom_override] being cancelled, THEN start bathroom override timer [timer.bathroom_override] for the number of minutes specified by bathroom override parameter [input_number.bathroom_override_parameter]. OTHERWISE, finish bathroom override timer [timer.bathroom_override]. Second, if the trigger IS bathroom override timer [timer.bathroom_override] finishing OR bathroom override timer [timer.bathroom_override] being cancelled, THEN turn off bathroom temporary override [input_boolean.bathroom_temporary_override] AND if bathroom occupancy sensor [binary_sensor.aqara_rtcgq13lm_occupancy] reports no motion, THEN activate reset bathroom lights lights off scene [scene.reset_bathroom_lights_lights_off].", "natural_language": { "trigger": "The automation runs when the bathroom temporary override [input_boolean.bathroom_temporary_override] is toggled, or when the bathroom override timer [timer.bathroom_override] starts, finishes, or is cancelled.", "conditions": "There are no conditions that must be met for the automation to run.", "action": "The automation performs two main checks. First, it checks if the override is turned on and the trigger was not the timer finishing or being cancelled. If so, it starts the timer for a duration set by the bathroom override parameter [input_number.bathroom_override_parameter]. Otherwise, it stops the timer. Second, if the trigger was the timer finishing or being cancelled, it turns off the override switch. Then, if the bathroom occupancy sensor [binary_sensor.aqara_rtcgq13lm_occupancy] detects no motion, it turns on a scene to reset the bathroom lights to off." }, "human_like": "Manages a timed override for the bathroom, starting a timer when enabled and turning off lights when the timer ends, provided no motion is detected.", "complexity": "medium" } }, { "id": "'1659550336880'", "result": { "structured": "TRIGGER: When start timer button [input_button.start_timer] changes state. CONDITIONS: None. ACTIONS: Start bathroom override timer [timer.bathroom_override].", "natural_language": { "trigger": "Whenever the start timer button [input_button.start_timer] is pressed or changes state.", "conditions": "There are no conditions that need to be met.", "action": "Starts the bathroom override timer [timer.bathroom_override]." }, "human_like": "Starts the bathroom timer when the start button is pressed.", "complexity": "low" } }, { "id": "'1659550360716'", "result": { "structured": "TRIGGER: When stop timer button [input_button.stop_times] changes state. CONDITIONS: None. ACTIONS: Cancel bathroom override timer [timer.bathroom_override].", "natural_language": { "trigger": "Whenever the stop timer button [input_button.stop_times] is pressed or changes its state.", "conditions": "There are no conditions that must be met.", "action": "Cancels the currently running bathroom override timer [timer.bathroom_override]." }, "human_like": "Stops the bathroom override timer when the designated stop button is pressed.", "complexity": "low" } }, { "id": "'1662203563568'", "result": { "structured": "TRIGGER: When bathroom door sensor [binary_sensor.lumi_lumi_sensor_magnet_aq2_opening] is opened. CONDITIONS: bathroom motion sensor occupancy [binary_sensor.lumi_lumi_motion_agl04_occupancy] is not occupied. ACTIONS: 1. Turn on bathroom door alerts [input_boolean.bathroom_door_alerts]. 2. If do not disturb sensor [binary_sensor.do_not_disturb] is off, wait 20 seconds, then if bathroom door sensor [binary_sensor.lumi_lumi_sensor_magnet_aq2_opening] is still open, announce 'Please close the bathroom door when done.' via landing echo dot [media_player.landing_echo_dot]. 3. Execute a sequence once: If bathroom door sensor [binary_sensor.lumi_lumi_sensor_magnet_aq2_opening] is open AND bathroom door alerts [input_boolean.bathroom_door_alerts] is on, wait 5 minutes, then if do not disturb sensor [binary_sensor.do_not_disturb] is off, announce 'The bathroom door is open.' via landing echo dot [media_player.landing_echo_dot]; then run Notification Handler Script [script.notification_handler] with message 'The bathroom door is open.'. If the condition fails, turn on bathroom door alerts [input_boolean.bathroom_door_alerts] and stop. 4. In parallel, repeat while bathroom door alerts [input_boolean.bathroom_door_alerts] is on AND bathroom door sensor [binary_sensor.lumi_lumi_sensor_magnet_aq2_opening] is open: Wait 5 minutes, then if bathroom door alerts [input_boolean.bathroom_door_alerts] is off AND bathroom door sensor [binary_sensor.lumi_lumi_sensor_magnet_aq2_opening] is open, if do not disturb sensor [binary_sensor.do_not_disturb] is off, announce the duration the door has been open via landing echo dot [media_player.landing_echo_dot]; then run Notification Handler Script [script.notification_handler] with a message stating the duration. If the condition fails, turn on bathroom door alerts [input_boolean.bathroom_door_alerts] and stop.", "natural_language": { "trigger": "When the bathroom door sensor [binary_sensor.lumi_lumi_sensor_magnet_aq2_opening] detects that the door has been opened.", "conditions": "The bathroom motion sensor occupancy [binary_sensor.lumi_lumi_motion_agl04_occupancy] must not detect any occupancy, meaning the bathroom is unoccupied.", "action": "First, the automation enables the bathroom door alerts [input_boolean.bathroom_door_alerts]. Then, if the do not disturb sensor [binary_sensor.do_not_disturb] is off, it waits 20 seconds. If the bathroom door is still open after this wait, it uses the landing echo dot [media_player.landing_echo_dot] to announce a reminder to close the door. Next, it runs a one-time check: if the door remains open and alerts are still enabled, it waits 5 minutes. After this wait, if do not disturb is off, it announces that the door is open via the Echo Dot and sends a mobile notification via the Notification Handler Script [script.notification_handler]. If the door was closed during this check, it re-enables alerts and stops. Finally, in a parallel process, it continuously checks while the door is open and alerts are enabled. Every 5 minutes, if alerts are disabled but the door is still open, and do not disturb is off, it announces how long the door has been open via the Echo Dot and sends a mobile notification with the duration. If the condition fails at any point, it re-enables alerts and stops." }, "human_like": "Reminds you to close the bathroom door when it's left open while the bathroom is unoccupied, using voice announcements and mobile notifications, with respect to do-not-disturb settings.", "complexity": "high" } }, { "id": "'1642844969174'", "result": { "structured": "TRIGGER: When the time reaches the value set in octopus go off peak start time [input_datetime.octopus_go_off_peak_start]. CONDITIONS: None. ACTIONS: Set octopus go selector [select.octopus_go] to 'Off Peak'. Set daily energy octopus selector [select.daily_energy_octopus] to 'offpeak'. Set Octopus Go [input_number.octopus_go] to the sum of the current value of octopus go off peak rate [input_number.octopus_go_off_peak] plus the electricity standing charge [input_number.electricity_standing_charge] divided by 24. Set washing machine selector [select.washing_machine], dishwasher selector [select.dishwasher], and tumble dryer selector [select.tumble_dryer] to 'Off Peak'.", "natural_language": { "trigger": "When the scheduled start time for the off-peak electricity period, as defined by octopus go off peak start time [input_datetime.octopus_go_off_peak_start], arrives.", "conditions": "There are no conditions for this automation.", "action": "The automation switches the household to off-peak electricity mode. It sets the main electricity tariff selector (octopus go selector [select.octopus_go]) and the daily energy tracker (daily energy octopus selector [select.daily_energy_octopus]) to their respective off-peak options. It also calculates and sets the current electricity rate by taking the off-peak rate (octopus go off peak rate [input_number.octopus_go_off_peak]) and adding a portion of the daily standing charge (electricity standing charge [input_number.electricity_standing_charge]). Finally, it sets the mode for major appliances—the washing machine selector [select.washing_machine], dishwasher selector [select.dishwasher], and tumble dryer selector [select.tumble_dryer]—to 'Off Peak' to indicate they can run during this cheaper period." }, "human_like": "Automatically switches the home to off-peak electricity mode at a scheduled time, updating the tariff, calculating the rate, and setting appliances accordingly.", "complexity": "medium" } }, { "id": "'1642845099522'", "result": { "structured": "TRIGGER: When the time reaches the value set in octopus go off peak end time [input_datetime.octopus_go_off_peak_end]. CONDITIONS: None. ACTIONS: Set octopus go selector [select.octopus_go] to 'Peak'. Set daily energy octopus selector [select.daily_energy_octopus] to 'peak'. Set Octopus Go [input_number.octopus_go] to the sum of the current value of octopus go peak rate [input_number.octopus_go_peak] and the daily electricity standing charge [input_number.electricity_standing_charge] divided by 24. Set washing machine selector [select.washing_machine], dishwasher selector [select.dishwasher], and tumble dryer selector [select.tumble_dryer] to 'Peak'.", "natural_language": { "trigger": "When the scheduled time set in the octopus go off peak end time [input_datetime.octopus_go_off_peak_end] arrives.", "conditions": "There are no conditions for this automation.", "action": "It changes the octopus go selector [select.octopus_go] to 'Peak', sets the daily energy octopus selector [select.daily_energy_octopus] to 'peak', updates the Octopus Go [input_number.octopus_go] cost input by adding a portion of the daily standing charge to the peak rate, and sets the mode for the washing machine, dishwasher, and tumble dryer selectors to 'Peak'." }, "human_like": "Switches the home's energy and appliance settings to 'Peak' mode when the off-peak electricity period ends.", "complexity": "medium" } }, { "id": "'1653477172590'", "result": { "structured": "TRIGGER: When the time is 00:00:00 (midnight). CONDITIONS: None. ACTIONS: Set e.on gas rate [input_number.e_on_gas] value to 0.098 AND Set gas standing charge [input_number.gas_standing_charge] value to 0.272.", "natural_language": { "trigger": "The automation runs every day at midnight.", "conditions": "There are no conditions that must be met.", "action": "It updates the e.on gas rate [input_number.e_on_gas] to 0.098 and the gas standing charge [input_number.gas_standing_charge] to 0.272." }, "human_like": "Updates the daily gas tariff and standing charge rates at midnight.", "complexity": "low" } }, { "id": "'1642204942069'", "result": { "structured": "TRIGGER: When kia eniro tire pressure sensor [binary_sensor.bv70vdl_tire_pressure_all] reports a problem. CONDITIONS: None. ACTIONS: Execute the Notification Handler Script [script.notification_handler] with a critical notification titled 'Kia eNiro' and message 'Low tyre pressure - please check the vehicle!'.", "natural_language": { "trigger": "When the vehicle's tire pressure sensor, kia eniro tire pressure sensor [binary_sensor.bv70vdl_tire_pressure_all], detects a problem.", "conditions": "There are no conditions that must be met.", "action": "Sends a critical mobile notification using the Notification Handler Script [script.notification_handler] with the title 'Kia eNiro' and the message 'Low tyre pressure - please check the vehicle!'." }, "human_like": "Sends a critical alert to your phone when low tire pressure is detected on the Kia eNiro.", "complexity": "low" } }, { "id": "'1642205140114'", "result": { "structured": "TRIGGER: When kia eniro ev battery plug sensor [binary_sensor.bv70vdl_ev_battery_plug] becomes plugged in. CONDITIONS: kia eniro ev battery charge sensor [binary_sensor.bv70vdl_ev_battery_charge] is not charging. ACTIONS: Run Notification Handler Script [script.notification_handler] with a critical notification titled 'Kia eNiro' and message 'The vehicle is plugged in but is not charging! Please check the vehicle!'.", "natural_language": { "trigger": "When the vehicle's charging cable is connected, as detected by the kia eniro ev battery plug sensor [binary_sensor.bv70vdl_ev_battery_plug].", "conditions": "The vehicle's battery is not actively charging, as reported by the kia eniro ev battery charge sensor [binary_sensor.bv70vdl_ev_battery_charge].", "action": "Sends a critical notification via the Notification Handler Script [script.notification_handler] with the title 'Kia eNiro' and a message alerting the user that the vehicle is plugged in but not charging." }, "human_like": "Sends an alert when the car is plugged into the charger but the battery is not actually charging.", "complexity": "low" } }, { "id": "'1660126561130'", "result": { "structured": "TRIGGER: When meaco fan power button [input_button.meaco_fan_power] changes state OR When meaco fan speed button [input_button.meaco_fan_speed] changes state OR When meaco fan speed 2 button [input_button.meaco_fan_speed_2] changes state OR When meaco fan eco mode button [input_button.meaco_fan_eco_mode] changes state OR When meaco fan horizontal oscillation button [input_button.meaco_fan_horizontal_oscillation] changes state OR When meaco fan vertical oscillation button [input_button.meaco_fan_vertical_oscillation] changes state OR When meaco fan light button [input_button.meaco_fan_light] changes state OR When meaco fan pre off button [input_button.meaco_fan_pre_off] changes state OR When meaco fan pre on button [input_button.meaco_fan_pre_on] changes state. CONDITIONS: None. ACTIONS: If triggered by meaco fan power button [input_button.meaco_fan_power], publish power IR code via MQTT; ELSE IF triggered by meaco fan speed button [input_button.meaco_fan_speed], publish speed IR code via MQTT; ELSE IF triggered by meaco fan speed 2 button [input_button.meaco_fan_speed_2], publish speed 2 IR code via MQTT; ELSE IF triggered by meaco fan eco mode button [input_button.meaco_fan_eco_mode], publish eco mode IR code via MQTT; ELSE IF triggered by meaco fan horizontal oscillation button [input_button.meaco_fan_horizontal_oscillation], publish horizontal oscillation IR code via MQTT; ELSE IF triggered by meaco fan vertical oscillation button [input_button.meaco_fan_vertical_oscillation], publish vertical oscillation IR code via MQTT; ELSE IF triggered by meaco fan light button [input_button.meaco_fan_light], publish light IR code via MQTT; ELSE IF triggered by meaco fan pre off button [input_button.meaco_fan_pre_off], publish pre off IR code via MQTT; ELSE IF triggered by meaco fan pre on button [input_button.meaco_fan_pre_on], publish pre on IR code via MQTT.", "natural_language": { "trigger": "When any of the Meaco fan remote control buttons are pressed, including the power, speed, speed 2, eco mode, horizontal oscillation, vertical oscillation, light, pre off, or pre on buttons.", "conditions": "There are no conditions; the automation runs whenever any trigger occurs.", "action": "Depending on which button was pressed, the automation sends a specific infrared command via MQTT to the Tasmota IR bridge to control the Meaco fan. Each button press results in a unique IR code being published to the 'cmnd/TasmotaIRBridge/IRsend' topic." }, "human_like": "Translates virtual button presses into infrared commands to control a Meaco fan via a remote IR bridge.", "complexity": "medium" } }, { "id": "'1662325491348'", "result": { "structured": "TRIGGER: When internet sensor [binary_sensor.internet] changes from on to off AND remains off for 1 minute OR When internet sensor [binary_sensor.internet] changes from off to on AND remains on for 1 minute. CONDITIONS: (Do Not Disturb [input_boolean.do_not_disturb] is off) BUT this condition is disabled. ACTIONS: IF the trigger was WAN_DOWN THEN set internet down time [input_datetime.internet_down_time] to the current datetime AND send a critical system notification with title 'Internet Connection Down' and a message containing the timestamp. ELSE IF the trigger was WAN_UP THEN set internet restored time [input_datetime.internet_restored_time] to the current datetime AND send a critical system notification with title 'Internet Connection Restored' and a message containing the restoration timestamp and the calculated downtime duration.", "natural_language": { "trigger": "When the internet sensor [binary_sensor.internet] loses connection (changes from on to off) and stays off for one minute, or when it regains connection (changes from off to on) and stays on for one minute.", "conditions": "The automation checks if Do Not Disturb [input_boolean.do_not_disturb] is off, but this check is currently disabled and does not block the automation.", "action": "If the internet goes down, it records the time of the outage in internet down time [input_datetime.internet_down_time] and sends a critical system notification. If the internet comes back up, it records the restoration time in internet restored time [input_datetime.internet_restored_time] and sends another critical notification that includes the duration of the outage." }, "human_like": "Monitors the internet connection and sends notifications when it goes down or comes back up, logging the times of these events.", "complexity": "medium" } }, { "id": "'1648058728133'", "result": { "structured": "TRIGGER: When outdoor temperature sensor [sensor.ibs_th_10f3_temperature] changes state. CONDITIONS: (heating override toggle [input_boolean.override_heating] is off) AND (outdoor temperature sensor [sensor.ibs_th_10f3_temperature] temperature attribute is greater than or equal to heating automation setpoint [input_number.heating_automation_setpoint] value) AND (current time is after heating automation start time [input_datetime.heating_automation_start_time] AND before heating automation end time [input_datetime.heating_automation_end_time] on any day of the week) AND (home climate controller [climate.home] is in heat mode). ACTIONS: Set heating controller to 'Off' via evohome.set_system_mode service AND send a non-critical debug notification via Notification Handler Script [script.notification_handler] with message 'Heating turned off by climate control'.", "natural_language": { "trigger": "Whenever the outdoor temperature sensor [sensor.ibs_th_10f3_temperature] reports a new temperature reading.", "conditions": "The heating override toggle [input_boolean.override_heating] must be off, meaning the automation is not manually overridden. The current outdoor temperature, as reported by the sensor, must be at or above the threshold value set in the heating automation setpoint [input_number.heating_automation_setpoint]. The current time must fall within the daily operating window defined by the heating automation start time [input_datetime.heating_automation_start_time] and end time [input_datetime.heating_automation_end_time], and this applies every day of the week. Finally, the home climate controller [climate.home] must currently be set to heating mode.", "action": "The automation turns the heating system off by sending a command to set the system mode to 'HeatingOff'. It also sends a debug notification via the Notification Handler Script [script.notification_handler] to log that the heating was turned off by the climate control automation." }, "human_like": "Automatically turns off the home heating when the outside temperature is warm enough and it's within the scheduled operating hours, provided the heating is currently running and not manually overridden.", "complexity": "medium" } }, { "id": "'1648058847418'", "result": { "structured": "TRIGGER: When outdoor temperature sensor [sensor.ibs_th_10f3_temperature] changes state. CONDITIONS: (outdoor temperature sensor [sensor.ibs_th_10f3_temperature] temperature attribute is less than or equal to heating automation setpoint [input_number.heating_automation_setpoint]) AND ((time is after heating automation end time [input_datetime.heating_automation_end_time] AND before heating automation start time [input_datetime.heating_automation_start_time]) AND home climate controller [climate.home] is off AND (people home sensor [sensor.people_home] is True for 1 minute OR proximity sensor [proximity.home] is below 1)) OR (home climate controller [climate.home] is off AND average household temperature sensor [sensor.average_household_temperature] is below heating automation minimum internal temperature [input_number.heating_automation_minimum_internal_temperature] AND (people home sensor [sensor.people_home] is True for 1 minute OR proximity sensor [proximity.home] is below 1))). ACTIONS: Reset the heating system via evohome.reset_system service AND send a debug notification via Notification Handler Script [script.notification_handler] with message 'Heating turned on by climate control and/or proximity'.", "natural_language": { "trigger": "The automation triggers whenever the outdoor temperature sensor [sensor.ibs_th_10f3_temperature] reports a new temperature reading.", "conditions": "First, the current outdoor temperature must be at or below the setpoint defined by heating automation setpoint [input_number.heating_automation_setpoint]. Then, one of two main scenarios must be met. Scenario 1: It must be within the operating hours (after the heating automation end time [input_datetime.heating_automation_end_time] and before the heating automation start time [input_datetime.heating_automation_start_time]), the home climate controller [climate.home] must be off, and at least one occupancy indicator must be true for at least one minute (either the people home sensor [sensor.people_home] shows 'True' or the proximity sensor [proximity.home] detects someone is very close). Scenario 2: The home climate controller [climate.home] must be off, the average household temperature sensor [sensor.average_household_temperature] must be below the minimum internal temperature threshold, and again, at least one occupancy indicator must be true for at least one minute.", "action": "If all conditions are satisfied, the automation will reset the heating system and send a non-critical debug notification stating that the heating was turned on by climate control and/or proximity detection." }, "human_like": "Turns on the heating when it's cold outside and someone is home during operating hours, or when the average indoor temperature drops too low and the house is occupied.", "complexity": "high" } }, { "id": "'1652456295222'", "result": { "structured": "TRIGGER: When proximity sensor [proximity.home] remains above 2 for 1 minute OR When people home sensor [sensor.people_home] remains False for 1 minute. CONDITIONS: (home climate controller [climate.home] is off) AND (proximity sensor [proximity.home] attribute dir_of_travel remains away_from for 1 minute). ACTIONS: Call service evohome.set_system_mode with mode HeatingOff AND Call service script.notification_handler with message 'Heating turned off by proximity'.", "natural_language": { "trigger": "When the proximity sensor [proximity.home] detects that the tracked distance is greater than 2 for at least one minute, or when the people home sensor [sensor.people_home] indicates that no one is home for at least one minute.", "conditions": "If the home climate controller [climate.home] is currently set to 'off', and the proximity sensor [proximity.home] has reported that the direction of travel is 'away_from' for at least one minute.", "action": "Turns off the heating system by setting the evohome system mode to 'HeatingOff' and sends a debug notification with the message 'Heating turned off by proximity' via the Notification Handler Script [script.notification_handler]." }, "human_like": "Turns off the heating when the house appears to be empty, based on proximity and occupancy sensors, and confirms the system is already off.", "complexity": "medium" } }, { "id": "'1652457169939'", "result": { "structured": "TRIGGER: When proximity sensor [proximity.home] remains below 15 miles for 1 minute. CONDITIONS: (proximity sensor [proximity.home] attribute dir_of_travel is towards) AND ((time is after heating automation end time [input_datetime.heating_automation_end_time] AND time is before heating automation start time [input_datetime.heating_automation_start_time] AND home climate controller [climate.home] is off) OR (home climate controller [climate.home] is off AND average household temperature sensor [sensor.average_household_temperature] is below heating automation minimum internal temperature [input_number.heating_automation_minimum_internal_temperature])). ACTIONS: Reset heating system via evohome.reset_system AND send a debug notification via Notification Handler Script [script.notification_handler] with message 'Heating turned on by proximity'.", "natural_language": { "trigger": "When the proximity sensor [proximity.home] detects that the tracked device is within 15 miles of home for at least one minute.", "conditions": "The proximity sensor [proximity.home] must show the direction of travel is towards home. Additionally, either the current time is outside the scheduled automation window (after the heating automation end time [input_datetime.heating_automation_end_time] and before the heating automation start time [input_datetime.heating_automation_start_time]) and the home climate controller [climate.home] is off, or the home climate controller [climate.home] is off and the average household temperature sensor [sensor.average_household_temperature] is below the set minimum temperature threshold [input_number.heating_automation_minimum_internal_temperature].", "action": "Resets the heating system and sends a non-critical debug notification with the message 'Heating turned on by proximity'." }, "human_like": "Turns on the heating when you are traveling home and the house is cold, ensuring comfort upon arrival.", "complexity": "medium" } }, { "id": "'1659712311617'", "result": { "structured": "TRIGGER: When the time matches a pattern of every 6 hours. CONDITIONS: do not disturb sensor [binary_sensor.do_not_disturb] is off. ACTIONS: Execute the Car EV Battery Low Script [script.car_ev_battery_low].", "natural_language": { "trigger": "The automation runs every six hours, based on a time pattern.", "conditions": "The only condition is that the do not disturb sensor [binary_sensor.do_not_disturb] must be off, meaning notifications are allowed.", "action": "Runs the Car EV Battery Low Script [script.car_ev_battery_low], which presumably checks the car's electric vehicle battery range and sends a notification if it is low and the car is not charging." }, "human_like": "Checks the car's battery range every six hours and sends a notification if it's low and the car isn't charging, provided do-not-disturb is off.", "complexity": "low" } }, { "id": "'1659740704133'", "result": { "structured": "TRIGGER: At the time set by synology nas shutdown time [input_datetime.synology_nas_shut_down_time]. CONDITIONS: synology nas switch [switch.synology_ds2419_ii] is on. ACTIONS: While (channels apple tv living room [media_player.channels_apple_tv_living_room] is playing OR channels apple tv dining room [media_player.channels_apple_tv_dining_room] is playing OR channels apple tv kitchen [media_player.channels_apple_tv_kitchen] is playing OR plex synology sensor [sensor.plex_synology] is above 0 OR sabnzbd status sensor [sensor.sabnzbd_status] is Downloading), wait for 5 minutes. After the loop, turn off synology nas switch [switch.synology_ds2419_ii].", "natural_language": { "trigger": "The automation triggers at the specific time set in the synology nas shutdown time [input_datetime.synology_nas_shut_down_time].", "conditions": "The automation only runs if the synology nas switch [switch.synology_ds2419_ii] is currently turned on.", "action": "The automation will repeatedly check for any active media streams or downloads. Specifically, it will wait in a loop as long as any of the following is true: the Channels DVR app is playing on the living room, dining room, or kitchen Apple TV, there is at least one active Plex stream from the NAS, or the SABnzbd downloader is active. Each time it checks and finds an active task, it will wait for five minutes before checking again. Once all these activities have stopped, it will proceed to shut down the NAS by turning off the synology nas switch [switch.synology_ds2419_ii]." }, "human_like": "Safely shuts down the Synology NAS at a scheduled time, but only after ensuring there are no active media streams or downloads in progress.", "complexity": "medium" } }, { "id": "'1659742903099'", "result": { "structured": "TRIGGER: When the time reaches synology nas start time [input_datetime.synology_nas_start_time]. CONDITIONS: None. ACTIONS: 1. (Disabled) Call Notification Handler Script [script.notification_handler] with a non-critical, system message 'Starting NAS'. 2. Turn on synology nas switch [switch.synology_ds2419_ii]. 3. Wait for up to 5 minutes for hpds temperature sensor [sensor.hpds_temperature_11] to change from state 'unavailable'. Continue if timeout occurs. 4. (Disabled) Call Notification Handler Script [script.notification_handler] with a non-critical, system message 'NAS Started - Restarting Plex'. 5. Call Restart Plex Script [script.restart_plex].", "natural_language": { "trigger": "The automation runs at a specific time defined by the synology nas start time [input_datetime.synology_nas_start_time].", "conditions": "There are no conditions that must be met for the automation to proceed.", "action": "First, a disabled notification is sent via the Notification Handler Script [script.notification_handler] stating 'Starting NAS'. Then, the synology nas switch [switch.synology_ds2419_ii] is turned on to start the NAS. The automation then waits for up to five minutes for the hpds temperature sensor [sensor.hpds_temperature_11] to become available (i.e., change from 'unavailable'). It will proceed even if this wait times out. After that, another disabled notification is sent stating 'NAS Started - Restarting Plex'. Finally, the Restart Plex Script [script.restart_plex] is executed." }, "human_like": "Automatically starts the Synology NAS at a scheduled time and then restarts the Plex service after waiting for the NAS to become available.", "complexity": "medium" } }, { "id": "'1660381160136'", "result": { "structured": "TRIGGER: When Landing Light [light.landing_light] remains in the state 'unavailable' for 1 minute. CONDITIONS: None. ACTIONS: Turn on Landing Light [light.landing_light] with brightness set to 100%.", "natural_language": { "trigger": "When the Landing Light [light.landing_light] stays in an 'unavailable' state for at least one minute.", "conditions": "There are no conditions for this automation.", "action": "Turns the Landing Light [light.landing_light] on, setting its brightness to 100%." }, "human_like": "Automatically turns the landing light back on to full brightness if it becomes unavailable for a minute.", "complexity": "low" } }, { "id": "'1660409561761'", "result": { "structured": "TRIGGER: When bathroom light 1 [light.ikea_tradfri_led2005r5_1] OR bathroom light 2 [light.ikea_tradfri_led2005r5_2] OR bathroom light 3 [light.ikea_tradfri_led2005r5_3] OR bathroom light 4 [light.ikea_tradfri_led2005r5_4] OR bathroom light 5 [light.ikea_tradfri_led2005r5_5] changes from state 'unavailable' AND remains in the new state for 1 minute. CONDITIONS: None. ACTIONS: Turn on bathroom light 1 [light.ikea_tradfri_led2005r5_1], bathroom light 2 [light.ikea_tradfri_led2005r5_2], bathroom light 3 [light.ikea_tradfri_led2005r5_3], bathroom light 4 [light.ikea_tradfri_led2005r5_4], and bathroom light 5 [light.ikea_tradfri_led2005r5_5] with brightness set to 100%.", "natural_language": { "trigger": "When any of the five bathroom lights (bathroom light 1 [light.ikea_tradfri_led2005r5_1], bathroom light 2 [light.ikea_tradfri_led2005r5_2], bathroom light 3 [light.ikea_tradfri_led2005r5_3], bathroom light 4 [light.ikea_tradfri_led2005r5_4], or bathroom light 5 [light.ikea_tradfri_led2005r5_5]) becomes available after being in an 'unavailable' state for at least one minute.", "conditions": "There are no conditions for this automation.", "action": "Turns on all five bathroom lights to full brightness (100%)." }, "human_like": "Automatically turns all bathroom lights back on to full brightness if any of them become available after being unreachable.", "complexity": "low" } }, { "id": "'1660409604264'", "result": { "structured": "TRIGGER: When kids bedroom light [light.kids_bedroom_light] remains in state 'unavailable' for 1 minute. CONDITIONS: None. ACTIONS: Turn on kids bedroom light [light.kids_bedroom_light] with brightness set to 100%.", "natural_language": { "trigger": "When the kids bedroom light [light.kids_bedroom_light] has been in an 'unavailable' state for at least one minute.", "conditions": "There are no conditions that must be met.", "action": "Turns the kids bedroom light [light.kids_bedroom_light] on, setting its brightness to 100%." }, "human_like": "Automatically turns the kids' bedroom light back on at full brightness if it becomes unavailable for a minute.", "complexity": "low" } }, { "id": "'1660409638841'", "result": { "structured": "TRIGGER: When master bedroom light [light.master_bedroom_light_light] remains in the state 'unavailable' for 1 minute. CONDITIONS: None. ACTIONS: Turn on master bedroom light [light.master_bedroom_light_light] with brightness set to 100%.", "natural_language": { "trigger": "When the master bedroom light [light.master_bedroom_light_light] has been in an 'unavailable' state for at least one minute.", "conditions": "There are no conditions for this automation.", "action": "Turns the master bedroom light [light.master_bedroom_light_light] back on, setting its brightness to 100%." }, "human_like": "Automatically turns the master bedroom light back on at full brightness if it becomes unavailable for a minute.", "complexity": "low" } }, { "id": "'1659781024207'", "result": { "structured": "TRIGGER: When Home Assistant starts. CONDITIONS: None. ACTIONS: Execute the Turn Off Bathroom Lights If On For Extended Period Script [script.turn_off_bathroom_lights_if_on_for_extended_period].", "natural_language": { "trigger": "When the Home Assistant system starts up.", "conditions": "There are no conditions for this automation.", "action": "Runs the script named 'Turn Off Bathroom Lights If On For Extended Period Script' [script.turn_off_bathroom_lights_if_on_for_extended_period]." }, "human_like": "Runs a script to turn off bathroom lights that have been left on when Home Assistant restarts.", "complexity": "low" } }, { "id": "'1659783652299'", "result": { "structured": "TRIGGER: Every hour (on the hour). CONDITIONS: None. ACTIONS: In parallel, execute Turn Off Bathroom Lights If On For Extended Period Script [script.turn_off_bathroom_lights_if_on_for_extended_period] AND Turn Off Kids Bedroom Light If On For Extended Period Script [script.turn_off_kids_bedroom_light_if_on_for_extended_period].", "natural_language": { "trigger": "The automation runs every hour, on the hour.", "conditions": "There are no conditions for this automation.", "action": "It runs two scripts simultaneously: the Turn Off Bathroom Lights If On For Extended Period Script [script.turn_off_bathroom_lights_if_on_for_extended_period] and the Turn Off Kids Bedroom Light If On For Extended Period Script [script.turn_off_kids_bedroom_light_if_on_for_extended_period]." }, "human_like": "This automation runs every hour to turn off bathroom and kids' bedroom lights if they have been left on for too long.", "complexity": "low" } }, { "id": "'1662802346790'", "result": { "structured": "TRIGGER: When an Alexa actionable notification event occurs with event_id actionable_notification_turn_thing_off AND event_response_type ResponseYes OR When an Alexa actionable notification event occurs with event_id actionable_notification_turn_thing_on AND event_response_type ResponseYes. CONDITIONS: None. ACTIONS: If the trigger was turn_thing_off, then turn off dehumidifier switch 2 [switch.diningroomdehumidifier]. Otherwise, if the trigger was turn_thing_on, then turn on dehumidifier switch 2 [switch.diningroomdehumidifier].", "natural_language": { "trigger": "When Alexa sends an actionable notification where the user responds 'Yes' to either the 'turn_thing_off' or the 'turn_thing_on' prompt.", "conditions": "There are no additional conditions that must be met.", "action": "If the user confirmed the 'turn_thing_off' notification, the dehumidifier switch 2 [switch.diningroomdehumidifier] is turned off. If the user confirmed the 'turn_thing_on' notification, the dehumidifier switch 2 [switch.diningroomdehumidifier] is turned on." }, "human_like": "Turns the dining room dehumidifier on or off based on a user's 'Yes' response to an Alexa notification.", "complexity": "medium" } }, { "id": "'1660170841995'", "result": { "structured": "TRIGGER: When kitchen echo dot next timer sensor [sensor.kitchen_echo_dot_next_timer] changes from unavailable OR When kitchen echo dot next timer sensor [sensor.kitchen_echo_dot_next_timer] changes to unavailable OR When a timer.finished event occurs for alexa timer kitchen [timer.alexa_timer_kitchen] OR When a timer.cancelled event occurs for alexa timer kitchen [timer.alexa_timer_kitchen]. CONDITIONS: None. ACTIONS: If triggered by kitchen echo dot next timer sensor [sensor.kitchen_echo_dot_next_timer] changing from unavailable, then send a notification via Notification Handler Script [script.notification_handler] stating a timer of calculated minutes has been started and start alexa timer kitchen [timer.alexa_timer_kitchen] for the same calculated duration. Otherwise, if triggered by kitchen echo dot next timer sensor [sensor.kitchen_echo_dot_next_timer] changing to unavailable, then send a notification via Notification Handler Script [script.notification_handler] stating the kitchen timer has finished/been cancelled and cancel alexa timer kitchen [timer.alexa_timer_kitchen]. If triggered by a timer.finished event for alexa timer kitchen [timer.alexa_timer_kitchen], then send a notification via Notification Handler Script [script.notification_handler] stating 'Timer Finished'. If triggered by a timer.cancelled event for alexa timer kitchen [timer.alexa_timer_kitchen], then send a notification via Notification Handler Script [script.notification_handler] stating 'Timer Cancelled'.", "natural_language": { "trigger": "This automation is triggered in four scenarios: when the kitchen echo dot next timer sensor [sensor.kitchen_echo_dot_next_timer] first becomes available (i.e., a new timer is set on the Echo device), when that sensor becomes unavailable (i.e., the timer on the Echo device finishes or is cancelled), when the internal Home Assistant timer named alexa timer kitchen [timer.alexa_timer_kitchen] finishes, or when that same internal timer is cancelled.", "conditions": "There are no conditions for this automation.", "action": "Depending on which trigger activated the automation, it performs different actions. If a new timer is detected on the Echo Dot, it calculates the timer's duration in minutes, sends a notification with that information via the Notification Handler Script [script.notification_handler], and starts an internal Home Assistant timer for the same duration. If the Echo Dot timer becomes unavailable, it sends a notification that the kitchen timer has finished or been cancelled and cancels the corresponding internal timer. If the internal timer finishes, it sends a 'Timer Finished' notification. If the internal timer is cancelled, it sends a 'Timer Cancelled' notification." }, "human_like": "Manages kitchen timers set on an Echo Dot by mirroring them in Home Assistant and sending notifications for timer start, finish, and cancellation events.", "complexity": "medium" } }, { "id": "'1649586908882'", "result": { "structured": "TRIGGER: When dryer state machine [input_select.dryer_state_machine] changes from job_ongoing to job_completed. CONDITIONS: None. ACTIONS: Execute Notification Handler Script [script.notification_handler] with a data template specifying a non-critical, non-debug, non-system message: 'The tumble dryer has finished.'.", "natural_language": { "trigger": "When the dryer state machine [input_select.dryer_state_machine] changes its state from 'job_ongoing' to 'job_completed'.", "conditions": "There are no conditions for this automation.", "action": "Sends a notification by running the Notification Handler Script [script.notification_handler] with a message stating 'The tumble dryer has finished.' The notification is configured as a standard, non-critical alert." }, "human_like": "Sends a notification when the tumble dryer finishes its cycle.", "complexity": "low" } }, { "id": "'1649710773908'", "result": { "structured": "TRIGGER: When washing machine state machine [input_select.washing_machine_state_machine] changes from job_ongoing to job_completed. CONDITIONS: None. ACTIONS: Execute Notification Handler Script [script.notification_handler] with a message 'Washing machine has finished!'.", "natural_language": { "trigger": "When the washing machine state machine [input_select.washing_machine_state_machine] changes its state from 'job_ongoing' to 'job_completed'.", "conditions": "There are no conditions that must be met.", "action": "Sends a notification by running the Notification Handler Script [script.notification_handler] with the message 'Washing machine has finished!'." }, "human_like": "Sends a notification when the washing machine finishes its cycle.", "complexity": "low" } }, { "id": "'1649711525841'", "result": { "structured": "TRIGGER: When dishwasher state machine [input_select.dishwasher_state_machine] changes from job_ongoing to job_completed. CONDITIONS: None. ACTIONS: Execute script Notification Handler Script [script.notification_handler] with a message 'Dishwasher has finished!'.", "natural_language": { "trigger": "When the dishwasher state machine [input_select.dishwasher_state_machine] changes its state from 'job_ongoing' to 'job_completed'.", "conditions": "There are no conditions that must be met.", "action": "Sends a notification by running the Notification Handler Script [script.notification_handler] with the message 'Dishwasher has finished!'." }, "human_like": "Sends a notification when the dishwasher finishes its cycle.", "complexity": "low" } }, { "id": "'1659661507139'", "result": { "structured": "TRIGGER: When light with default settings [light.ikea_tradfri_led2035g10] is turned on. CONDITIONS: None. ACTIONS: Set light with default settings [light.ikea_tradfri_led2035g10] to a color temperature of 154.", "natural_language": { "trigger": "When the light with default settings [light.ikea_tradfri_led2035g10] is turned on.", "conditions": "There are no conditions.", "action": "Sets the light with default settings [light.ikea_tradfri_led2035g10] to a specific color temperature of 154." }, "human_like": "Automatically sets the Ikea light to a specific color temperature whenever it is turned on.", "complexity": "low" } }, { "id": "'1643466109155'", "result": { "structured": "TRIGGER: When any Zigbee2MQTT device with a last_seen attribute becomes offline for 24 hours. CONDITIONS: None. ACTIONS: Run the Notification Handler Script [script.notification_handler] with a non-critical, non-debug, system notification containing the message 'Zigbee device {{sensors}} offline'.", "natural_language": { "trigger": "When any Zigbee2MQTT device that has a 'last_seen' attribute has been offline for 24 hours.", "conditions": "There are no additional conditions that need to be met.", "action": "Sends a system notification via the Notification Handler Script [script.notification_handler], stating that the specific Zigbee device is offline." }, "human_like": "Sends a notification when a Zigbee device has been offline for a full day.", "complexity": "low" } }, { "id": "'1662883842115'", "result": { "structured": "TRIGGER: When washing machine switch [switch.washingmachine] changes state OR when washing machine power sensor [sensor.washingmachine_energy_power] changes state. CONDITIONS: washing machine automation self trigger [input_boolean.washing_machine_automation_self_trigger] is on. ACTIONS: Set washing machine state machine [input_select.washing_machine_state_machine] based on the power consumption of washing machine power sensor [sensor.washingmachine_energy_power] relative to thresholds (starting: >10W, finishing: <5W) and the state of washing machine switch [switch.washingmachine]. Manage washing machine job cycle [input_boolean.washing_machine_job_cycle] and washing machine delayed job completion timer [timer.washing_machine_delayed_job_completion_timer] (duration: 60 seconds) to track the appliance's operational cycle.", "natural_language": { "trigger": "The automation triggers whenever the washing machine switch [switch.washingmachine] is turned on or off, or when the power consumption reported by the washing machine power sensor [sensor.washingmachine_energy_power] changes.", "conditions": "The automation will only run if the washing machine automation self trigger [input_boolean.washing_machine_automation_self_trigger] is enabled (set to on).", "action": "The automation monitors the washing machine's power usage to determine its state. It uses the washing machine power sensor [sensor.washingmachine_energy_power] to check if power exceeds 10 watts (indicating the machine has started) or drops below 5 watts (indicating it may be finishing). It updates the washing machine state machine [input_select.washing_machine_state_machine] accordingly (e.g., idle, running, finished). It also manages the washing machine job cycle [input_boolean.washing_machine_job_cycle] to indicate when a wash cycle is active, and starts a 60-second delay timer [timer.washing_machine_delayed_job_completion_timer] when the machine appears to be finished, to confirm completion before updating the final state." }, "human_like": "This automation tracks the washing machine's cycle by monitoring its power usage, updating its status, and managing a completion delay to avoid false finishes.", "complexity": "medium" } }, { "id": "'1662884201766'", "result": { "structured": "TRIGGER: When dishwasher switch [switch.dishwasher] state changes OR when dishwasher power sensor [sensor.dishwasher_energy_power] state changes OR when dishwasher delayed job completion timer [timer.dishwasher_delayed_job_completion_timer] finishes. CONDITIONS: (dishwasher automation self trigger [input_boolean.dishwasher_automation_self_trigger] is on). ACTIONS: Update dishwasher state machine [input_select.dishwasher_state_machine] and dishwasher job cycle [input_boolean.dishwasher_job_cycle] based on power thresholds (starting: 20, finishing: 15) and timer logic.", "natural_language": { "trigger": "The automation triggers whenever the dishwasher switch [switch.dishwasher] is turned on or off, when the dishwasher power sensor [sensor.dishwasher_energy_power] reports a change in power consumption, or when the dishwasher delayed job completion timer [timer.dishwasher_delayed_job_completion_timer] reaches zero.", "conditions": "The automation will only run if the dishwasher automation self trigger [input_boolean.dishwasher_automation_self_trigger] is enabled (set to on).", "action": "It updates the dishwasher state machine [input_select.dishwasher_state_machine] and the dishwasher job cycle [input_boolean.dishwasher_job_cycle] to reflect the appliance's status. It uses power thresholds to determine when the dishwasher starts (power above 20) and finishes (power below 15), and manages a timer to delay marking the job as complete." }, "human_like": "Monitors the dishwasher's power usage and switch state to automatically track its running cycle and update its status.", "complexity": "medium" } }, { "id": "'1662884366995'", "result": { "structured": "TRIGGER: When tumble dryer power sensor [sensor.tasmota_energy_power] state changes. CONDITIONS: (dryer automation self trigger [input_boolean.dryer_automation_self_trigger] is on). ACTIONS: Based on the power level, update dryer state machine [input_select.dryer_state_machine] to 'off', 'starting', 'running', 'finishing', or 'suspended'. If power is below 6 W for 1 minute, start dryer delayed job completion timer [timer.dryer_delayed_job_completion_timer]. When the timer finishes, set the state to 'off' and turn off tumble dryer switch [switch.tasmota_6].", "natural_language": { "trigger": "When the power consumption reported by the tumble dryer power sensor [sensor.tasmota_energy_power] changes.", "conditions": "The automation will only run if the dryer automation self trigger [input_boolean.dryer_automation_self_trigger] is turned on.", "action": "The automation monitors the power level to determine the dryer's operational state. It updates the dryer state machine [input_select.dryer_state_machine] to reflect whether the dryer is off, starting, running, finishing, or suspended. Specifically, if the power drops below 6 watts, it starts a one-minute timer called dryer delayed job completion timer [timer.dryer_delayed_job_completion_timer]. Once that timer finishes, it sets the dryer state to 'off' and turns off the physical tumble dryer switch [switch.tasmota_6]." }, "human_like": "Monitors the tumble dryer's power usage to track its cycle (off, starting, running, finishing) and automatically turns it off after it has completed.", "complexity": "medium" } }, { "id": "'1663151512612'", "result": { "structured": "TRIGGER: When ups status data sensor [sensor.ups_status_data] changes to state 'ALARM OL RB' OR when ups status data sensor [sensor.ups_status_data] changes to state 'ALARM OL CHRG RB'. CONDITIONS: None. ACTIONS: Execute Notification Handler Script [script.notification_handler] with a critical system message 'The UPS battery is failing. Please order a new battery!' AND create a persistent notification with the same message.", "natural_language": { "trigger": "When the ups status data sensor [sensor.ups_status_data] reports either the status 'ALARM OL RB' or the status 'ALARM OL CHRG RB'.", "conditions": "There are no conditions that need to be met.", "action": "Sends a critical system alert via the Notification Handler Script [script.notification_handler] and also creates a persistent notification, both containing the message: 'The UPS battery is failing. Please order a new battery!'." }, "human_like": "Sends urgent warnings when the UPS battery is failing, prompting the user to order a replacement.", "complexity": "low" } }, { "id": "'1663790375453'", "result": { "structured": "TRIGGER: When heating override toggle [input_boolean.override_heating] changes from off to on OR When heating override toggle [input_boolean.override_heating] changes from on to off OR When heating override timer [timer.heating_override] timer started event occurs (disabled) OR When heating override timer [timer.heating_override] timer finished event occurs OR When heating override timer [timer.heating_override] timer cancelled event occurs. CONDITIONS: None. ACTIONS: IF heating override toggle [input_boolean.override_heating] is on AND NOT (trigger is heating.timer.finished OR trigger is heating.timer.cancelled OR trigger is heating.toggle.off) THEN start heating override timer [timer.heating_override] for 2 hours, send notification 'Heating override enabled for 2 hours.', and set evohome system mode to Auto. ELSE finish heating override timer [timer.heating_override]. IF trigger is heating.timer.finished OR trigger is heating.timer.cancelled OR trigger is heating.toggle.off THEN turn off heating override toggle [input_boolean.override_heating] and send notification 'Heating override ended.'.", "natural_language": { "trigger": "The automation triggers when the heating override toggle [input_boolean.override_heating] is turned on or off, when the heating override timer [timer.heating_override] finishes, or when the heating override timer [timer.heating_override] is cancelled. A trigger for the timer starting is also defined but is disabled.", "conditions": "There are no conditions for this automation.", "action": "If the heating override toggle is on and the trigger was not the timer finishing, the timer being cancelled, or the toggle being turned off, then the automation starts the heating override timer for 2 hours, sends a notification stating 'Heating override enabled for 2 hours.', and sets the evohome system to Auto mode. Otherwise, it finishes the timer. Additionally, if the trigger was the timer finishing, the timer being cancelled, or the toggle being turned off, the automation turns off the heating override toggle and sends a notification stating 'Heating override ended.'." }, "human_like": "Manages a temporary heating override by starting a 2-hour timer when enabled, sending notifications, and ensuring the system returns to normal when the timer ends or is cancelled.", "complexity": "medium" } }, { "id": "'1664061109754'", "result": { "structured": "TRIGGER: When washing machine power sensor [sensor.washingmachine_energy_power] changes state. CONDITIONS: (washing machine power sensor [sensor.washingmachine_energy_power] power is above 4 watts AND remains above for 1 minute) OR (washing machine power sensor [sensor.washingmachine_energy_power] power is below 4 watts AND remains below for 1 minute). ACTIONS: If power rises above threshold, send notification 'Washer started'. If power falls below threshold, send notification 'Washer Done'.", "natural_language": { "trigger": "When the washing machine power sensor [sensor.washingmachine_energy_power] reports a change in its power consumption.", "conditions": "The automation checks if the power consumption either rises above 4 watts and stays above that level for at least one minute, or falls below 4 watts and stays below that level for at least one minute.", "action": "If the power consumption rises and stays above the threshold, a notification 'Washer started' is sent. If the power consumption falls and stays below the threshold, a notification 'Washer Done' is sent." }, "human_like": "Sends a notification when the washing machine starts and when it finishes its cycle, based on its power consumption.", "complexity": "medium" } }, { "id": "'1666456945222'", "result": { "structured": "TRIGGER: When Solar Output Source Priority Select [input_select.solar_output_source_priority] changes state. CONDITIONS: None. ACTIONS: Publish an MQTT message to topic 'homeassistant/sensor/inverter' with a payload determined by the current state of Solar Output Source Priority Select [input_select.solar_output_source_priority]: 'POP00' if state is 'POP00 (Utility first)', 'POP01' if state is 'POP01 (Solar first)', or 'POP02' if state is 'POP02 (SBU)'.", "natural_language": { "trigger": "Whenever the Solar Output Source Priority Select [input_select.solar_output_source_priority] changes its selected value.", "conditions": "There are no conditions that must be met for this automation to run.", "action": "Sends an MQTT command to the topic 'homeassistant/sensor/inverter'. The command sent depends on the current setting of the Solar Output Source Priority Select [input_select.solar_output_source_priority]: it sends 'POP00' for 'Utility first', 'POP01' for 'Solar first', or 'POP02' for 'SBU'." }, "human_like": "Sends a command to the solar inverter whenever the user changes the output source priority setting.", "complexity": "low" } }, { "id": "'1666457147127'", "result": { "structured": "TRIGGER: When Solar Charger Priority Select [input_select.solar_charger_priority] changes state. CONDITIONS: None. ACTIONS: Publish an MQTT message to topic 'homeassistant/sensor/inverter' with a payload determined by the current state of Solar Charger Priority Select [input_select.solar_charger_priority]: 'PCP00' if state is 'PCP00 (Utility first)', 'PCP01' if state is 'PCP01 (Solar first)', 'PCP02' if state is 'PCP02 (Solar and utility)', or 'PCP03' if state is 'PCP03 (Solar only)'.", "natural_language": { "trigger": "Whenever the Solar Charger Priority Select [input_select.solar_charger_priority] changes its selected option.", "conditions": "There are no conditions that must be met for the action to run.", "action": "Sends an MQTT message to the topic 'homeassistant/sensor/inverter'. The content of the message depends on which priority is currently selected: it sends 'PCP00' for 'Utility first', 'PCP01' for 'Solar first', 'PCP02' for 'Solar and utility', or 'PCP03' for 'Solar only'." }, "human_like": "Updates the inverter's charging priority via MQTT whenever the priority setting is changed in Home Assistant.", "complexity": "low" } }, { "id": "'1670104706285'", "result": { "structured": "TRIGGER: When sunrise occurs OR when sunset occurs OR when the time reaches 23:00:00. CONDITIONS: None. ACTIONS: If the trigger is sunrise, then turn on candelabra light [light.candelabra] AND turn on twinkly light [light.twinkly_69dced]. If the trigger is sunset, then turn on outside christmas lights [light.outside_christmas_lights]. If the trigger is 23:00:00, then turn off all christmas lights [light.all_christmas_lights].", "natural_language": { "trigger": "The automation runs at sunrise, at sunset, or at 11:00 PM.", "conditions": "There are no conditions that need to be met.", "action": "Depending on the trigger, different actions are performed. At sunrise, the candelabra light [light.candelabra] and the twinkly light [light.twinkly_69dced] are turned on. At sunset, the outside christmas lights [light.outside_christmas_lights] are turned on. At 11:00 PM, all christmas lights [light.all_christmas_lights] are turned off." }, "human_like": "This automation manages Christmas lights by turning on indoor lights at sunrise, outdoor lights at sunset, and turning all lights off at 11 PM.", "complexity": "medium" } }, { "id": "'1672574835692'", "result": { "structured": "TRIGGER: When car heater toggle [input_boolean.heater] turns on. CONDITIONS: None. ACTIONS: Send notification to mobile_app_myphone with message 'Car climate enabled for 10 minutes'. Then, start climate control for the Kia vehicle (device_id: 814ef11cf14e3dcfcd1341bb5bf7cb98) with a duration of 10 minutes, temperature set to 22°C, heating enabled, and both front seats heated to level 8. Wait for 15 minutes. Finally, turn off car heater toggle [input_boolean.heater].", "natural_language": { "trigger": "When the car heater toggle [input_boolean.heater] is switched on.", "conditions": "There are no conditions that must be met.", "action": "Sends a notification to the user's phone stating that the car climate is enabled for 10 minutes. It then activates the car's climate control system for 10 minutes, setting the temperature to 22°C, enabling the heater, and turning on the front seat heaters to the maximum level. After a 15-minute delay, it automatically turns the car heater toggle [input_boolean.heater] back off." }, "human_like": "Turns on the car's heater and seat warmers for a preset time when a switch is flipped, and notifies the user.", "complexity": "low" } }, { "id": "'1672680576968'", "result": { "structured": "TRIGGER: When IKEA Tradfri On Off Switch [device_id: f8fb2ca1130dadb5200218a5ff048811] short press turn_on button is pressed OR when IKEA Tradfri On Off Switch [device_id: f8fb2ca1130dadb5200218a5ff048811] short press turn_off button is pressed. CONDITIONS: None. ACTIONS: IF (trigger is bathroom_on OR template variable ikea_switch_on is true) THEN turn on bathroom temporary override [input_boolean.bathroom_temporary_override] AND start bathroom override timer [timer.bathroom_override] AND IF (all master bathroom lights [light.all_master_bathroom_lights] are off AND current time is after bathroom night start time [input_datetime.bathroom_night_start] AND before bathroom night end time [input_datetime.bathroom_night_end]) THEN activate bathroom night toilet and sink lights scene [scene.bathroom_night_toilet_and_sink_lights_only_warm_white_50_brightness] ELSE activate reset bathroom lights lights on scene [scene.reset_bathroom_lights_lights_on]. IF (trigger is bathroom_off OR template variable ikea_switch_off is true) THEN turn off bathroom temporary override [input_boolean.bathroom_temporary_override] AND activate reset bathroom lights lights off scene [scene.reset_bathroom_lights_lights_off].", "natural_language": { "trigger": "When the IKEA Tradfri On Off Switch [device_id: f8fb2ca1130dadb5200218a5ff048811] is pressed for a short press on either the 'turn on' or 'turn off' button.", "conditions": "There are no conditions that must be met for this automation to run.", "action": "If the 'turn on' button is pressed or a template variable 'ikea_switch_on' is true, the automation will turn on the bathroom temporary override [input_boolean.bathroom_temporary_override], start the bathroom override timer [timer.bathroom_override], and then check the state of the all master bathroom lights [light.all_master_bathroom_lights] and the time. If the lights are off and the current time is within the night period defined by bathroom night start time [input_datetime.bathroom_night_start] and bathroom night end time [input_datetime.bathroom_night_end], it will turn on a night scene for the bathroom [scene.bathroom_night_toilet_and_sink_lights_only_warm_white_50_brightness]. Otherwise, it will turn on a scene to reset the bathroom lights to an 'on' state [scene.reset_bathroom_lights_lights_on]. If the 'turn off' button is pressed or a template variable 'ikea_switch_off' is true, the automation will turn off the bathroom temporary override [input_boolean.bathroom_temporary_override] and turn on a scene to reset the bathroom lights to an 'off' state [scene.reset_bathroom_lights_lights_off]." }, "human_like": "Controls the bathroom lights using an IKEA switch, turning on a night scene during specific hours or a regular scene otherwise when the 'on' button is pressed, and turning all lights off when the 'off' button is pressed.", "complexity": "high" } }, { "id": "'1672681347783'", "result": { "structured": "TRIGGER: When Kids bedroom 4-way Switch [device_id: 33d593b9a5375f714ad2ad6a93dbb1f8] button_1 is pressed once OR button_1 is double-pressed OR button_1 is long-pressed OR button_2 is pressed once OR button_2 is double-pressed OR button_2 is long-pressed OR button_3 is pressed once OR button_3 is double-pressed OR button_3 is long-pressed OR button_4 is pressed once OR button_4 is double-pressed OR Kids bedroom 4-way Switch [button.kids_bedroom_4_way_switch_identify] is pressed. CONDITIONS: None. ACTIONS: If trigger is Kids bedroom 4-way Switch \"1_single\" action, toggle Kids Bedroom Light Light [light.kids_bedroom_light_light] to 100% brightness with 1-second transition. If trigger is Kids bedroom 4-way Switch \"1_double\" action, toggle Kids Bedroom Light Light [light.kids_bedroom_light_light] to 50% brightness with 1-second transition. If trigger is Kids bedroom 4-way Switch \"1_hold\" action, turn off Kids Bedroom Light Light [light.kids_bedroom_light_light] with 1-second transition. If trigger is Kids bedroom 4-way Switch \"2_single\" action, toggle kids hue light [light.signify_netherlands_b_v_llc013_huelight] to white color at 100% brightness with 1-second transition. If trigger is Kids bedroom 4-way Switch \"2_double\" action, toggle kids hue light [light.signify_netherlands_b_v_llc013_huelight] to white color at 50% brightness with 1-second transition. If trigger is Kids bedroom 4-way Switch \"2_hold\" action, turn off kids hue light [light.signify_netherlands_b_v_llc013_huelight] with 1-second transition. If trigger is Kids bedroom 4-way Switch \"3_single\" action, turn off Kids Bedroom Light Light [light.kids_bedroom_light_light] with 1-second transition AND turn on kids hue light [light.signify_netherlands_b_v_llc013_huelight] to violet color at 20% brightness with 1-second transition. If trigger is Kids bedroom 4-way Switch \"3_double\" action, toggle kids led lights [light.kids_led_lights] to 50% brightness (action disabled). If trigger is Kids bedroom 4-way Switch \"3_hold\" action, turn off kids led lights [light.kids_led_lights] (action disabled). If trigger is Kids bedroom 4-way Switch \"4_single\" action, turn off all kids bedroom lights [light.all_kids_bedroom_lights] with 1-second transition. If trigger is Kids bedroom 4-way Switch \"4_double\" action, turn off all kids bedroom lights [light.all_kids_bedroom_lights] with 1-second transition. If trigger is Kids bedroom 4-way Switch \"4_hold\" action, turn off all kids bedroom lights [light.all_kids_bedroom_lights] with 1-second transition.", "natural_language": { "trigger": "The automation is triggered by any of the 12 different button press events from the Kids bedroom 4-way Switch. These include single, double, and long presses on its four buttons (button_1, button_2, button_3, and button_4).", "conditions": "There are no conditions for this automation.", "action": "The action depends on which specific button press triggered the automation. A single press on button_1 toggles the main Kids Bedroom Light Light to full brightness. A double press on button_1 toggles the same light to half brightness. A long press on button_1 turns the main light off. For button_2, single and double presses toggle the kids hue light to white at full or half brightness, respectively, while a long press turns it off. A single press on button_3 turns off the main light and turns on the kids hue light to a dim violet color. The double and long press actions for button_3 (controlling the kids led lights) are currently disabled. Pressing button_4 in any way (single, double, or long press) turns off all kids bedroom lights." }, "human_like": "This automation maps different button presses on a 4-way switch in the kids' bedroom to control various lights, including toggling brightness, changing colors, and turning lights on or off.", "complexity": "medium" } }, { "id": "'1672682220334'", "result": { "structured": "TRIGGER: When master bedroom 4-way switch [device_id: caba5eff8e8af6e4295cfba68159c656] button_1 short press OR button_1 double press OR button_1 long press OR button_2 short press OR button_2 double press OR button_2 long press OR button_3 short press OR button_3 double press OR button_3 long press OR button_4 short press OR button_4 double press OR button_4 long press. CONDITIONS: None. ACTIONS: IF trigger is Master bedroom 4-way Switch \"1_single\" action THEN toggle master bedroom light [light.master_bedroom_light_light] to 100% brightness with 1s transition. IF trigger is Master bedroom 4-way Switch \"1_double\" action THEN toggle master bedroom light [light.master_bedroom_light_light] to 50% brightness with 1s transition. IF trigger is Master bedroom 4-way Switch \"1_hold\" action THEN turn off master bedroom light [light.master_bedroom_light_light] with 1s transition. IF trigger is Master bedroom 4-way Switch \"2_single\" action THEN toggle bed light [light.bed_light_huelight] to 100% brightness with 1s transition. IF trigger is Master bedroom 4-way Switch \"2_double\" action THEN toggle bed light [light.bed_light_huelight] to 50% brightness with 0s transition. IF trigger is Master bedroom 4-way Switch \"2_hold\" action THEN turn off bed light [light.bed_light_huelight] with 1s transition. IF trigger is Master bedroom 4-way Switch \"3_single\" action THEN toggle bed light [light.bed_light_huelight] to 50% brightness with 500K color temperature and 1s transition AND turn off master bedroom light [light.master_bedroom_light_light] with 1s transition. IF trigger is Master bedroom 4-way Switch \"3_double\" action THEN turn off master bedroom light [light.master_bedroom_light_light] with 1s transition AND toggle bed light [light.bed_light_huelight] to 25% brightness with 500K color temperature and 1s transition. IF trigger is Master bedroom 4-way Switch \"3_hold\" action THEN toggle additional light device 1 [device_id: 9f24909fc3d2d24894d3855bb9905d4a] to 25% brightness AND toggle additional light device 2 [device_id: 5c6fe9297a29501c1b5cbe311065dd39] to 25% brightness with white color. IF trigger is Master bedroom 4-way Switch \"4_single\" action THEN turn off all master bedroom lights [light.all_master_bedroom_lights] with 1s transition. IF trigger is Master bedroom 4-way Switch \"4_double\" action THEN no action. IF trigger is Master bedroom 4-way Switch \"4_hold\" action THEN no action.", "natural_language": { "trigger": "When any button on the master bedroom 4-way switch [device_id: caba5eff8e8af6e4295cfba68159c656] is pressed. This includes single, double, or long presses on each of the four buttons.", "conditions": "There are no conditions; the automation runs whenever a trigger occurs.", "action": "The action depends on which button and press type was triggered. Button 1 single press toggles the main bedroom light at full brightness. Button 1 double press toggles it at half brightness. Button 1 long press turns it off. Button 2 controls the bed light similarly: single press toggles full brightness, double press toggles half brightness, and long press turns it off. Button 3 single press sets the bed light to a warm white and turns off the main light. Button 3 double press turns off the main light and sets the bed light to a dim warm white. Button 3 long press dims two additional light devices. Button 4 single press turns off all lights in the master bedroom. Button 4 double press and long press currently do nothing." }, "human_like": "This automation maps the four buttons of a remote switch to control various lights in the master bedroom, offering different brightness levels and scenes with single, double, and long presses.", "complexity": "medium" } }, { "id": "'1672738881426'", "result": { "structured": "TRIGGER: When bluetooth radio 2 sensor [binary_sensor.bluetooth_radio_2] changes from on to off AND remains off for 30 seconds OR When bluetooth radio sensor [binary_sensor.bluetooth_radio] changes from on to off AND remains off for 30 seconds OR When ramses rf sensor [binary_sensor.ramses_rf] changes from on to off AND remains off for 30 seconds OR When rfxtrx433 sensor [binary_sensor.rfxtrx433] changes from on to off AND remains off for 30 seconds OR When rtl433 dongle sensor [binary_sensor.rtl433_dongle] changes from on to off AND remains off for 30 seconds OR When sonoff zigbee dongle sensor [binary_sensor.sonoff_zigbee_3_0_usb_dongle_plus] changes from on to off AND remains off for 30 seconds. CONDITIONS: None. ACTIONS: If the trigger is ASUS USB-BT500, then send a non-critical system notification via Notification Handler Script [script.notification_handler] with message 'ASUS USB-BT500 USB stick is no longer present!'. If the trigger is Bluetooth Radio, then send a critical system notification via Notification Handler Script [script.notification_handler] with message 'Bluetooth USB stick is no longer present!'. If the trigger is Ramses RF, then send a critical system notification via Notification Handler Script [script.notification_handler] with message 'Ramses RF (EvoHome) USB stick is no longer present!'. If the trigger is RFXtrx433, then send a non-critical system notification via Notification Handler Script [script.notification_handler] with message 'RFXtrx433 USB stick is no longer present!'. If the trigger is RTL433 Dongle, then send a critical system notification via Notification Handler Script [script.notification_handler] with message 'RTL433 USB stick is no longer present!'. If the trigger is Sonoff Zigbee 3.0 USB Dongle Plus, then send a critical system notification via Notification Handler Script [script.notification_handler] with message 'Zigbee USB stick is no longer present! Most lights and sensors will not work until this is resolved!'.", "natural_language": { "trigger": "The automation triggers when any of the six monitored USB dongle sensors changes from an 'on' (plugged in) state to an 'off' (unplugged) state and stays off for 30 seconds. The sensors are: bluetooth radio 2 sensor [binary_sensor.bluetooth_radio_2], bluetooth radio sensor [binary_sensor.bluetooth_radio], ramses rf sensor [binary_sensor.ramses_rf], rfxtrx433 sensor [binary_sensor.rfxtrx433], rtl433 dongle sensor [binary_sensor.rtl433_dongle], and sonoff zigbee dongle sensor [binary_sensor.sonoff_zigbee_3_0_usb_dongle_plus].", "conditions": "There are no conditions that must be met for the action to run.", "action": "Depending on which specific sensor triggered the automation, a corresponding notification is sent using the Notification Handler Script [script.notification_handler]. The notification's severity and message are tailored to the dongle: the ASUS USB-BT500 and RFXtrx433 triggers result in non-critical alerts, while the Bluetooth Radio, Ramses RF, RTL433 Dongle, and Sonoff Zigbee Dongle triggers result in critical alerts. The message for the Zigbee dongle includes a warning about potential loss of functionality for lights and sensors." }, "human_like": "Sends an alert if any of the system's USB dongles (like Bluetooth, Zigbee, or radio receivers) become unplugged, with specific warnings for critical devices.", "complexity": "medium" } }, { "id": "'1672740004063'", "result": { "structured": "TRIGGER: When Philips Hue Dimmer switch [device_id: cd63a92d4200b7767391b4421c12bdec] sends a remote_button_short_press of subtype turn_on OR remote_button_double_press of subtype turn_on OR remote_button_short_press of subtype turn_off OR remote_button_double_press of subtype turn_off OR remote_button_short_press of subtype dim_up OR remote_button_short_press of subtype dim_down OR remote_button_long_press of subtype turn_off. CONDITIONS: None. ACTIONS: If trigger is 'on_press', then if do not disturb sensor [binary_sensor.do_not_disturb] is on, turn on master bedroom light [light.master_bedroom_light_light] with 1 second transition and 20% brightness; otherwise turn it on with 1 second transition and 100% brightness. If trigger is 'double on_press', then if do not disturb sensor [binary_sensor.do_not_disturb] is on, turn on bed light [light.bed_light_huelight] with 1 second transition, color_temp 500, and 20% brightness; otherwise turn it on with 1 second transition, color_temp 153, and 20% brightness. If trigger is 'off_press', turn off master bedroom light [light.master_bedroom_light_light] with 1 second transition. If trigger is 'double off_press', turn off bed light [light.bed_light_huelight] with 1 second transition. If trigger is 'up_press', then if master bedroom light [light.master_bedroom_light_light] is on AND bed light [light.bed_light_huelight] is off, increase brightness of master bedroom light [light.master_bedroom_light_light]; if bed light [light.bed_light_huelight] is on AND master bedroom light [light.master_bedroom_light_light] is off, increase brightness of bed light [light.bed_light_huelight]; if both master bedroom light [light.master_bedroom_light_light] AND bed light [light.bed_light_huelight] are on, increase brightness of both lights. If trigger is 'down_press', then if master bedroom light [light.master_bedroom_light_light] is on AND bed light [light.bed_light_huelight] is off, decrease brightness of master bedroom light [light.master_bedroom_light_light]; if bed light [light.bed_light_huelight] is on AND master bedroom light [light.master_bedroom_light_light] is off, decrease brightness of bed light [light.bed_light_huelight]; if both master bedroom light [light.master_bedroom_light_light] AND bed light [light.bed_light_huelight] are on, decrease brightness of both lights. If trigger is 'off_hold', turn off both master bedroom light [light.master_bedroom_light_light] AND bed light [light.bed_light_huelight] with 1 second transition.", "natural_language": { "trigger": "The automation is triggered by various button presses on the Philips Hue Dimmer switch [device_id: cd63a92d4200b7767391b4421c12bdec]. These include a short press of the 'on' button, a double press of the 'on' button, a short press of the 'off' button, a double press of the 'off' button, a short press of the 'dim up' button, a short press of the 'dim down' button, and a long press of the 'off' button.", "conditions": "There are no conditions that must be met for the automation to run; it executes based solely on the trigger event.", "action": "Depending on which button was pressed, the automation performs different actions. A short 'on' press turns on the master bedroom light [light.master_bedroom_light_light], but at a dim 20% brightness if the do not disturb sensor [binary_sensor.do_not_disturb] is active, otherwise at full brightness. A double 'on' press turns on the bed light [light.bed_light_huelight] with a warm white color and 20% brightness, adjusting the exact color temperature based on the do not disturb status. A short 'off' press turns off the master bedroom light, and a double 'off' press turns off the bed light. The 'dim up' and 'dim down' buttons increase or decrease the brightness of the lights, intelligently targeting the light that is currently on or both if both are on. A long hold of the 'off' button turns off both the master bedroom light and the bed light simultaneously." }, "human_like": "This automation uses a Philips Hue Dimmer remote to control the main and bed lights in the master bedroom, offering on/off, dimming, and a 'do not disturb' mode for quieter operation.", "complexity": "high" } }, { "id": "'1672763007964'", "result": { "structured": "TRIGGER: When dining room dehumidifier state sensor [sensor.dining_room_dehumidifier_state] changes from Active to Standby AND remains in Standby for 5 minutes OR When kitchen energy state sensor [sensor.kitchen_energy_state] changes from Active to Standby AND remains in Standby for 5 minutes. CONDITIONS: None. ACTIONS: If the trigger was Dining Room Dehumidifier, then call Notification Handler Script [script.notification_handler] with a message 'Empty dining room dehumidifier!'. If the trigger was Kitchen Dehumidifier, then call Notification Handler Script [script.notification_handler] with a message 'Empty kitchen dehumidifier!'.", "natural_language": { "trigger": "When the dining room dehumidifier state sensor [sensor.dining_room_dehumidifier_state] switches from Active to Standby and stays that way for five minutes, or when the kitchen energy state sensor [sensor.kitchen_energy_state] switches from Active to Standby and stays that way for five minutes.", "conditions": "There are no conditions for this automation.", "action": "If the dining room dehumidifier triggered the automation, send a notification using the Notification Handler Script [script.notification_handler] with the message 'Empty dining room dehumidifier!'. If the kitchen dehumidifier triggered the automation, send a notification using the Notification Handler Script [script.notification_handler] with the message 'Empty kitchen dehumidifier!'." }, "human_like": "Sends a reminder to empty a dehumidifier when it has been on standby for five minutes, identifying whether it's the dining room or kitchen unit.", "complexity": "medium" } }, { "id": "'1672776928202'", "result": { "structured": "TRIGGER: At 20:30:00. CONDITIONS: school day sensor [binary_sensor.school_day] is on. ACTIONS: Set volume of landing echo dot [media_player.landing_echo_dot] to 0.75. Turn off storylight [light.storylight]. Turn on storylight [light.storylight]. Wait 1 second. Turn off storylight [light.storylight]. Wait 1 second. Turn on storylight [light.storylight]. Wait 1 second. Send TTS notification 'Time for bed. iPad's away. Night night.' to landing echo dot [media_player.landing_echo_dot]. Wait 10 seconds. Send TTS notification 'Time for bed. iPad's away. Night night.' to landing echo dot [media_player.landing_echo_dot]. Turn off abigail's ipad switch [switch.abigail_s_ipad]. Turn off george's ipad switch [switch.george_s_ipad].", "natural_language": { "trigger": "The automation triggers every day at 8:30 PM.", "conditions": "It only runs if the school day sensor [binary_sensor.school_day] indicates that it is a school day.", "action": "It first sets the volume on the landing echo dot [media_player.landing_echo_dot] to 75%. Then, it blinks the storylight [light.storylight] by turning it off, on, waiting a second, off, waiting a second, and on again. After a final one-second delay, it uses the Echo Dot to announce 'Time for bed. iPad's away. Night night.' via text-to-speech. It waits ten seconds and repeats the same announcement. Finally, it turns off the switches for Abigail's iPad [switch.abigail_s_ipad] and George's iPad [switch.george_s_ipad]." }, "human_like": "At bedtime on school nights, this routine sets the mood with a light signal, announces bedtime, and turns off the kids' iPads.", "complexity": "medium" } }, { "id": "'1672934008638'", "result": { "structured": "TRIGGER: When the Philips Hue Smart Button [device_id: dccd62e50d847fc0e16580a4a0afde21] sends a short press (turn_on) OR a long press (turn_on) OR a double press (turn_on) OR a triple press (turn_on) OR a quadruple press (turn_on) OR a quintuple press (turn_on) OR a short release (turn_on) OR a long release (turn_on). CONDITIONS: None. ACTIONS: None.", "natural_language": { "trigger": "When the Philips Hue Smart Button [device_id: dccd62e50d847fc0e16580a4a0afde21] is pressed or released in any of the following ways: a short press, a long press, a double press, a triple press, a quadruple press, a quintuple press, a short release after a press, or a long release after a press.", "conditions": "There are no conditions to be met.", "action": "No actions are defined." }, "human_like": "This automation is a placeholder that listens for all button press and release events from a Philips Hue Smart Button but does not perform any actions.", "complexity": "low" } }, { "id": "'1673137894967'", "result": { "structured": "TRIGGER: None (trigger list is empty). CONDITIONS: None (condition list is empty). ACTIONS: WHILE (bathroom motion sensor occupancy [binary_sensor.lumi_lumi_motion_agl04_occupancy] is occupied AND bathroom temporary override [input_boolean.bathroom_temporary_override] is on) REPEAT: Wait for 1 minute. After the loop ends, send a notification to mobile_app_myphone with the message 'Override ended, occupancy cleared.'.", "natural_language": { "trigger": "This automation has no triggers; it is designed to be executed manually or by another automation.", "conditions": "This automation has no initial conditions; the logic is contained within the action sequence.", "action": "The automation enters a loop that continues while the bathroom motion sensor occupancy [binary_sensor.lumi_lumi_motion_agl04_occupancy] reports the area is occupied and the bathroom temporary override [input_boolean.bathroom_temporary_override] is turned on. Inside the loop, it waits for one minute before checking the conditions again. Once either the motion sensor no longer detects occupancy or the override is turned off, the loop ends. After the loop ends, it sends a notification to a mobile phone with the message 'Override ended, occupancy cleared.'." }, "human_like": "This automation monitors the bathroom for occupancy while a temporary override is active, sending a notification when the override ends.", "complexity": "medium" } }, { "id": "'1673213709016'", "result": { "structured": "TRIGGER: When bathroom door sensor [binary_sensor.lumi_lumi_sensor_magnet_aq2_opening] changes state OR When bathroom motion sensor [binary_sensor.lumi_lumi_motion_agl04_iaszone] changes state. CONDITIONS: None. ACTIONS: When bathroom motion sensor [binary_sensor.lumi_lumi_motion_agl04_iaszone] detects motion (on), set bathroom last motion [input_datetime.bathroom_last_motion] to the current time. When bathroom door sensor [binary_sensor.lumi_lumi_sensor_magnet_aq2_opening] is opened (on), turn on bathroom occupancy helper [input_boolean.bathroom_occupancy_helper]. When bathroom door sensor [binary_sensor.lumi_lumi_sensor_magnet_aq2_opening] is closed (off), wait for turn_off_delay (60 seconds) and then turn off bathroom occupancy helper [input_boolean.bathroom_occupancy_helper].", "natural_language": { "trigger": "The automation is triggered whenever the bathroom door sensor [binary_sensor.lumi_lumi_sensor_magnet_aq2_opening] changes its open/closed state, or when the bathroom motion sensor [binary_sensor.lumi_lumi_motion_agl04_iaszone] changes its motion detection state.", "conditions": "There are no conditions that must be met for the actions to run; the automation executes based solely on the triggers.", "action": "If the bathroom motion sensor [binary_sensor.lumi_lumi_motion_agl04_iaszone] detects motion, the automation records the current time in the bathroom last motion [input_datetime.bathroom_last_motion] helper. If the bathroom door sensor [binary_sensor.lumi_lumi_sensor_magnet_aq2_opening] is opened, it turns on the bathroom occupancy helper [input_boolean.bathroom_occupancy_helper]. When the door is closed, it waits for 60 seconds and then turns off the bathroom occupancy helper [input_boolean.bathroom_occupancy_helper]." }, "human_like": "Tracks bathroom occupancy by turning on a helper when the door opens, and turning it off 60 seconds after the door closes, while also logging the time of the last motion detection.", "complexity": "medium" } }, { "id": "'1673557785450'", "result": { "structured": "TRIGGER: When LoraTap 3-button switch Jessica [device_id: 9c56b6e42144c29116d5c51d41c6a0a5] button 1 is short-pressed OR button 1 is double-pressed OR button 1 is long-pressed OR button 2 is short-pressed OR button 2 is double-pressed OR button 2 is long-pressed OR button 3 is short-pressed OR button 3 is double-pressed OR button 3 is long-pressed. CONDITIONS: None. ACTIONS: If the trigger is button 1 short-press, toggle master bedroom light [light.master_bedroom_light_light] with a 1-second transition. If the trigger is button 1 double-press, do nothing. If the trigger is button 1 long-press, do nothing. If the trigger is button 2 short-press, toggle bed light [light.bed_light_huelight] with a 1-second transition. If the trigger is button 2 double-press, do nothing. If the trigger is button 2 long-press, do nothing. If the trigger is button 3 short-press, turn off all master bedroom lights [light.all_master_bedroom_lights] with a 1-second transition. If the trigger is button 3 double-press, do nothing. If the trigger is button 3 long-press, do nothing.", "natural_language": { "trigger": "The automation is triggered by any button press event from the LoraTap 3-button switch Jessica [device_id: 9c56b6e42144c29116d5c51d41c6a0a5]. This includes a short press, double press, or long press on button 1, button 2, or button 3.", "conditions": "There are no conditions that must be met for the actions to run.", "action": "Depending on which button was pressed, the automation performs a different action. A single press on button 1 toggles the main master bedroom light [light.master_bedroom_light_light]. A single press on button 2 toggles the bed light [light.bed_light_huelight]. A single press on button 3 turns off all the lights in the master bedroom [light.all_master_bedroom_lights]. All light changes use a smooth 1-second transition. Double presses and long presses on any button are configured to do nothing." }, "human_like": "Controls the master bedroom lights using a 3-button remote switch, toggling specific lights or turning them all off with different button presses.", "complexity": "medium" } }, { "id": "'1673559903698'", "result": { "structured": "TRIGGER: When loratap 3-button switch jonathan [device_id: ba0003bb3f3278e9e0c2b9d3ff98d26b] button 1 is short-pressed OR button 1 is double-pressed OR button 1 is long-pressed OR button 2 is short-pressed OR button 2 is double-pressed OR button 2 is long-pressed OR button 3 is short-pressed OR button 3 is double-pressed OR button 3 is long-pressed. CONDITIONS: None. ACTIONS: If button 1 short-press trigger, toggle master bedroom light [light.master_bedroom_light_light] with a 1-second transition. If button 1 double-press trigger, no action. If button 1 long-press trigger, no action. If button 2 short-press trigger, toggle bed light [light.bed_light_huelight] with a 1-second transition. If button 2 double-press trigger, no action. If button 2 long-press trigger, no action. If button 3 short-press trigger, turn off all master bedroom lights [light.all_master_bedroom_lights] with a 1-second transition. If button 3 double-press trigger, no action. If button 3 long-press trigger, no action.", "natural_language": { "trigger": "When any button on the loratap 3-button switch jonathan [device_id: ba0003bb3f3278e9e0c2b9d3ff98d26b] is pressed, whether it's a single press, double press, or long press on button 1, button 2, or button 3.", "conditions": "There are no conditions that need to be met.", "action": "Depending on which button press is detected: a single press on button 1 toggles the master bedroom light [light.master_bedroom_light_light]; a single press on button 2 toggles the bed light [light.bed_light_huelight]; a single press on button 3 turns off all master bedroom lights [light.all_master_bedroom_lights]. All light changes use a smooth 1-second transition. Double presses and long presses on any button do not trigger any action." }, "human_like": "Controls the master bedroom lights using a 3-button remote: button 1 toggles the main light, button 2 toggles the bed light, and button 3 turns off all lights.", "complexity": "medium" } }, { "id": "'1673615338578'", "result": { "structured": "TRIGGER: When smoke sensor 1 [binary_sensor.heiman_smokesensor_ef_3_0_iaszone] detects smoke (type: smoke) OR When smoke sensor 1 [binary_sensor.heiman_smokesensor_ef_3_0_iaszone] changes state from 'on' to 'off' OR When smoke sensor 2 [binary_sensor.heiman_smokesensor_ef_3_0_iaszone_2] detects smoke (type: smoke) OR When smoke sensor 2 [binary_sensor.heiman_smokesensor_ef_3_0_iaszone_2] changes state from 'on' to 'off'. CONDITIONS: None. ACTIONS: Call Notification Handler Script [script.notification_handler] with a critical notification. The notification title and message are 'Smoke [Trigger ID] in [Area Name]!' where [Trigger ID] is the ID of the trigger (e.g., 'Detected' or 'Cleared') and [Area Name] is the area name derived from the triggering entity.", "natural_language": { "trigger": "The automation can be triggered in four ways: when smoke sensor 1 [binary_sensor.heiman_smokesensor_ef_3_0_iaszone] detects smoke; when smoke sensor 1 [binary_sensor.heiman_smokesensor_ef_3_0_iaszone] changes from a smoke-detected ('on') state to a clear ('off') state; when smoke sensor 2 [binary_sensor.heiman_smokesensor_ef_3_0_iaszone_2] detects smoke; or when smoke sensor 2 [binary_sensor.heiman_smokesensor_ef_3_0_iaszone_2] changes from a smoke-detected ('on') state to a clear ('off') state. Two additional triggers based on a 'no_smoke' device event are present but disabled.", "conditions": "There are no conditions for this automation.", "action": "The automation sends a critical notification by calling the Notification Handler Script [script.notification_handler]. The notification's title and message will state 'Smoke [Trigger ID] in [Area Name]!', where [Trigger ID] is based on which trigger fired (like 'Detected' or 'Cleared') and [Area Name] is automatically determined from the room or area of the sensor that triggered the event." }, "human_like": "Sends a critical alert whenever either smoke sensor detects smoke or clears a smoke alarm, notifying the user of the event.", "complexity": "medium" } }, { "id": "'1673621771425'", "result": { "structured": "TRIGGER: When carbon monoxide sensor [binary_sensor.heiman_cosensor_ef_3_0_iaszone] detects gas (type: gas) OR When carbon monoxide sensor [binary_sensor.heiman_cosensor_ef_3_0_iaszone] clears from gas detection (state changes from 'on' to 'off'). CONDITIONS: None. ACTIONS: Run the Notification Handler Script [script.notification_handler] with a critical notification. The notification title and message are 'Carbon Monoxide [Trigger ID] in [Area Name]!', where [Trigger ID] is the ID of the trigger that fired (e.g., 'Detected' or 'Cleared') and [Area Name] is the area name of the triggering entity.", "natural_language": { "trigger": "When the carbon monoxide sensor [binary_sensor.heiman_cosensor_ef_3_0_iaszone] detects a gas event, or when its state changes from 'on' (detecting) to 'off' (clear).", "conditions": "There are no conditions for this automation.", "action": "Sends a critical notification using the Notification Handler Script [script.notification_handler]. The notification announces whether carbon monoxide was 'Detected' or 'Cleared' and includes the area where the sensor is located." }, "human_like": "Sends urgent notifications when the carbon monoxide alarm is triggered or cleared.", "complexity": "low" } }, { "id": "'1673881006523'", "result": { "structured": "TRIGGER: When all zigbee lights group [light.silicon_labs_ezsp_all_zigbee_lights_zha_group_0x0008] becomes unavailable. CONDITIONS: None. ACTIONS: If the trigger was the unavailable event, then call Notification Handler Script [script.notification_handler] with a critical system notification message 'The Zigbee network appears to be down.'.", "natural_language": { "trigger": "When the all zigbee lights group [light.silicon_labs_ezsp_all_zigbee_lights_zha_group_0x0008] changes its state to 'unavailable'.", "conditions": "There are no conditions for this automation.", "action": "Sends a critical system notification via the Notification Handler Script [script.notification_handler] with the message 'The Zigbee network appears to be down.'." }, "human_like": "Sends a critical alert when the Zigbee network goes down, as detected by the group of all Zigbee lights becoming unavailable.", "complexity": "low" } }, { "id": "'1674058394534'", "result": { "structured": "TRIGGER: At 07:15:00 daily. CONDITIONS: school day sensor [binary_sensor.school_day] is on. ACTIONS: Start a 15-minute sunrise effect on Kids Bedroom Light Light [light.kids_bedroom_light_light], ramping brightness to 200.", "natural_language": { "trigger": "Every day at 7:15 AM.", "conditions": "Only if the school day sensor [binary_sensor.school_day] indicates it is a school day.", "action": "Gradually increases the brightness of the Kids Bedroom Light Light [light.kids_bedroom_light_light] over 15 minutes to a final brightness level of 200, simulating a sunrise." }, "human_like": "Gradually turns on the kids' bedroom light in the morning on school days to simulate a sunrise.", "complexity": "low" } }, { "id": "'1674516886522'", "result": { "structured": "TRIGGER: When dining room lights switch [device_id: 61f9c63578d75df91ecb5c6463fb91c8] button 1 is short-pressed OR button 1 is double-pressed OR button 1 is long-pressed OR button 2 is short-pressed OR button 2 is double-pressed OR button 2 is long-pressed OR button 3 is short-pressed OR button 3 is double-pressed OR button 3 is long-pressed OR button 4 is short-pressed OR button 4 is double-pressed OR button 4 is long-pressed OR button 5 is short-pressed OR button 5 is double-pressed OR button 5 is long-pressed OR button 6 is short-pressed OR button 6 is double-pressed OR button 6 is long-pressed. CONDITIONS: None. ACTIONS: Choose based on trigger: IF trigger is button 1 short-press THEN toggle dining room lights [light.dining_room_lights] with a 2-second transition, color temperature 238, and brightness 100%. IF trigger is button 1 double-press THEN turn on dining room lights [light.dining_room_lights] with a 2-second transition, color temperature 238, and brightness 100%. IF trigger is button 1 long-press THEN turn off dining room lights [light.dining_room_lights] with a 2-second transition. IF trigger is button 3 short-press THEN decrease brightness of dining room lights [light.dining_room_lights] by 10%. IF trigger is button 4 short-press THEN increase brightness of dining room lights [light.dining_room_lights] by 10%. IF trigger is button 5 short-press THEN increase color temperature of dining room lights [light.dining_room_lights] by 34.6 units. IF trigger is button 6 short-press THEN decrease color temperature of dining room lights [light.dining_room_lights] by 34.6 units.", "natural_language": { "trigger": "When any button (1 through 6) on the dining room lights switch [device_id: 61f9c63578d75df91ecb5c6463fb91c8] is pressed with a short, double, or long press.", "conditions": "There are no conditions; the automation runs whenever a trigger occurs.", "action": "Depending on which button and press type is detected, different actions are performed on the dining room lights [light.dining_room_lights]. A short press on button 1 toggles the lights on/off with a warm white color and full brightness. A double press on button 1 ensures the lights are on with the same settings. A long press on button 1 turns the lights off. A short press on button 3 dims the lights by 10%. A short press on button 4 brightens the lights by 10%. A short press on button 5 makes the light color cooler (increases color temperature). A short press on button 6 makes the light color warmer (decreases color temperature)." }, "human_like": "Controls the dining room lights using a multi-button remote, allowing toggling, dimming, and adjusting color temperature with different button presses.", "complexity": "medium" } }, { "id": "'1674569382639'", "result": { "structured": "TRIGGER: When the sun's elevation changes OR when the people home sensor [sensor.people_home] state changes. CONDITIONS: (people home sensor [sensor.people_home] indicates presence) AND (sleep mode is not active). ACTIONS: Adjust the brightness and color temperature of dining room lights [light.dining_room_lights] according to the 'Day & night (cosine)' circadian function based on the sun's position.", "natural_language": { "trigger": "The automation triggers when the sun's position in the sky changes, or when the sensor that detects if people are home [sensor.people_home] changes its state.", "conditions": "The automation only runs if the people home sensor [sensor.people_home] indicates that someone is present at home, and if a separate sleep mode is not active.", "action": "It adjusts the dining room lights [light.dining_room_lights] to follow a natural day and night cycle, making them brighter and cooler during the day and dimmer and warmer at night." }, "human_like": "Automatically adjusts the dining room lights to mimic natural daylight based on the time of day and whether someone is home.", "complexity": "medium" } }, { "id": "'1674574826588'", "result": { "structured": "TRIGGER: When calendar octopus energy saving sessions [calendar.octopus_energy_saving_sessions] event starts (with a 1-minute offset before the start) OR when calendar octopus energy saving sessions [calendar.octopus_energy_saving_sessions] event ends (with a 1-minute offset after the end). CONDITIONS: None. ACTIONS: If the trigger is StartOfEvent, then turn off saving session switch [switch.saving_session]. If the trigger is EndOfEvent, then turn on saving session switch [switch.saving_session].", "natural_language": { "trigger": "When a scheduled saving session event on the calendar octopus energy saving sessions [calendar.octopus_energy_saving_sessions] is about to start (one minute before the start time) or has just ended (one minute after the end time).", "conditions": "There are no additional conditions that must be met for the automation to run.", "action": "If the trigger is the start of the event, the automation turns off the saving session switch [switch.saving_session]. If the trigger is the end of the event, the automation turns on the saving session switch [switch.saving_session]." }, "human_like": "Automatically toggles a switch off at the start of an energy-saving event and back on when it ends, based on a calendar schedule.", "complexity": "medium" } }, { "id": "'1676115894031'", "result": { "structured": "TRIGGER: When wled f1352d text input [input_text.wled_f1352d_text] changes state. CONDITIONS: None. ACTIONS: Call service rest_command.wled_f1352d_text with data parameter 'text' set to the current state of wled f1352d text input [input_text.wled_f1352d_text].", "natural_language": { "trigger": "Whenever the text in the wled f1352d text input [input_text.wled_f1352d_text] is changed.", "conditions": "There are no conditions; the action runs immediately after the trigger.", "action": "Sends the updated text from the input field to a WLED device by calling the 'wled_f1352d_text' REST command." }, "human_like": "Updates a WLED light display with text whenever the text input field is changed.", "complexity": "low" } }, { "id": "'1676118038462'", "result": { "structured": "TRIGGER: When wled d9dc04 text input [input_text.wled_d9dc04_text] changes state. CONDITIONS: None. ACTIONS: Call service rest_command.wled_d9dc04_text with data: text = current state of wled d9dc04 text input [input_text.wled_d9dc04_text].", "natural_language": { "trigger": "Whenever the text value in the input field wled d9dc04 text input [input_text.wled_d9dc04_text] is updated.", "conditions": "There are no conditions that must be met.", "action": "Sends the current text from the input field to a WLED device via the rest_command.wled_d9dc04_text service." }, "human_like": "Sends any text typed into the 'wled d9dc04 text input' field to a WLED light display.", "complexity": "low" } }, { "id": "'1677537054099'", "result": { "structured": "TRIGGER: When aurora visibility alert sensor [binary_sensor.aurora_visibility_aurora_visibility_alert] is turned on. CONDITIONS: None. ACTIONS: Execute script Notification Handler Script [script.notification_handler] with data: is_critical true, is_debug false, is_system false, title 'AuroraWatch Alert', message 'The aurora borealis will likely be visible in your location!'.", "natural_language": { "trigger": "When the aurora visibility alert sensor [binary_sensor.aurora_visibility_aurora_visibility_alert] is turned on.", "conditions": "There are no conditions.", "action": "Sends a critical notification using the Notification Handler Script [script.notification_handler]. The notification will have the title 'AuroraWatch Alert' and the message 'The aurora borealis will likely be visible in your location!'." }, "human_like": "Sends an alert when the aurora borealis is likely to be visible.", "complexity": "low" } }, { "id": "'1682286128927'", "result": { "structured": "TRIGGER: When bathroom binary sensors [binary_sensor.bathroom_binary_sensors] detects motion. CONDITIONS: (bathroom temporary override [input_boolean.bathroom_temporary_override] is off) AND (bathroom illuminance sensor [sensor.lumi_lumi_sen_ill_mgl01_illuminance] reports illuminance below 90 lux). ACTIONS: If current time is between bathroom night start time [input_datetime.bathroom_night_start] and bathroom night end time [input_datetime.bathroom_night_end], activate bathroom night toilet and sink lights scene [scene.bathroom_night_toilet_and_sink_lights_only_warm_white_50_brightness]. Otherwise, activate reset bathroom lights lights on scene [scene.reset_bathroom_lights_lights_on]. After motion stops, wait for a delay (10 minutes if bypass_enabled_stop is active, else a standard delay) then activate reset bathroom lights lights off scene [scene.reset_bathroom_lights_lights_off].", "natural_language": { "trigger": "The automation triggers when motion is detected by the bathroom binary sensors [binary_sensor.bathroom_binary_sensors].", "conditions": "It requires that the bathroom temporary override [input_boolean.bathroom_temporary_override] is not active (off) and that the ambient light level measured by the bathroom illuminance sensor [sensor.lumi_lumi_sen_ill_mgl01_illuminance] is below 90 lux.", "action": "If the current time falls within the night period defined by the bathroom night start time [input_datetime.bathroom_night_start] and bathroom night end time [input_datetime.bathroom_night_end], it turns on a dimmed night scene for the toilet and sink lights [scene.bathroom_night_toilet_and_sink_lights_only_warm_white_50_brightness]. Otherwise, it turns on the regular bathroom lights using the reset bathroom lights lights on scene [scene.reset_bathroom_lights_lights_on]. After motion is no longer detected, it waits for a period (10 minutes if a bypass feature is enabled, otherwise a standard delay) and then turns off all lights by activating the reset bathroom lights lights off scene [scene.reset_bathroom_lights_lights_off]." }, "human_like": "Automatically turns on bathroom lights with a dimmed night scene during set hours or regular lights otherwise when motion is detected, provided the room is dark enough and no manual override is active, and turns them off after a delay when motion stops.", "complexity": "medium" } }, { "id": "Carbon Monoxide Alarm Handler", "result": { "structured": "TRIGGER: When carbon monoxide sensor [binary_sensor.heiman_cosensor_ef_3_0_iaszone] detects gas (type: gas) OR When carbon monoxide sensor [binary_sensor.heiman_cosensor_ef_3_0_iaszone] reports no gas (type: no_gas) and remains in that state for 30 seconds (disabled trigger) OR When carbon monoxide sensor [binary_sensor.heiman_cosensor_ef_3_0_iaszone] changes state from 'on' to 'off'. CONDITIONS: None. ACTIONS: Call Notification Handler Script [script.notification_handler] with a data template setting is_critical to true, is_debug to false, is_system to false, title and message to 'Carbon Monoxide {{ trigger.id.title() }} in {{ area_name(trigger.entity_id) }}!'.", "natural_language": { "trigger": "When the carbon monoxide sensor [binary_sensor.heiman_cosensor_ef_3_0_iaszone] detects a gas event, or when it reports a 'no gas' condition (though this specific trigger is disabled), or when its state changes from 'on' to 'off'.", "conditions": "There are no conditions for this automation.", "action": "Sends a critical notification using the Notification Handler Script [script.notification_handler]. The notification title and message will indicate whether carbon monoxide was 'Detected' or 'Cleared' and include the area name where the sensor is located." }, "human_like": "Sends an urgent notification when the carbon monoxide alarm is triggered or cleared.", "complexity": "medium" } }, { "id": "Dehumidifier Handler", "result": { "structured": "TRIGGER: When dining room dehumidifier state sensor [sensor.dining_room_dehumidifier_state] changes from Active to Standby AND remains in Standby for 5 minutes OR When kitchen energy state sensor [sensor.kitchen_energy_state] changes from Active to Standby AND remains in Standby for 5 minutes. CONDITIONS: None. ACTIONS: If the trigger was Dining Room Dehumidifier, then call Notification Handler Script [script.notification_handler] with message 'Empty dining room dehumidifier!'. If the trigger was Kitchen Dehumidifier, then call Notification Handler Script [script.notification_handler] with message 'Empty kitchen dehumidifier!'.", "natural_language": { "trigger": "When the dining room dehumidifier state sensor [sensor.dining_room_dehumidifier_state] changes from 'Active' to 'Standby' and stays that way for five minutes, or when the kitchen energy state sensor [sensor.kitchen_energy_state] changes from 'Active' to 'Standby' and stays that way for five minutes.", "conditions": "There are no conditions for this automation.", "action": "Depending on which dehumidifier triggered the automation, a notification is sent via the Notification Handler Script [script.notification_handler]. If the dining room dehumidifier triggered it, the message is 'Empty dining room dehumidifier!'. If the kitchen dehumidifier triggered it, the message is 'Empty kitchen dehumidifier!'." }, "human_like": "Sends a notification when a dehumidifier has finished its active cycle and has been on standby for five minutes, reminding you to empty it.", "complexity": "medium" } }, { "id": "Dining Room Lights Handler", "result": { "structured": "TRIGGER: When dining room lights switch [device_id: 61f9c63578d75df91ecb5c6463fb91c8] button_1 short press OR button_1 double press OR button_1 long press OR button_2 short press OR button_2 double press OR button_2 long press OR button_3 short press OR button_3 double press OR button_3 long press OR button_4 short press OR button_4 double press OR button_4 long press OR button_5 short press OR button_5 double press OR button_5 long press OR button_6 short press OR button_6 double press OR button_6 long press. CONDITIONS: None. ACTIONS: Choose based on trigger: IF trigger is button_1 short press THEN toggle dining room lights [light.dining_room_lights] with 2-second transition, color temperature 238, brightness 100%. IF trigger is button_1 double press THEN turn on dining room lights [light.dining_room_lights] with 2-second transition, color temperature 238, brightness 100%. IF trigger is button_1 long press THEN turn off dining room lights [light.dining_room_lights] with 2-second transition. IF trigger is button_3 short press THEN increase brightness of dining room lights [light.dining_room_lights] by decreasing brightness step by 10%. IF trigger is button_4 short press THEN increase brightness of dining room lights [light.dining_room_lights] by increasing brightness step by 10%. IF trigger is button_5 short press THEN increase color temperature of dining room lights [light.dining_room_lights] by 34.6 units. IF trigger is button_6 short press THEN decrease color temperature of dining room lights [light.dining_room_lights] by 34.6 units.", "natural_language": { "trigger": "When any button on the dining room lights switch [device_id: 61f9c63578d75df91ecb5c6463fb91c8] is pressed. This includes single, double, or long presses on buttons 1 through 6.", "conditions": "There are no conditions for this automation.", "action": "The action depends on which button press triggered the automation. A single press on button 1 toggles the dining room lights [light.dining_room_lights] on or off, setting them to a specific color temperature and full brightness with a smooth transition. A double press on button 1 turns the lights on with the same settings. A long press on button 1 turns the lights off with a smooth transition. A single press on button 3 dims the lights by 10%. A single press on button 4 brightens the lights by 10%. A single press on button 5 makes the light color cooler (increases color temperature). A single press on button 6 makes the light color warmer (decreases color temperature)." }, "human_like": "Controls the dining room lights using a remote switch, allowing toggling, dimming, and adjusting color temperature with different button presses.", "complexity": "medium" } }, { "id": "GivEnergy EVC Handler", "result": { "structured": "TRIGGER: When GivEnergy EVC Mode Sensor [sensor.givenergy_evc_mode] changes state OR When GivEnergy EVC Mode Select [input_select.givenergy_evc_mode] changes state OR When GivEnergy EVC Max Battery Discharge Power Sensor [sensor.givenergy_evc_max_battery_discharge_power] changes state OR When GivEnergy EVC Max Battery Discharge Power Input [input_number.givenergy_evc_max_battery_discharge_power] changes state OR When GivEnergy EVC Session Energy Limit Sensor [sensor.givenergy_evc_session_energy_limit] changes state OR When GivEnergy EVC Session Energy Limit Input [input_number.givenergy_evc_session_energy_limit] changes state OR When GivEnergy EVC Max Import Capacity Sensor [sensor.givenergy_evc_max_import_capacity] changes state OR When GivEnergy EVC Max Import Capacity Input [input_number.givenergy_evc_max_import_capacity] changes state OR When GivEnergy EVC Solar Export Split Sensor [sensor.givenergy_evc_solar_export_split] changes state OR When GivEnergy EVC Solar Export Split Input [input_number.givenergy_evc_solar_export_split] changes state OR When GivEnergy EVC Inverter Control Mode Sensor [sensor.givenergy_evc_inverter_control_mode] changes state OR When GivEnergy EVC Configure Inverter Mode Select [input_select.givenergy_evc_configure_inverter_mode] changes state OR When GivEnergy EVC Charge Power Limit Sensor [sensor.givenergy_evc_charge_power_limit] changes state OR When GivEnergy EVC Charge Power Limit Input [input_number.givenergy_evc_charge_power_limit] changes state OR When GivEnergy EVC Configuration Mode Sensor [sensor.givenergy_evc_configuration_mode] changes state OR When GivEnergy EVC Configuration Mode Select [input_select.givenergy_evc_configuration_mode] changes state. CONDITIONS: None. ACTIONS: Based on the specific trigger ID, perform the corresponding action: If triggered by get_evc_mode, set GivEnergy EVC Mode Select [input_select.givenergy_evc_mode] to the current state of GivEnergy EVC Mode Sensor [sensor.givenergy_evc_mode]. If triggered by set_evc_mode, send a REST command to set the inverter mode based on the state of GivEnergy EVC Mode Select [input_select.givenergy_evc_mode] (mapping Hybrid->Eco, Solar->SuperEco, Grid->Boost, else->ModbusSlave). If triggered by get_max_discharge_value, set GivEnergy EVC Max Battery Discharge Power Input [input_number.givenergy_evc_max_battery_discharge_power] to the numeric value of GivEnergy EVC Max Battery Discharge Power Sensor [sensor.givenergy_evc_max_battery_discharge_power]. If triggered by set_max_discharge_value, send a REST command to configure inverter control. If triggered by get_session_limit_value, set GivEnergy EVC Session Energy Limit Input [input_number.givenergy_evc_session_energy_limit] to the numeric value of GivEnergy EVC Session Energy Limit Sensor [sensor.givenergy_evc_session_energy_limit]. If triggered by set_session_limit_value, send a REST command to set the session energy limit to the value of GivEnergy EVC Session Energy Limit Input [input_number.givenergy_evc_session_energy_limit]. If triggered by get_max_import_capacity_value, set GivEnergy EVC Max Import Capacity Input [input_number.givenergy_evc_max_import_capacity] to the integer value of GivEnergy EVC Max Import Capacity Sensor [sensor.givenergy_evc_max_import_capacity]. If triggered by set_max_import_capacity_value, send a REST command to set the max import capacity to the value of GivEnergy EVC Max Import Capacity Input [input_number.givenergy_evc_max_import_capacity]. If triggered by get_solar_split_value, set GivEnergy EVC Solar Export Split Input [input_number.givenergy_evc_solar_export_split] to the numeric value of GivEnergy EVC Solar Export Split Sensor [sensor.givenergy_evc_solar_export_split]. If triggered by set_solar_split_value, send a REST command to configure inverter control. If triggered by get_inverter_control_mode, set GivEnergy EVC Configure Inverter Mode Select [input_select.givenergy_evc_configure_inverter_mode] based on the state of GivEnergy EVC Inverter Control Mode Sensor [sensor.givenergy_evc_inverter_control_mode] (mapping SuperEco->Solar, Eco->Hybrid, else->Boost). If triggered by set_inverter_control_mode, send a REST command to configure inverter control. If triggered by get_charge_power_limit_value, set GivEnergy EVC Charge Power Limit Input [input_number.givenergy_evc_charge_power_limit] to the integer value of GivEnergy EVC Charge Power Limit Sensor [sensor.givenergy_evc_charge_power_limit]. If triggered by set_charge_power_limit_value, send a REST command to set the charge power limit to the value of GivEnergy EVC Charge Power Limit Input [input_number.givenergy_evc_charge_power_limit]. If triggered by get_configuration_mode, set GivEnergy EVC Configuration Mode Select [input_select.givenergy_evc_configuration_mode] based on the state of GivEnergy EVC Configuration Mode Sensor [sensor.givenergy_evc_configuration_mode] (mapping A->A: Standalone, B->B: Standalone with PV, C->C: CT Meter, D->D: Inverter Cloud Control, else->Unknown). If triggered by set_configuration_mode, send a REST command to set the configuration mode based on the state of GivEnergy EVC Configuration Mode Select [input_select.givenergy_evc_configuration_mode] (mapping A: Standalone->A, B: Standalone with PV->B, C: CT Meter->C, D: Inverter Cloud Control->D, else->Unknown).", "natural_language": { "trigger": "The automation is triggered by any change in state for a wide range of GivEnergy EVC sensor and input entities. This includes the mode sensor and select, the max battery discharge power sensor and input, the session energy limit sensor and input, the max import capacity sensor and input, the solar export split sensor and input, the inverter control mode sensor and select, the charge power limit sensor and input, and the configuration mode sensor and select.", "conditions": "There are no conditions; the automation runs whenever any of the listed triggers occur.", "action": "The action depends entirely on which specific trigger fired. In general, it performs a two-way synchronization between sensor values and user-facing input controls. When a sensor value changes, it updates the corresponding input entity (like an input_number or input_select) to reflect that value. Conversely, when a user changes an input entity, it sends a corresponding REST command to the GivEnergy system to apply the new setting. This covers modes, power limits, capacity settings, and configuration options." }, "human_like": "This automation keeps the Home Assistant interface for the GivEnergy EV charger in sync with the actual device, allowing users to view and change settings like operation mode and power limits.", "complexity": "high" } }, { "id": "Grid Status Notifications", "result": { "structured": "TRIGGER: When grid status sensor [binary_sensor.grid_status] changes from off to on AND remains on for 10 seconds OR When grid status sensor [binary_sensor.grid_status] changes from on to off AND remains off for 10 seconds. CONDITIONS: None. ACTIONS: If the trigger was grid_lost, then call Notification Handler Script [script.notification_handler] with a message containing current load power, battery state of charge, and estimated battery runtime. If the trigger was grid_resumed, then call Notification Handler Script [script.notification_handler] with a message confirming grid resumption and containing current load power and battery state of charge.", "natural_language": { "trigger": "When the grid status sensor [binary_sensor.grid_status] changes from off to on and stays that way for 10 seconds, or when it changes from on to off and stays that way for 10 seconds.", "conditions": "There are no conditions for this automation.", "action": "If the grid was lost, it sends a notification via the Notification Handler Script [script.notification_handler] stating the grid connection is lost, the house is on battery, and provides details on current power load, battery charge level, and estimated remaining battery runtime. If the grid resumed, it sends a notification via the Notification Handler Script [script.notification_handler] confirming the grid connection is back and provides details on current power load and battery charge level." }, "human_like": "Sends notifications when the home's connection to the electrical grid is lost or restored, including current battery and power usage details.", "complexity": "medium" } }, { "id": "Extract Event Details from Email", "result": { "structured": "TRIGGER: When an imap_content event occurs. CONDITIONS: The event data text contains the phrase 'Fill your boots on'. ACTIONS: Extract the email content and parse it using regex patterns from input_text.octopus_free_electricity_regex_date, input_text.octopus_free_electricity_regex_start, and input_text.octopus_free_electricity_regex_end to determine the event date, start time, and end time. Convert times to 24-hour format if needed and adjust the year if the parsed date is in the past. Set octopus free electricity start time [input_datetime.octopus_free_electricity_start] to the calculated start datetime (or a default of 1970-01-01 00:00:00 if parsing fails). Set octopus free electricity end time [input_datetime.octopus_free_electricity_end] to the calculated end datetime (or a default of 1970-01-01 00:00:00 if parsing fails).", "natural_language": { "trigger": "When an email is received and triggers an imap_content event.", "conditions": "The email's text must contain the phrase 'Fill your boots on'.", "action": "The automation extracts the email content and uses predefined regular expression patterns stored in input_text.octopus_free_electricity_regex_date, input_text.octopus_free_electricity_regex_start, and input_text.octopus_free_electricity_regex_end to find the event date, start hour, and end hour. It converts the start and end times to 24-hour format if they are in the afternoon, and ensures the event date is in the current or next year if the parsed date is in the past. Finally, it sets the octopus free electricity start time [input_datetime.octopus_free_electricity_start] and octopus free electricity end time [input_datetime.octopus_free_electricity_end] to the calculated datetime values, using a default value if parsing fails." }, "human_like": "Parses an email notification about free electricity periods to automatically set the start and end times for the event.", "complexity": "high" } } ]