AutomationDataset/mikeodr/automation-descriptions.json

1718 lines
176 KiB
JSON

[
{
"id": "alarm_device_tracker_for_twins",
"result": {
"structured": "TRIGGER: When Girls home override [input_boolean.girls_home_override] changes state. CONDITIONS: The new state of Girls home override [input_boolean.girls_home_override] is either 'off' or 'on'. ACTIONS: Update the location of a faux device tracker with ID 'faux_girls_home' to 'home' if the new state is 'on', otherwise to 'not_home'.",
"natural_language": {
"trigger": "Whenever the Girls home override [input_boolean.girls_home_override] changes its state.",
"conditions": "The new state of the Girls home override [input_boolean.girls_home_override] must be either 'off' or 'on'.",
"action": "Updates a virtual device tracker named 'faux_girls_home', setting its location to 'home' if the override is turned on, or to 'not_home' if it is turned off."
},
"human_like": "Creates a virtual presence for the twins based on a manual override switch, marking them as home or away accordingly.",
"complexity": "low"
}
},
{
"id": "alarm_guests_present_reminder",
"result": {
"structured": "TRIGGER: When Presence home group [group.presence_home] changes to not_home. CONDITIONS: Guests present [binary_sensor.guests_present] is on. ACTIONS: Send a notification to mobile_app_michaels_iphone with the message '🛡️ Guests home, alarm not armed 🛡️'.",
"natural_language": {
"trigger": "When the Presence home group [group.presence_home] indicates that no one is home.",
"conditions": "If the Guests present [binary_sensor.guests_present] sensor is on, meaning guests are detected as being in the home.",
"action": "Sends a notification to Michael's iPhone to remind them that guests are home and the alarm is not armed."
},
"human_like": "Sends a phone notification to remind the homeowner that guests are present and the alarm is not set when everyone else leaves.",
"complexity": "low"
}
},
{
"id": "2c36b0b2-3180-40e1-9cc8-f37660cf62e7",
"result": {
"structured": "TRIGGER: When Mike [person.mike] arrives home. CONDITIONS: Guests present [binary_sensor.guests_present] is on. ACTIONS: Send a notification to mobile_app_michaels_iphone with title 'Guests Present Reminder' and message 'Need to disable guests present?', including a URL to /dashboard-security/home.",
"natural_language": {
"trigger": "When Mike [person.mike] arrives home.",
"conditions": "The Guests present [binary_sensor.guests_present] indicator is currently on.",
"action": "Sends a notification to Michael's iPhone with a reminder to disable the 'Guests present' status, including a link to the security dashboard."
},
"human_like": "Sends a reminder to Mike's phone when he arrives home if the 'Guests present' mode is still active.",
"complexity": "low"
}
},
{
"id": "alarm_arm_based_on_presence",
"result": {
"structured": "TRIGGER: When Presence home group [group.presence_home] changes state to any value except 'unavailable' or 'unknown'. CONDITIONS: Guests present [binary_sensor.guests_present] is off AND Faux girls home tracker [device_tracker.faux_girls_home] is not_home. ACTIONS: First, retrieve events from House planning calendar [calendar.house_planning] for the next 8 hours, storing the result in variable 'cal'. Then, if there are no events in the calendar with 'Cleaners' in the summary, call the service alarm_control_panel.alarm_disarm or alarm_control_panel.alarm_arm_away on Master alarm [alarm_control_panel.master]. The service name is determined by the trigger state: 'disarm' if the new state is 'home', otherwise 'arm_away'. Finally, if the trigger state is 'home', set My ecobee current mode select [select.my_ecobee_current_mode] to 'home'.",
"natural_language": {
"trigger": "Whenever the Presence home group [group.presence_home] changes its state to any valid value, excluding 'unavailable' or 'unknown'.",
"conditions": "The Guests present [binary_sensor.guests_present] sensor must be off, indicating no guests are present, and the Faux girls home tracker [device_tracker.faux_girls_home] must show as not_home.",
"action": "The automation first checks the House planning calendar [calendar.house_planning] for any events in the next 8 hours. If no events contain 'Cleaners' in the title, it will either disarm or arm the Master alarm [alarm_control_panel.master] based on the home presence state: disarm if everyone is home, or arm away if they are not. Additionally, if the presence state is 'home', it sets the My ecobee current mode select [select.my_ecobee_current_mode] to 'home'."
},
"human_like": "Automatically arms or disarms the house alarm based on who is home, while also adjusting the thermostat mode, but only if no cleaners are scheduled.",
"complexity": "medium"
}
},
{
"id": "alarm_auto_arm_night_mode",
"result": {
"structured": "TRIGGER: When the time is 00:00:00 OR When the time is 01:00:00 OR When the event 'goodnight_event' occurs. CONDITIONS: (Mike [person.mike] is home OR Tiff [person.tiff] is home) AND Master alarm [alarm_control_panel.master] is disarmed. ACTIONS: In parallel: Turn off lights on basement and main_floor floors, Close Garage cover [cover.garage], Lock Lock locks [lock.locks]. Then wait until Garage cover [cover.garage] is closed. Then turn off Living room TV [media_player.living_room_tv]. Then wait until Basement presence sensor [binary_sensor.basement_presence] is off (no presence). Then arm Master alarm [alarm_control_panel.master] in night mode.",
"natural_language": {
"trigger": "The automation triggers at midnight, at 1:00 AM, or when a 'goodnight_event' is received.",
"conditions": "At least one person, either Mike [person.mike] or Tiff [person.tiff], must be at home, and the Master alarm [alarm_control_panel.master] must be disarmed.",
"action": "The automation performs several actions in sequence. First, it simultaneously turns off all lights in the basement and main floor, closes the Garage cover [cover.garage], and locks the Lock locks [lock.locks]. It then waits for the garage cover to be fully closed. Next, it turns off the Living room TV [media_player.living_room_tv]. It then waits until the Basement presence sensor [binary_sensor.basement_presence] detects no one is present. Finally, it arms the Master alarm [alarm_control_panel.master] in night mode."
},
"human_like": "Automatically prepares the house for the night by securing doors, turning off lights and the TV, and arming the alarm when it's time for bed.",
"complexity": "medium"
}
},
{
"id": "alarm_disable_armed_night_ios_wakeup",
"result": {
"structured": "TRIGGER: When an iOS wakeup event occurs OR when the time is exactly 05:00:00. CONDITIONS: Master alarm [alarm_control_panel.master] is in the state armed_night. ACTIONS: Disarm Master alarm [alarm_control_panel.master].",
"natural_language": {
"trigger": "The automation is triggered either when an iOS device sends a wakeup event, or at exactly 5:00 AM.",
"conditions": "The Master alarm [alarm_control_panel.master] must be in the 'armed_night' mode.",
"action": "The Master alarm [alarm_control_panel.master] is disarmed."
},
"human_like": "Disarms the master alarm when it's in night mode and either an iOS device wakes up or it's 5 AM.",
"complexity": "low"
}
},
{
"id": "alarm_lock_all_doors_armed",
"result": {
"structured": "TRIGGER: When Master alarm [alarm_control_panel.master] changes to state arming OR armed_night OR armed_vacation OR armed_away. CONDITIONS: None. ACTIONS: Lock Front door lock [lock.front_door] AND lock Side door lock [lock.side_door].",
"natural_language": {
"trigger": "When the Master alarm [alarm_control_panel.master] is set to any of the armed states: arming, armed_night, armed_vacation, or armed_away.",
"conditions": "There are no conditions that must be met.",
"action": "Lock the Front door lock [lock.front_door] and the Side door lock [lock.side_door]."
},
"human_like": "Automatically locks the front and side doors when the home alarm system is armed.",
"complexity": "low"
}
},
{
"id": "alarm_alert_garage_left_open",
"result": {
"structured": "TRIGGER: When Master alarm [alarm_control_panel.master] changes to arming OR armed_night OR armed_vacation OR armed_away. CONDITIONS: Garage cover [cover.garage] is open. ACTIONS: Take a snapshot from Garage low resolution channel camera [camera.garage_low_resolution_channel] and save it to /media/garage/snapshot.jpg (continue on error). Then, send a notification to mobile_app_michaels_iphone with message '🚪 Garage Door Left Open 🚪', including the snapshot image and an action button to close the garage.",
"natural_language": {
"trigger": "When the Master alarm [alarm_control_panel.master] is set to an armed state, such as arming, armed_night, armed_vacation, or armed_away.",
"conditions": "The Garage cover [cover.garage] must be open at the time the alarm is armed.",
"action": "The automation takes a snapshot from the Garage low resolution channel camera [camera.garage_low_resolution_channel] and saves it to a file. It then sends a push notification to the user's iPhone with the snapshot, a warning message about the garage door being open, and a button to close the garage door."
},
"human_like": "Sends an alert with a snapshot to your phone if the garage door is left open when the alarm is armed.",
"complexity": "low"
}
},
{
"id": "alarm_lights_on_triggered_night",
"result": {
"structured": "TRIGGER: When Master alarm [alarm_control_panel.master] changes from armed_night to triggered. CONDITIONS: None. ACTIONS: Turn on lights on the basement and main_floor floors.",
"natural_language": {
"trigger": "When the Master alarm [alarm_control_panel.master] transitions from being armed in night mode to being triggered.",
"conditions": "There are no conditions that must be met.",
"action": "Turns on all lights located on the basement and main_floor floors."
},
"human_like": "Turns on the indoor lights on the basement and main floor when the house alarm is triggered while in night mode.",
"complexity": "low"
}
},
{
"id": "alarm_turn_off_all_lights",
"result": {
"structured": "TRIGGER: When Master alarm [alarm_control_panel.master] changes to armed_vacation OR armed_away. CONDITIONS: None. ACTIONS: Turn off all lights on the basement, main_floor, and top_floor floors.",
"natural_language": {
"trigger": "When the Master alarm [alarm_control_panel.master] is set to either 'armed_vacation' or 'armed_away' mode.",
"conditions": "There are no conditions that must be met.",
"action": "Turns off all lights located on the basement, main floor, and top floor."
},
"human_like": "Turns off all indoor lights when the house alarm is set to away or vacation mode.",
"complexity": "low"
}
},
{
"id": "alarm_turn_off_lights_bedtime",
"result": {
"structured": "TRIGGER: When Master alarm [alarm_control_panel.master] changes to armed_night. CONDITIONS: None. ACTIONS: Turn off all lights on the basement and main_floor floors.",
"natural_language": {
"trigger": "When the Master alarm [alarm_control_panel.master] is set to the 'armed_night' mode.",
"conditions": "There are no conditions that need to be met.",
"action": "Turns off all lights located on the basement and main_floor floors."
},
"human_like": "Turns off the lights on the basement and main floor when the house alarm is set to night mode.",
"complexity": "low"
}
},
{
"id": "alarm_set_switch_status_leds",
"result": {
"structured": "TRIGGER: When Lock locks [lock.locks] OR Garage cover [cover.garage] OR Doors binary sensor [binary_sensor.doors] changes state (excluding changes from/to unknown, unavailable, opening, or closing) OR When Garage cover [cover.garage] starts closing OR When Garage cover [cover.garage] starts opening. CONDITIONS: Adults group [group.adults] is home AND (Garage cover [cover.garage] has a known value AND Lock locks [lock.locks] has a known value AND Doors binary sensor [binary_sensor.doors] has a known value). ACTIONS: If the trigger was Garage cover [cover.garage] opening, run script Blue Set LED [script.blue_set_led] on a list of lights with color 0, effect fast_rising, level 40, duration 15. If the trigger was Garage cover [cover.garage] closing, run script Blue Set LED [script.blue_set_led] on the same list of lights with color 0, effect fast_falling, level 40, duration 15. Otherwise, set variables: duration = 30 if Doors binary sensor [binary_sensor.doors] is off AND Garage cover [cover.garage] is closed AND Lock locks [lock.locks] is locked, else 255; color = 85 if Garage cover [cover.garage] is closed AND Doors binary sensor [binary_sensor.doors] is off AND Lock locks [lock.locks] is locked, else 20 if Doors binary sensor [binary_sensor.doors] is off AND Garage cover [cover.garage] is closed AND Lock locks [lock.locks] is unlocked, else 0. Then run script Blue Set LED [script.blue_set_led] on the same list of lights with the computed color, effect solid, level 40, and the computed duration.",
"natural_language": {
"trigger": "The automation triggers when the state of the Lock locks [lock.locks], Garage cover [cover.garage], or Doors binary sensor [binary_sensor.doors] changes, ignoring transitions to or from unknown, unavailable, opening, or closing states. It also triggers specifically when the Garage cover [cover.garage] begins opening or begins closing.",
"conditions": "The automation only runs if the Adults group [group.adults] is home, and if the Garage cover [cover.garage], Lock locks [lock.locks], and Doors binary sensor [binary_sensor.doors] all have valid, known values.",
"action": "If the garage door is opening, it sets a list of indicator lights to pulse with a fast-rising blue effect. If the garage door is closing, it sets the same lights to pulse with a fast-falling blue effect. For all other state changes, it calculates a color and duration based on the security status: a green light if all doors, the garage, and locks are secure; a yellow light if doors and garage are closed but the locks are unlocked; otherwise a red light. It then sets the lights to a solid color with the calculated duration."
},
"human_like": "Uses indicator lights throughout the house to show the security status (doors, garage, locks) when adults are home, with special animations when the garage door is moving.",
"complexity": "high"
}
},
{
"id": "b08f5491-f6f0-4c03-b8a9-14c4a4b68ac5",
"result": {
"structured": "TRIGGER: When Water shutoff valve jammed [binary_sensor.water_shutoff_valve_jammed] changes state to on. CONDITIONS: None. ACTIONS: Send a notification to mobile_app_michaels_iphone with the message '🚰 Water Shutoff Valve Jammed 🚰' and critical sound settings.",
"natural_language": {
"trigger": "When the Water shutoff valve jammed [binary_sensor.water_shutoff_valve_jammed] sensor indicates a jammed state (turns on).",
"conditions": "There are no conditions that must be met.",
"action": "Sends a critical push notification to Michael's iPhone with the message '🚰 Water Shutoff Valve Jammed 🚰', using a critical sound and full volume."
},
"human_like": "Sends an urgent phone notification if the water shutoff valve gets jammed.",
"complexity": "low"
}
},
{
"id": "7dad3c90-f96f-4976-878c-0ab3d1a6241a",
"result": {
"structured": "TRIGGER: When Water alarm [alarm_control_panel.water] changes to triggered. CONDITIONS: NOT (Master alarm [alarm_control_panel.master] is disarmed). ACTIONS: Close Water shutoff valve [valve.water_shutoff].",
"natural_language": {
"trigger": "When the Water alarm [alarm_control_panel.water] is triggered.",
"conditions": "The Master alarm [alarm_control_panel.master] must not be in the disarmed state.",
"action": "Closes the Water shutoff valve [valve.water_shutoff]."
},
"human_like": "Automatically shuts off the main water valve when a leak is detected and the home security system is armed.",
"complexity": "low"
}
},
{
"id": "3fa42dee-e85e-4787-8bdd-4d0db3dd7e59",
"result": {
"structured": "TRIGGER: When Master alarm [alarm_control_panel.master] changes state to triggered. CONDITIONS: None. ACTIONS: If the trigger's new state has a defined 'open_sensors' attribute AND the list of its values (excluding 'unavailable') is empty, then send a notification to mobile_app_michaels_iphone with a title '🚨 Alarmo Alert! 🚨', a message listing the friendly names and states of the open sensors (or the sensor entity_id if no friendly name exists), and a data payload containing a URL and click action. Otherwise (default), send a notification to mobile_app_michaels_iphone with the same title, a message that lists the friendly names and states of the open sensors (substituting 'wet' for the value if the sensor's device_class is 'moisture'), and a data payload containing a critical sound, a URL, and a click action.",
"natural_language": {
"trigger": "When the Master alarm [alarm_control_panel.master] enters the 'triggered' state.",
"conditions": "There are no explicit conditions; the automation runs immediately upon the trigger.",
"action": "The automation sends an alert notification to a mobile device. It first checks if the alarm was triggered with no actual open sensors (excluding any marked as unavailable). If that's the case, it sends a notification with a standard message listing the sensor details. Otherwise, it sends a notification with a modified message (changing the status to 'wet' for moisture sensors) and includes a critical sound alert."
},
"human_like": "Sends a detailed mobile alert when the home alarm is triggered, adapting the message based on which sensors caused the alarm.",
"complexity": "medium"
}
},
{
"id": "appliances_water_softener_salt_bin_low",
"result": {
"structured": "TRIGGER: When Salt sensor weight [sensor.salt_sensor_weight] remains below 9 for 24 hours. CONDITIONS: None. ACTIONS: Send a notification to mobile_app_michaels_iphone with the message 'Water Softener Salt Low! [current weight]kg' and a data tag 'water-softener-salt-low'.",
"natural_language": {
"trigger": "When the Salt sensor weight [sensor.salt_sensor_weight] reports a weight below 9 kilograms for a continuous period of 24 hours.",
"conditions": "There are no additional conditions that must be met.",
"action": "Sends a notification to the user's iPhone (mobile_app_michaels_iphone) alerting them that the water softener salt is low, including the current weight reading in the message."
},
"human_like": "Sends a phone notification if the water softener salt level has been low for a full day.",
"complexity": "low"
}
},
{
"id": "'1688483068220'",
"result": {
"structured": "TRIGGER: When a tag with ID e4c51def-84c8-4349-913d-9c711e814b37 is scanned. CONDITIONS: None. ACTIONS: Turn on Tesla switch [switch.tesla].",
"natural_language": {
"trigger": "When a specific RFID or NFC tag with the ID e4c51def-84c8-4349-913d-9c711e814b37 is scanned.",
"conditions": "There are no conditions that must be met.",
"action": "Turns on the Tesla switch [switch.tesla]."
},
"human_like": "Turns on the Tesla switch when a specific tag is scanned.",
"complexity": "low"
}
},
{
"id": "basement_light_on_pir_entrance",
"result": {
"structured": "TRIGGER: When Basement stairs motion occupancy [binary_sensor.basement_stairs_motion_occupancy] changes from off to on. CONDITIONS: Master alarm [alarm_control_panel.master] is disarmed. ACTIONS: Wait for a maximum of 5 minutes for either Basement hall motion occupancy [binary_sensor.basement_hall_motion_occupancy] to turn on OR Basement fp1 presence event [sensor.basement_fp1_presence_event] to become enter OR approach. If the wait condition is met, then turn on Basement lights [light.basement_lights]. If the timeout expires, the automation stops.",
"natural_language": {
"trigger": "When motion is first detected by the Basement stairs motion occupancy [binary_sensor.basement_stairs_motion_occupancy].",
"conditions": "The Master alarm [alarm_control_panel.master] must be disarmed.",
"action": "After the trigger, the automation waits for up to five minutes for either motion to be detected in the Basement hall motion occupancy [binary_sensor.basement_hall_motion_occupancy] or for the Basement fp1 presence event [sensor.basement_fp1_presence_event] to report an 'enter' or 'approach' event. If one of these events occurs within the waiting period, the Basement lights [light.basement_lights] are turned on. If the waiting period ends without any of these events, the automation does nothing."
},
"human_like": "Turns on the basement lights when motion is detected on the stairs, but only if someone is confirmed to be entering the hall or a presence sensor is triggered within a few minutes.",
"complexity": "medium"
}
},
{
"id": "basement_light_presence_controls_on",
"result": {
"structured": "TRIGGER: When Basement presence sensor [binary_sensor.basement_presence] turns on OR When Basement fp1 presence event [sensor.basement_fp1_presence_event] changes to 'enter' or 'approach' OR When Basement presence sensor [binary_sensor.basement_presence] turns off OR When timer.finished event occurs for Basement lights off timer [timer.basement_lights_off]. CONDITIONS AND ACTIONS (CHOOSE): IF (trigger is lights_on) AND (Workday sensor [binary_sensor.workday_sensor] is on) AND (Nap mode input boolean [input_boolean.nap_mode] is off) THEN cancel Basement lights off timer [timer.basement_lights_off] AND IF Basement room light dimmer [light.basement_room_light_dimmer] is off THEN turn on Basement hall light [light.basement_hall] AND Basement room light dimmer [light.basement_room_light_dimmer]. IF (trigger is timer_start) AND (Basement lights [light.basement_lights] is on) THEN start Basement lights off timer [timer.basement_lights_off]. IF (trigger is timer_lights_off) AND (Basement presence sensor [binary_sensor.basement_presence] is off) THEN turn off Basement lights [light.basement_lights].",
"natural_language": {
"trigger": "The automation can be triggered in four ways: when the Basement presence sensor [binary_sensor.basement_presence] detects someone, when the Basement fp1 presence event [sensor.basement_fp1_presence_event] reports 'enter' or 'approach', when the Basement presence sensor [binary_sensor.basement_presence] detects no one, or when the Basement lights off timer [timer.basement_lights_off] finishes.",
"conditions": "The automation uses a set of conditional branches. For the 'lights_on' trigger, it requires that the Workday sensor [binary_sensor.workday_sensor] is on and the Nap mode input boolean [input_boolean.nap_mode] is off. For the 'timer_start' trigger, it requires that the Basement lights [light.basement_lights] are on. For the 'timer_lights_off' trigger, it requires that the Basement presence sensor [binary_sensor.basement_presence] is off.",
"action": "Depending on which trigger and conditions are met, the automation will perform one of three sequences. If presence is detected on a workday with nap mode off, it cancels the lights-off timer and, if the main room light is off, turns on the basement hall and room lights. If presence ends while the lights are on, it starts the lights-off timer. If the timer finishes while no one is present, it turns off all basement lights."
},
"human_like": "Automatically controls the basement lights based on presence, turning them on when someone enters on a workday and off after a delay when the room is empty.",
"complexity": "medium"
}
},
{
"id": "basement_sync_hall_room_lights",
"result": {
"structured": "TRIGGER: When Basement hall light [light.basement_hall] changes state. CONDITIONS: Master alarm [alarm_control_panel.master] is disarmed AND the new state of Basement hall light [light.basement_hall] is either 'off' or 'on'. ACTIONS: Call service homeassistant.turn_{{ trigger.to_state.state }} on Basement room light dimmer [light.basement_room_light_dimmer].",
"natural_language": {
"trigger": "Whenever the state of the Basement hall light [light.basement_hall] changes.",
"conditions": "The Master alarm [alarm_control_panel.master] must be disarmed, and the new state of the Basement hall light [light.basement_hall] must be either 'off' or 'on'.",
"action": "Turn the Basement room light dimmer [light.basement_room_light_dimmer] on or off to match the new state of the Basement hall light [light.basement_hall]."
},
"human_like": "Syncs the basement room light with the basement hall light, but only when the alarm is disarmed.",
"complexity": "low"
}
},
{
"id": "basement_night_auto_off",
"result": {
"structured": "TRIGGER: When the time is 23:00:00. CONDITIONS: None. ACTIONS: Turn off Basement room light dimmer [light.basement_room_light_dimmer] AND Turn off Basement hall light [light.basement_hall].",
"natural_language": {
"trigger": "Every day at 11:00 PM.",
"conditions": "There are no conditions for this automation.",
"action": "Turns off both the Basement room light dimmer [light.basement_room_light_dimmer] and the Basement hall light [light.basement_hall]."
},
"human_like": "Automatically turns off the basement lights at 11 PM every night.",
"complexity": "low"
}
},
{
"id": "basement_top_of_stairs_action_control",
"result": {
"structured": "TRIGGER: When Device ID db7cbb2e9f9508cfb87c54e915766ff3 sends an 'up_double' action OR when Device ID db7cbb2e9f9508cfb87c54e915766ff3 sends a 'down_double' action OR when Device ID 2dfe60ede49072748ae1109333546706 sends an 'up_double' action OR when Device ID 2dfe60ede49072748ae1109333546706 sends a 'down_double' action OR when Device ID 4fd03b2b6cc39b1cc034f88e88f749d6 sends an 'up_double' action OR when Device ID 4fd03b2b6cc39b1cc034f88e915766ff3 sends a 'down_double' action. CONDITIONS: None. ACTIONS: If the trigger was an 'up_double' action, turn on all lights in the 'basement' area. If the trigger was a 'down_double' action, turn off all lights on the 'basement' floor and turn off Basement space heater [switch.basement_space_heater].",
"natural_language": {
"trigger": "When any of three specific devices in the basement (Device ID db7cbb2e9f9508cfb87c54e915766ff3, Device ID 2dfe60ede49072748ae1109333546706, or Device ID 4fd03b2b6cc39b1cc034f88e88f749d6) sends either an 'up_double' or a 'down_double' action command.",
"conditions": "There are no conditions that must be met.",
"action": "If the action was an 'up_double', all lights in the basement area are turned on. If the action was a 'down_double', all lights on the basement floor are turned off and the Basement space heater [switch.basement_space_heater] is also turned off."
},
"human_like": "Controls basement lights and heater using double-press actions from three devices; a double-up turns the lights on, and a double-down turns the lights and heater off.",
"complexity": "medium"
}
},
{
"id": "basement_space_heater_control",
"result": {
"structured": "TRIGGER: When Basement presence sensor [binary_sensor.basement_presence] changes to on OR When Basement presence sensor [binary_sensor.basence_presence] changes to off and remains off for 5 minutes OR When the template condition 'armed_' in states('alarm_control_panel.master') becomes true. CONDITIONS: Season sensor [sensor.season] is winter. ACTIONS: If the trigger is turn_on AND Master alarm [alarm_control_panel.master] is disarmed AND Home grid status [binary_sensor.home_grid_status] is on, then turn on Basement space heater [switch.basement_space_heater]. If the trigger is turn_off, then turn off Basement space heater [switch.basement_space_heater].",
"natural_language": {
"trigger": "The automation triggers when the Basement presence sensor [binary_sensor.basement_presence] detects someone entering (turns on), when it detects no one for at least five minutes (turns off and stays off), or when the master alarm system is in an armed state (as determined by a template).",
"conditions": "The automation only runs if the Season sensor [sensor.season] indicates it is currently winter.",
"action": "If the trigger was someone entering the basement, and the master alarm is disarmed, and the home grid is online, then the Basement space heater [switch.basement_space_heater] is turned on. If the trigger was the basement being empty for five minutes or the alarm being armed, then the heater is turned off."
},
"human_like": "Automatically turns the basement heater on when someone enters during winter, and turns it off when the room is empty or the alarm is armed.",
"complexity": "medium"
}
},
{
"id": "basement_stairs_light_motion_control",
"result": {
"structured": "TRIGGER: When Basement stairs motion occupancy [binary_sensor.basement_stairs_motion_occupancy] changes from off to on OR When Basement stairs motion occupancy [binary_sensor.basement_stairs_motion_occupancy] remains off for 10 minutes. ACTIONS: Choose action based on conditions. IF (Adults group [group.adults] is home) AND (Master alarm [alarm_control_panel.master] is disarmed) AND (the trigger was motion turning on) AND (the current time is after 07:45:00) THEN turn on Basement stairs light [light.basement_stairs]. OTHERWISE, turn off Basement stairs light [light.basement_stairs].",
"natural_language": {
"trigger": "When motion is first detected on the Basement stairs motion occupancy [binary_sensor.basement_stairs_motion_occupancy], or when motion has been absent for 10 minutes.",
"conditions": "The automation checks if the Adults group [group.adults] is home, the Master alarm [alarm_control_panel.master] is disarmed, the trigger was motion being detected, and the time is after 7:45 AM.",
"action": "If all conditions are met, the Basement stairs light [light.basement_stairs] is turned on. In all other cases, the light is turned off."
},
"human_like": "Automatically turns on the basement stairs light when motion is detected, but only if adults are home, the alarm is off, and it's after 7:45 AM; otherwise, it turns the light off after 10 minutes of no motion.",
"complexity": "medium"
}
},
{
"id": "batteries_change_battery_notification",
"result": {
"structured": "TRIGGER: When a battery_notes_battery_threshold event occurs with battery_low set to true OR when a battery_notes_battery_threshold event occurs with battery_low set to false. CONDITIONS: None. ACTIONS: If the triggering event had battery_low true, create a persistent notification with a title, a unique notification_id, and a message containing the device name, battery level, and battery details. If the triggering event had battery_low false, dismiss the persistent notification with the matching notification_id.",
"natural_language": {
"trigger": "When a battery monitoring system sends an event indicating a battery has gone low, or when it sends an event indicating a battery has gone high (i.e., is no longer low).",
"conditions": "There are no conditions that must be checked.",
"action": "If the battery went low, a persistent notification is created. The notification's title includes the device name, and its message shows the current battery percentage and the required battery type and quantity. If the battery went high, the corresponding persistent notification is automatically dismissed."
},
"human_like": "Creates a notification when a device's battery is low, showing the battery details, and automatically clears the notification when the battery level recovers.",
"complexity": "medium"
}
},
{
"id": "bedroom_comfort_arrive_past_bedtime",
"result": {
"structured": "TRIGGER: When Adults group [group.adults] changes from not_home to home. CONDITIONS: The current time is after 22:00:00 AND before 07:00:00. ACTIONS: Turn on Master white noise [switch.master_white_noise] AND turn on Master humidifier [switch.master_humidifier].",
"natural_language": {
"trigger": "When the Adults group [group.adults] changes its state from not being at home to being at home.",
"conditions": "The automation only runs if the current time is between 10:00 PM and 7:00 AM.",
"action": "Turns on the Master white noise [switch.master_white_noise] and the Master humidifier [switch.master_humidifier]."
},
"human_like": "Turns on the bedroom white noise and humidifier when an adult arrives home late at night or early in the morning.",
"complexity": "low"
}
},
{
"id": "bedroom_comfort_early_evenings",
"result": {
"structured": "TRIGGER: At 21:30:00. CONDITIONS: Adults group [group.adults] is home. ACTIONS: Turn on Master humidifier [switch.master_humidifier].",
"natural_language": {
"trigger": "The automation triggers daily at 9:30 PM.",
"conditions": "The automation only runs if the Adults group [group.adults] is marked as being home.",
"action": "It turns on the Master humidifier [switch.master_humidifier]."
},
"human_like": "Turns on the bedroom humidifier at 9:30 PM if any adults are home.",
"complexity": "low"
}
},
{
"id": "bedroom_comfort_evenings",
"result": {
"structured": "TRIGGER: When the time is 22:30:00. CONDITIONS: Adults group [group.adults] is home. ACTIONS: Turn on Master white noise [switch.master_white_noise] AND turn on Master humidifier [switch.master_humidifier].",
"natural_language": {
"trigger": "At 10:30 PM every evening.",
"conditions": "If the Adults group [group.adults] is marked as being home.",
"action": "Turn on the Master white noise [switch.master_white_noise] and the Master humidifier [switch.master_humidifier]."
},
"human_like": "Turns on the bedroom white noise and humidifier at 10:30 PM if the adults are home, to create a comfortable sleeping environment.",
"complexity": "low"
}
},
{
"id": "bedroom_comfort_if_in_bed_early",
"result": {
"structured": "TRIGGER: When Tiffanys iphone battery state [sensor.tiffanys_iphone_battery_state] changes from Not Charging to Charging OR When Tiffanys iphone battery state [sensor.tiffanys_iphone_battery_state] changes from Not Charging to Full OR When the time is 22:45:00. CONDITIONS: The current time is after 22:00:00 AND Adults group [group.adults] is home. ACTIONS: Turn on Master white noise [switch.master_white_noise] AND Master humidifier [switch.master_humidifier].",
"natural_language": {
"trigger": "This automation can be triggered in three ways: when Tiffany's iPhone [sensor.tiffanys_iphone_battery_state] starts charging, when it becomes fully charged, or at 10:45 PM.",
"conditions": "For the automation to run, the time must be after 10:00 PM, and at least one adult must be home, as indicated by the Adults group [group.adults].",
"action": "It turns on both the Master white noise [switch.master_white_noise] and the Master humidifier [switch.master_humidifier]."
},
"human_like": "Turns on the bedroom white noise and humidifier in the evening when Tiffany's phone is charging or at a set bedtime, provided an adult is home.",
"complexity": "medium"
}
},
{
"id": "bedroom_off_mornings_nursery_active",
"result": {
"structured": "TRIGGER: When Bedroom ecobee motion [binary_sensor.bedroom_ecobee_motion] turns on OR Bedroom ecobee occupancy [binary_sensor.bedroom_ecobee_occupancy] turns on OR Main bath light [light.main_bath_light] turns on OR at 07:30:00 OR when Master white noise [switch.master_white_noise] turns off. CONDITIONS: Sleeping in input boolean [input_boolean.sleeping_in] is off AND Nap mode input boolean [input_boolean.nap_mode] is off AND time is after 07:00:00 AND time is before 08:00:00. ACTIONS: Turn off Master white noise [switch.master_white_noise] AND turn off Master humidifier [switch.master_humidifier].",
"natural_language": {
"trigger": "The automation can be triggered in several ways: when motion is detected by the Bedroom ecobee motion [binary_sensor.bedroom_ecobee_motion], when the Bedroom ecobee occupancy [binary_sensor.bedroom_ecobee_occupancy] sensor indicates the room is occupied, when the Main bath light [light.main_bath_light] is turned on, at exactly 7:30 AM, or when the Master white noise [switch.master_white_noise] is turned off.",
"conditions": "All of the following must be true: the Sleeping in input boolean [input_boolean.sleeping_in] is off, the Nap mode input boolean [input_boolean.nap_mode] is off, and the current time is between 7:00 AM and 8:00 AM.",
"action": "Turns off both the Master white noise [switch.master_white_noise] and the Master humidifier [switch.master_humidifier]."
},
"human_like": "Automatically turns off the bedroom white noise and humidifier in the morning when signs of wakefulness are detected, but only if 'sleeping in' and 'nap mode' are not active.",
"complexity": "medium"
}
},
{
"id": "spare_bedroom_fan_toggle",
"result": {
"structured": "TRIGGER: When an ios_bedtime_event occurs. CONDITIONS: Mike [person.mike] is at home. ACTIONS: Turn on Spare bedroom fan [switch.spare_bedroom_fan].",
"natural_language": {
"trigger": "When a bedtime event is received from an iOS device.",
"conditions": "Mike [person.mike] must be at home.",
"action": "Turn on the Spare bedroom fan [switch.spare_bedroom_fan]."
},
"human_like": "Turns on the spare bedroom fan when a bedtime event is triggered, but only if Mike is home.",
"complexity": "low"
}
},
{
"id": "bedroom_reset_sleeping_in",
"result": {
"structured": "TRIGGER: When the time reaches 12:00:00. CONDITIONS: Sleeping in input boolean [input_boolean.sleeping_in] is on. ACTIONS: Turn off Sleeping in input boolean [input_boolean.sleeping_in].",
"natural_language": {
"trigger": "Every day at noon (12:00:00).",
"conditions": "The Sleeping in input boolean [input_boolean.sleeping_in] must be switched on.",
"action": "Turns off the Sleeping in input boolean [input_boolean.sleeping_in]."
},
"human_like": "Automatically turns off the 'sleeping in' status at noon every day.",
"complexity": "low"
}
},
{
"id": "bedroom_morning_wake_up_sequence",
"result": {
"structured": "TRIGGER: When an iOS wakeup event occurs. CONDITIONS: None. ACTIONS: Turn off Spare bedroom fan [switch.spare_bedroom_fan].",
"natural_language": {
"trigger": "When an iOS wakeup event is received.",
"conditions": "There are no conditions that need to be met.",
"action": "Turns off the Spare bedroom fan [switch.spare_bedroom_fan]."
},
"human_like": "Turns off the spare bedroom fan when a wakeup event is received from an iOS device.",
"complexity": "low"
}
},
{
"id": "xmas_exteior_lights_on",
"result": {
"structured": "TRIGGER: When Sun sun [sun.sun] elevation attribute falls below 0.25. CONDITIONS: The current month is November, December, January, or February. ACTIONS: Turn on Exterior Christmas lights [light.exterior_christmas_lights].",
"natural_language": {
"trigger": "When the sun's elevation, as reported by Sun sun [sun.sun], drops below 0.25 degrees.",
"conditions": "The automation only runs if the current date is in November, December, January, or February.",
"action": "Turns on the Exterior Christmas lights [light.exterior_christmas_lights]."
},
"human_like": "Turns on the exterior Christmas lights when the sun sets, but only during the winter holiday months.",
"complexity": "low"
}
},
{
"id": "xmas_exterior_lights_off",
"result": {
"structured": "TRIGGER: When the time is 23:30:00 OR When the sun rises. CONDITIONS: None. ACTIONS: Turn off Exterior Christmas lights [light.exterior_christmas_lights].",
"natural_language": {
"trigger": "The automation triggers either at 11:30 PM every day or at sunrise.",
"conditions": "There are no conditions that need to be met for this automation to run.",
"action": "Turns off the Exterior Christmas lights [light.exterior_christmas_lights]."
},
"human_like": "Turns off the exterior Christmas lights every night at 11:30 PM or at sunrise, whichever comes first.",
"complexity": "low"
}
},
{
"id": "xmas_lights_room_occupied",
"result": {
"structured": "TRIGGER: When Living room occupancy [binary_sensor.living_room_occupancy] detects occupancy (on) OR When Living room occupancy [binary_sensor.living_room_occupancy] reports no occupancy (off) for 30 minutes OR When an ios_wakeup_event occurs OR When Mike [person.mike] OR Tiff [person.tiff] enters the home zone (zone.home) OR When Master alarm [alarm_control_panel.master] is armed (armed_night, armed_vacation, or armed_away). CONDITIONS: The current month is November, December, January, or February AND The current time is between 06:00:00 and 22:30:00 AND Master alarm [alarm_control_panel.master] is disarmed. ACTIONS: If the trigger ID is 'turn_on', then turn on Christmas tree [light.christmas_tree]. If the trigger ID is 'turn_off', then turn off Christmas tree [light.christmas_tree].",
"natural_language": {
"trigger": "The automation can be triggered in several ways: when the Living room occupancy [binary_sensor.living_room_occupancy] sensor detects someone in the room, when the same occupancy sensor reports the room as empty for 30 consecutive minutes, when an iOS device wake-up event is received, when either Mike [person.mike] or Tiff [person.tiff] arrives home and enters the home zone, or when the Master alarm [alarm_control_panel.master] is set to armed_night, armed_vacation, or armed_away.",
"conditions": "For the automation to run, it must be during the winter holiday season (November, December, January, or February), the current time must be between 6:00 AM and 10:30 PM, and the Master alarm [alarm_control_panel.master] must be disarmed.",
"action": "Depending on which trigger fired, the automation will either turn on or turn off the Christmas tree [light.christmas_tree] lights. Triggers related to occupancy, arrival, or device wake-up will turn the lights on, while the trigger for the room being empty for 30 minutes or the alarm being armed will turn the lights off."
},
"human_like": "Turns the Christmas tree lights on when the living room is occupied during the holiday season and off when it's empty or the house alarm is armed, ensuring festive lighting only when appropriate.",
"complexity": "medium"
}
},
{
"id": "xmas_tree_lights_off_night",
"result": {
"structured": "TRIGGER: When the time reaches 22:30:00. CONDITIONS: None. ACTIONS: Turn off Christmas tree [light.christmas_tree].",
"natural_language": {
"trigger": "At 10:30 PM every night.",
"conditions": "There are no conditions that must be met.",
"action": "Turns off the Christmas tree [light.christmas_tree]."
},
"human_like": "Turns off the Christmas tree lights automatically at 10:30 PM each night.",
"complexity": "low"
}
},
{
"id": "external_xmas_lights_on_arrive_home",
"result": {
"structured": "TRIGGER: When Mike [person.mike] OR Tiff [person.tiff] enters the zone 'home'. CONDITIONS: (The current month is November, December, January, OR February) AND (Sun sun [sun.sun] elevation is below 3.35) AND (The current time is after 15:30:00). ACTIONS: Turn on Exterior Christmas lights [light.exterior_christmas_lights].",
"natural_language": {
"trigger": "When either Mike [person.mike] or Tiff [person.tiff] arrives home by entering the home zone.",
"conditions": "If the current date is during the holiday season (November, December, January, or February), the sun's elevation is below 3.35 degrees (indicating it's dark enough), and the current time is after 3:30 PM.",
"action": "Turns on the Exterior Christmas lights [light.exterior_christmas_lights]."
},
"human_like": "Turns on the exterior Christmas lights when someone arrives home during the holiday season, but only if it's dark enough and after the afternoon.",
"complexity": "medium"
}
},
{
"id": "disable_climate_door_ajar",
"result": {
"structured": "TRIGGER: When Doors binary sensor [binary_sensor.doors] OR Windows binary sensor [binary_sensor.windows] becomes open (on) AND remains open for 5 minutes. CONDITIONS: My ecobee climate [climate.my_ecobee] is NOT off. ACTIONS: Store the current HVAC mode of My ecobee climate [climate.my_ecobee] in variable 'climate_restore_state'. Send a critical notification to 'adults' with title 'A Door or window has been left open' and message 'Disabling thermostat'. Turn off My ecobee climate [climate.my_ecobee]. Wait until Doors binary sensor [binary_sensor.doors] is closed (off) AND Windows binary sensor [binary_sensor.windows] is closed (off). Restore My ecobee climate [climate.my_ecobee] to its previously stored HVAC mode. Send a notification to 'adults' with message 'clear_notification' to clear the previous warning.",
"natural_language": {
"trigger": "When either the Doors binary sensor [binary_sensor.doors] or the Windows binary sensor [binary_sensor.windows] has been detected as open for a continuous period of five minutes.",
"conditions": "The automation only runs if the My ecobee climate [climate.my_ecobee] is not already turned off.",
"action": "First, the automation saves the current heating or cooling mode of the thermostat. It then sends a critical push notification to the adults, warning that a door or window is open and that the thermostat is being disabled. Next, it turns off the thermostat. The automation then waits for both the door and window sensors to report they are closed. Once they are closed, it restores the thermostat to its previous mode. Finally, it sends a follow-up notification to clear the initial warning from the notification feed."
},
"human_like": "Turns off the thermostat and sends an alert if a door or window is left open for five minutes, then restores the previous temperature setting once everything is closed.",
"complexity": "medium"
}
},
{
"id": "comfort_co2_high_notification",
"result": {
"structured": "TRIGGER: When Airthings wave 111512 carbon dioxide [sensor.airthings_wave_111512_carbon_dioxide] remains above 950 ppm for 1 hour. CONDITIONS: Adults group [group.adults] is home. ACTIONS: Send a notification to mobile_app_michaels_iphone with message 'CO2 is high, is HRV on?' and data including a URL and click action to '/lovelace/air-quality' and a tag 'comfort-co2-high-notification'.",
"natural_language": {
"trigger": "When the carbon dioxide level measured by the Airthings wave 111512 carbon dioxide [sensor.airthings_wave_111512_carbon_dioxide] stays above 950 parts per million for a continuous period of one hour.",
"conditions": "At least one adult must be at home, as indicated by the Adults group [group.adults] being in the 'home' state.",
"action": "Sends a push notification to Michael's iPhone, asking 'CO2 is high, is HRV on?' and providing a deep link to the air quality dashboard in the Home Assistant interface."
},
"human_like": "Sends a notification to Michael's phone if the CO2 level in the house remains high for an hour while someone is home, prompting a check on the ventilation system.",
"complexity": "low"
}
},
{
"id": "doorbell_set_doorbell_chime_state",
"result": {
"structured": "TRIGGER: When any of Nap mode input boolean [input_boolean.nap_mode], Quite mode input boolean [input_boolean.quite_mode], Master white noise [switch.master_white_noise], or Doorbell do not distrub schedule [schedule.doorbell_do_not_distrub] changes state to any value except 'unavailable' or 'unknown'. CONDITIONS: None. ACTIONS: Choose based on condition: IF (Nap mode input boolean [input_boolean.nap_mode] is off) AND (Quite mode input boolean [input_boolean.quite_mode] is off) AND (Master white noise [switch.master_white_noise] is off) AND (Doorbell do not distrub schedule [schedule.doorbell_do_not_distrub] is off) THEN set Front door chime type select [select.front_door_chime_type] to 'Mechanical', wait 10 seconds, then wait up to 10 minutes for the select state to become 'Mechanical'. If the wait times out, set Front door chime type select [select.front_door_chime_type] to 'Mechanical' again and send a notification 'Check Doorbell Mechanical State' to notify.mobile_app_michaels_iphone. OTHERWISE (default case) set Front door chime type select [select.front_door_chime_type] to 'None'.",
"natural_language": {
"trigger": "The automation runs whenever the state of Nap mode input boolean [input_boolean.nap_mode], Quite mode input boolean [input_boolean.quite_mode], Master white noise [switch.master_white_noise], or Doorbell do not distrub schedule [schedule.doorbell_do_not_distrub] changes, as long as the new state is not 'unavailable' or 'unknown'.",
"conditions": "There are no separate conditions; the logic is handled within the action's choose block.",
"action": "If all four entities (Nap mode, Quite mode, Master white noise, and Doorbell do not disturb schedule) are off, the automation sets the Front door chime type select [select.front_door_chime_type] to 'Mechanical'. It then waits 10 seconds and monitors for up to 10 minutes to confirm the chime type is set to 'Mechanical'. If this confirmation is not received within the timeout, it attempts to set the chime type to 'Mechanical' again and sends a notification to a mobile device. If any of the four entities is not off, the automation sets the Front door chime type select [select.front_door_chime_type] to 'None' instead."
},
"human_like": "Manages the doorbell chime based on the home's quiet or nap settings, setting it to a mechanical chime only when all quiet modes are off, otherwise silencing it.",
"complexity": "medium"
}
},
{
"id": "doorbell_notification_message",
"result": {
"structured": "TRIGGER: When Front door doorbell [binary_sensor.front_door_doorbell] changes from off to on. CONDITIONS: None. ACTIONS: Take a snapshot from Front door low resolution channel camera [camera.front_door_low_resolution_channel] and save it to /media/doorbell/snapshot.jpg (continue on error). Then, send a notification to adults with title 'Ding Dong', message 'Someone is at the front door', and data including a URL, image path, tag, group, and an action button.",
"natural_language": {
"trigger": "When the Front door doorbell [binary_sensor.front_door_doorbell] is pressed, changing its state from off to on.",
"conditions": "There are no additional conditions; the automation runs immediately upon the doorbell press.",
"action": "First, it attempts to capture a snapshot from the Front door low resolution channel camera [camera.front_door_low_resolution_channel] and saves it as a file. Then, it sends a rich notification to the adults' notification group with a title, message, a link to a dashboard, the captured image, and an action button to dismiss the notification."
},
"human_like": "Sends a notification with a camera snapshot to your phone when someone rings the front doorbell.",
"complexity": "low"
}
},
{
"id": "doorbell_not_interested_message",
"result": {
"structured": "TRIGGER: When a mobile app notification action event with action 'NOT_INTERESTED' occurs OR When Sorry not interested input button [input_button.sorry_not_interested] changes state. CONDITIONS: None. ACTIONS: Use TTS to say 'Sorry, not interested' on Front door speaker [media_player.front_door_speaker] (with caching), wait 1 second, set the value of Front door doorbell text [text.front_door_doorbell] to 'Not interested', wait 15 seconds, then trigger the automation Set Doorbell Message [automation.set_doorbell_message] while skipping its conditions.",
"natural_language": {
"trigger": "The automation is triggered either by receiving a 'NOT_INTERESTED' action from a mobile app notification, or by pressing the Sorry not interested input button [input_button.sorry_not_interested].",
"conditions": "There are no conditions that must be met for the actions to run.",
"action": "First, a text-to-speech message saying 'Sorry, not interested' is played on the Front door speaker [media_player.front_door_speaker]. After a one-second delay, the text displayed on the Front door doorbell text [text.front_door_doorbell] is set to 'Not interested'. Following another 15-second delay, the 'Set Doorbell Message' automation [automation.set_doorbell_message] is triggered, bypassing its own conditions."
},
"human_like": "When someone indicates they are not interested via a mobile notification or a button, the system announces 'Sorry, not interested' at the door, updates the doorbell display, and then resets the doorbell message after a short delay.",
"complexity": "medium"
}
},
{
"id": "doorbell_activated",
"result": {
"structured": "TRIGGER: When Front door doorbell [binary_sensor.front_door_doorbell] changes from off to on. CONDITIONS: Adults group [group.adults] is home AND Master alarm [alarm_control_panel.master] is disarmed. ACTIONS: Pause Living room TV [media_player.living_room_tv] AND (IF (current month is October AND current day is 31 AND current hour is after 17) AND Nap mode input boolean [input_boolean.nap_mode] is off THEN use Sonos Say [script.sonos_say] to announce 'Trick or treat!' on Sonos living room [media_player.sonos_living_room] at volume 25 ELSE use Sonos Say [script.sonos_say] to announce 'Someone is at the door' on Sonos basement [media_player.sonos_basement] AND Sonos living room [media_player.sonos_living_room] at volume 30) AND use Blue Set LED [script.blue_set_led] to set Front hall light [light.front_hall], Living room light [light.living_room_light], Back deck light [light.back_deck_light], Main stairs light [light.main_stairs], Upstairs hall light [light.upstairs_hall], Main bath light [light.main_bath_light], and Basement stairs light [light.basement_stairs] to color 150 with fast_blink effect at level 70 for 60 seconds. THEN wait for 30 seconds.",
"natural_language": {
"trigger": "The automation triggers when the Front door doorbell [binary_sensor.front_door_doorbell] is activated, changing its state from off to on.",
"conditions": "Two conditions must be met: at least one adult must be home, as indicated by the Adults group [group.adults] being in the 'home' state, and the Master alarm [alarm_control_panel.master] must be disarmed.",
"action": "The automation performs several actions in parallel. First, it pauses the Living room TV [media_player.living_room_tv]. Then, it chooses an announcement based on the date and time: if it is Halloween (October 31st) after 5 PM and Nap mode input boolean [input_boolean.nap_mode] is off, it plays the message 'Trick or treat!' on the Sonos living room [media_player.sonos_living_room] speaker at a volume of 25. Otherwise, it plays the message 'Someone is at the door' on both the Sonos basement [media_player.sonos_basement] and Sonos living room [media_player.sonos_living_room] speakers at a volume of 30. Simultaneously, it activates the Blue Set LED [script.blue_set_led] script to make several lights, including the Front hall light [light.front_hall], Living room light [light.living_room_light], Back deck light [light.back_deck_light], Main stairs light [light.main_stairs], Upstairs hall light [light.upstairs_hall], Main bath light [light.main_bath_light], and Basement stairs light [light.basement_stairs], blink quickly in a specific color and brightness for 60 seconds. Finally, after all these actions, the automation waits for 30 seconds."
},
"human_like": "When someone rings the doorbell and an adult is home with the alarm off, this automation pauses the TV, makes a special Halloween or standard door announcement, and flashes lights around the house to alert occupants.",
"complexity": "medium"
}
},
{
"id": "doorbell_halloween_audio_message",
"result": {
"structured": "TRIGGER: When Front door doorbell [binary_sensor.front_door_doorbell] changes from off to on. CONDITIONS: The current time is between 16:00:00 and 21:00:00 AND the current date is October 31st AND Home nearest distance [sensor.home_nearest_distance] is below 500. ACTIONS: Use text-to-speech to say 'Boo! Happy Halloween!' on Front door speaker [media_player.front_door_speaker] (with caching enabled) AND then wait for 60 seconds.",
"natural_language": {
"trigger": "When the Front door doorbell [binary_sensor.front_door_doorbell] is pressed, changing its state from off to on.",
"conditions": "The automation only runs if it is between 4:00 PM and 9:00 PM, the date is October 31st (Halloween), and the Home nearest distance [sensor.home_nearest_distance] is less than 500 units.",
"action": "Plays a spooky Halloween greeting, 'Boo! Happy Halloween!', through the Front door speaker [media_player.front_door_speaker] using text-to-speech, then pauses for one minute."
},
"human_like": "Plays a Halloween greeting at the front door when the doorbell is pressed on October 31st in the evening, provided someone is nearby.",
"complexity": "medium"
}
},
{
"id": "doorbell_package_detected",
"result": {
"structured": "TRIGGER: When Front door package detected [binary_sensor.front_door_package_detected] changes to on. CONDITIONS: None. ACTIONS: Take a snapshot from Front door package camera [camera.front_door_package_camera] and save it to /media/doorbell/package.jpg AND send a notification to adults with title 'Package Detected', message 'Check the front porch', and image /media/local/doorbell/package.jpg.",
"natural_language": {
"trigger": "When the Front door package detected [binary_sensor.front_door_package_detected] sensor detects a package and turns on.",
"conditions": "There are no conditions that must be met.",
"action": "Takes a snapshot from the Front door package camera [camera.front_door_package_camera] and saves it as a file. Then, it sends a notification to the adults group with a title, message, and the saved image."
},
"human_like": "When a package is detected at the front door, it takes a picture and sends a notification to the adults.",
"complexity": "low"
}
},
{
"id": "doorbell_set_message",
"result": {
"structured": "TRIGGER: When any of the entities (Nap mode switch [switch.nap_mode], Quite mode input boolean [input_boolean.quite_mode], Master white noise [switch.master_white_noise], Doorbell do not distrub schedule [schedule.doorbell_do_not_distrub]) changes state to on or off OR at 17:00:00 daily. CONDITIONS: None (conditions are evaluated within the choose action). ACTIONS: Choose an action based on the following conditions: IF (the current date is October 31st AND Home nearest distance [sensor.home_nearest_distance] is below 500 AND the current time is between 17:00:00 and 21:00:00) THEN set the value of Front door doorbell text [text.front_door_doorbell] to 'Trick or Treat!'. ELSE IF (any of the entities (Nap mode switch [switch.nap_mode], Quite mode input boolean [input_boolean.quite_mode], Master white noise [switch.master_white_noise], Doorbell do not distrub schedule [schedule.doorbell_do_not_distrub]) is on) THEN set the option of Front door doorbell text select [select.front_door_doorbell_text] to 'DO NOT DISTURB'. OTHERWISE (default) set the option of Front door doorbell text select [select.front_door_doorbell_text] to 'Default Message (WELCOME)'.",
"natural_language": {
"trigger": "This automation runs whenever the state of Nap mode switch [switch.nap_mode], Quite mode input boolean [input_boolean.quite_mode], Master white noise [switch.master_white_noise], or Doorbell do not distrub schedule [schedule.doorbell_do_not_distrub] changes to either on or off. It also runs every day at 5:00 PM.",
"conditions": "The automation does not have global conditions. Instead, it uses a decision block to select which action to perform based on specific scenarios.",
"action": "The automation checks three possible scenarios in order. First, if it is Halloween (October 31st), the Home nearest distance [sensor.home_nearest_distance] is less than 500, and the time is between 5:00 PM and 9:00 PM, it sets the Front door doorbell text [text.front_door_doorbell] to 'Trick or Treat!'. If that's not the case, it checks if any of the 'quiet' or 'do not disturb' switches (Nap mode switch, Quite mode input boolean, Master white noise, or Doorbell do not distrub schedule) are turned on. If so, it sets the Front door doorbell text select [select.front_door_doorbell_text] to 'DO NOT DISTURB'. If neither of those scenarios apply, it sets the Front door doorbell text select to 'Default Message (WELCOME)'."
},
"human_like": "This automation updates the message on the front doorbell based on the time of day, special holidays like Halloween, and whether the house is in a quiet mode.",
"complexity": "medium"
}
},
{
"id": "080e0639-daa4-4632-adcf-fd4be3b42f4c",
"result": {
"structured": "TRIGGER: When Home Assistant shutdown event occurs. CONDITIONS: Nap mode input boolean [input_boolean.nap_mode] is off AND Quite mode input boolean [input_boolean.quite_mode] is off AND Master white noise [switch.master_white_noise] is off AND Doorbell do not distrub schedule [schedule.doorbell_do_not_distrub] is off. ACTIONS: Set Front door chime type select [select.front_door_chime_type] to 'Mechanical'.",
"natural_language": {
"trigger": "When Home Assistant begins its shutdown process.",
"conditions": "If Nap mode input boolean [input_boolean.nap_mode] is off, Quite mode input boolean [input_boolean.quite_mode] is off, Master white noise [switch.master_white_noise] is off, and the Doorbell do not distrub schedule [schedule.doorbell_do_not_distrub] is off.",
"action": "Change the Front door chime type select [select.front_door_chime_type] to the 'Mechanical' option."
},
"human_like": "Sets the doorbell chime to a mechanical sound when the system shuts down, but only if all quiet and do-not-disturb modes are inactive.",
"complexity": "low"
}
},
{
"id": "media_energy_saver_not_home",
"result": {
"structured": "TRIGGER: When Master alarm [alarm_control_panel.master] changes to armed_night OR armed_vacation OR When Current hydro time of use state [sensor.current_hydro_time_of_use_state] changes from Off Peak to Mid Peak OR On Peak OR When Master alarm [alarm_control_panel.master] changes to armed_away AND remains for 30 minutes OR When Master alarm [alarm_control_panel.master] changes to disarmed (but not from triggered) OR When Current hydro time of use state [sensor.current_hydro_time_of_use_state] changes to Off Peak OR When the time is 15:30:00 OR When TV power schedule [schedule.tv_power] changes to on. CONDITIONS: For the first action branch: The trigger ID is power_off AND NOT (Apple TV living room [media_player.apple_tv_living_room] is playing OR Living room TV [media_player.living_room_tv] is on). For the second action branch: The trigger ID is power_on AND Master alarm [alarm_control_panel.master] is disarmed AND (TV power schedule [schedule.tv_power] is on OR Ontario holidays calendar [calendar.ontario_holidays] is on). ACTIONS: If the first condition set is met, turn off Entertainment switch relay [switch.entertainment_switch_relay]. If the second condition set is met, turn on Entertainment switch relay [switch.entertainment_switch_relay].",
"natural_language": {
"trigger": "The automation can be triggered in several ways. It can trigger to potentially turn off power when the Master alarm [alarm_control_panel.master] is set to armed_night or armed_vacation, when the electricity rate changes from Off Peak to Mid Peak or On Peak, or when the alarm is set to armed_away for 30 minutes. It can trigger to potentially turn on power when the Master alarm [alarm_control_panel.master] is disarmed (but not from an alarm trigger), when the electricity rate changes to Off Peak, at 3:30 PM daily, or when the TV power schedule [schedule.tv_power] is turned on.",
"conditions": "To turn the power off, the automation checks that neither the Apple TV living room [media_player.apple_tv_living_room] is playing nor the Living room TV [media_player.living_room_tv] is on. To turn the power on, the automation requires that the Master alarm [alarm_control_panel.master] is in a disarmed state and that either the TV power schedule [schedule.tv_power] is on or the Ontario holidays calendar [calendar.ontario_holidays] indicates a holiday.",
"action": "Based on the trigger and conditions, the automation will either turn off the Entertainment switch relay [switch.entertainment_switch_relay] to save power or turn it on to restore power to the entertainment system."
},
"human_like": "This automation manages the entertainment system's power to save energy when nobody is home or during expensive electricity rates, and turns it back on when it's convenient and cost-effective.",
"complexity": "high"
}
},
{
"id": "energy_save_powerwall_on_holidays",
"result": {
"structured": "TRIGGER: When Holiday powerwall schedule [schedule.holiday_powerwall] turns on OR when Holiday powerwall schedule [schedule.holiday_powerwall] turns off. CONDITIONS: Ontario holidays calendar [calendar.ontario_holidays] is on. ACTIONS: If the trigger was Holiday powerwall schedule [schedule.holiday_powerwall] turning on, then set Home backup reserve number [number.home_backup_reserve] to 100 and send a notification to mobile_app_michaels_iphone with message 'Powerwall set for holidays'. Otherwise, set Home backup reserve number [number.home_backup_reserve] to 20 and send a notification to mobile_app_michaels_iphone with message 'Powerwall holidays off'.",
"natural_language": {
"trigger": "When the Holiday powerwall schedule [schedule.holiday_powerwall] is turned on or off.",
"conditions": "The Ontario holidays calendar [calendar.ontario_holidays] must indicate that today is a holiday (state is 'on').",
"action": "If the schedule was turned on, it sets the Home backup reserve number [number.home_backup_reserve] to 100% and sends a notification to the user's phone stating 'Powerwall set for holidays'. If the schedule was turned off, it sets the Home backup reserve number [number.home_backup_reserve] to 20% and sends a notification stating 'Powerwall holidays off'."
},
"human_like": "Adjusts the Powerwall backup reserve to 100% during holidays when a specific schedule is active, and lowers it to 20% when the schedule is off, sending phone notifications for each change.",
"complexity": "medium"
}
},
{
"id": "energy_save_power_grid_outage",
"result": {
"structured": "TRIGGER: When Home grid status [binary_sensor.home_grid_status] changes from on to off. CONDITIONS: None. ACTIONS: Turn off Basement space heater [switch.basement_space_heater].",
"natural_language": {
"trigger": "When the Home grid status [binary_sensor.home_grid_status] changes from being on to being off.",
"conditions": "There are no conditions that must be met.",
"action": "Turns off the Basement space heater [switch.basement_space_heater]."
},
"human_like": "Turns off the basement heater to save power when the home loses grid electricity.",
"complexity": "low"
}
},
{
"id": "exterior_garage_left_open_notification",
"result": {
"structured": "TRIGGER: When Garage cover [cover.garage] opens OR when Garage cover [cover.garage] closes OR when timer.garage_left_open finishes OR when a mobile app notification action with action ACK_GARAGE is received OR when a mobile app notification action with action CLOSE_GARAGE is received. ACTIONS: Choose from the following sequences based on trigger and conditions: 1. IF trigger is garage_open THEN start Garage left open timer [timer.garage_left_open]. 2. IF trigger is timer_fired AND Garage cover [cover.garage] is open THEN wait for Garage motion [binary_sensor.garage_motion] to be off for 10 minutes. IF the wait did NOT complete THEN restart Garage left open timer [timer.garage_left_open] and stop the sequence. IF the wait completed AND Garage cover [cover.garage] is open THEN restart Garage left open timer [timer.garage_left_open] AND send a notification to mobile_app_michaels_iphone with message 'Garage Door Left Open', including a camera snapshot from Garage low resolution channel camera [camera.garage_low_resolution_channel] and actions CLOSE_GARAGE and ACK_GARAGE. 3. IF trigger is ack_garage OR trigger is garage_closed THEN cancel Garage left open timer [timer.garage_left_open] AND send a notification to mobile_app_michaels_iphone to clear the notification with tag 'garage-door-open-alert'. 4. IF trigger is close_garage THEN cancel Garage left open timer [timer.garage_left_open] AND close Garage cover [cover.garage].",
"natural_language": {
"trigger": "The automation can be triggered by several events: when the Garage cover [cover.garage] opens or closes, when the Garage left open timer [timer.garage_left_open] finishes, or when a user interacts with a mobile notification by pressing either the 'Acknowledge Garage' (ACK_GARAGE) or 'Close Garage' (CLOSE_GARAGE) action button.",
"conditions": "The actions taken depend heavily on which trigger occurred and the current state. For the timer_fired trigger to proceed, the Garage cover [cover.garage] must still be open. Furthermore, if motion is detected in the garage, the automation will wait for motion to stop for 10 minutes before sending a final notification; if motion continues, it restarts the timer instead.",
"action": "Depending on the scenario, the automation will: start a timer when the garage opens; after the timer finishes and if the door is still open, it may wait for motion to cease, then restart the timer and send an alert notification with action buttons; cancel the timer and clear the alert if the door is closed or the alert is acknowledged; or cancel the timer and physically close the garage door if the 'Close Garage' action is pressed."
},
"human_like": "Sends a phone notification if the garage door is left open for too long, but waits if there is motion inside. It also allows you to acknowledge the alert or close the door remotely from the notification.",
"complexity": "high"
}
},
{
"id": "exterior_lights_on_evenings",
"result": {
"structured": "TRIGGER: When Sun sun [sun.sun] elevation is below 0.25 OR When Front door person detected [binary_sensor.front_door_person_detected] is on AND remains on for 2 minutes. CONDITIONS: Sun sun [sun.sun] elevation is below 0.25. ACTIONS: Turn on Exterior lights [light.exterior_lights].",
"natural_language": {
"trigger": "When the sun's elevation falls below 0.25, or when a person is detected at the front door and that detection remains active for at least two minutes.",
"conditions": "The sun's elevation must be below 0.25.",
"action": "Turns on the exterior lights."
},
"human_like": "Turns on the exterior lights in the evening when it gets dark or when someone is at the front door.",
"complexity": "medium"
}
},
{
"id": "exterior_keep_lights_on_evenings",
"result": {
"structured": "TRIGGER: When Front porch switch [switch.front_porch] OR Side door switch [switch.side_door] remains off for 2 minutes. CONDITIONS: (NOT (current month is October AND current day is 31 AND current hour is after 17)) AND (Sun sun [sun.sun] elevation is below 0.25) AND (current time is after 15:00:00 AND before 23:30:00). ACTIONS: Turn on Exterior lights [light.exterior_lights].",
"natural_language": {
"trigger": "When either the Front porch switch [switch.front_porch] or the Side door switch [switch.side_door] has been turned off for at least two minutes.",
"conditions": "It must not be Halloween evening (specifically, it must not be October 31st after 5:00 PM). The sun must be below the horizon, indicated by the Sun sun [sun.sun] elevation being less than 0.25. The current time must be between 3:00 PM and 11:30 PM.",
"action": "Turns on the Exterior lights [light.exterior_lights]."
},
"human_like": "Keeps the exterior lights on during evening hours if they are turned off, but prevents this from happening on Halloween night.",
"complexity": "medium"
}
},
{
"id": "exterior_lights_off_overnight",
"result": {
"structured": "TRIGGER: When the time is 23:30:00 OR When the elevation attribute of Sun sun [sun.sun] is above 0.25. CONDITIONS: None. ACTIONS: Turn off Exterior lights [light.exterior_lights].",
"natural_language": {
"trigger": "The automation triggers at 11:30 PM every night, or when the sun's elevation rises above 0.25 degrees.",
"conditions": "There are no conditions that must be met when the automation triggers.",
"action": "Turns off the Exterior lights [light.exterior_lights]."
},
"human_like": "Turns off the exterior lights at 11:30 PM or at sunrise, whichever comes first.",
"complexity": "low"
}
},
{
"id": "exterior_lights_off_outside_normal_hours",
"result": {
"structured": "TRIGGER: When Exterior lights [light.exterior_lights] remains on for 1 hour. CONDITIONS: (Time is between 23:30:00 and 06:00:00) AND (Sun sun [sun.sun] elevation is below 0.25). ACTIONS: Wait until Front door person detected [binary_sensor.front_door_person_detected] is off, then turn off Exterior lights [light.exterior_lights].",
"natural_language": {
"trigger": "When the Exterior lights [light.exterior_lights] have been turned on and remain on for one full hour.",
"conditions": "The automation only runs if the current time is between 11:30 PM and 6:00 AM, and the sun's elevation [sun.sun] is below 0.25, indicating it is dark outside.",
"action": "The automation waits until no person is detected at the front door [binary_sensor.front_door_person_detected], and then turns off the Exterior lights [light.exterior_lights]."
},
"human_like": "Automatically turns off the exterior lights if they are left on overnight, but only after confirming no one is at the front door.",
"complexity": "medium"
}
},
{
"id": "exterior_lights_off_daylight",
"result": {
"structured": "TRIGGER: When Exterior lights [light.exterior_lights] remains on for 10 minutes OR When Sun sun [sun.sun] elevation rises above 0.25. CONDITIONS: Sun sun [sun.sun] elevation is above 0.25. ACTIONS: Turn off Exterior lights [light.exterior_lights].",
"natural_language": {
"trigger": "When the Exterior lights [light.exterior_lights] have been turned on and remain on for at least 10 minutes, or when the sun's elevation [sun.sun] rises above 0.25 degrees.",
"conditions": "The automation only runs if the sun's elevation [sun.sun] is currently above 0.25 degrees.",
"action": "Turns off the Exterior lights [light.exterior_lights]."
},
"human_like": "Turns off the exterior lights if they are left on during daylight hours.",
"complexity": "medium"
}
},
{
"id": "exterior_sync_exterior_lights",
"result": {
"structured": "TRIGGER: When Front porch light [light.front_porch] changes state OR When Side door light [light.side_door] changes state. CONDITIONS: The new state of the triggering entity is either 'on' or 'off'. ACTIONS: Turn Exterior lights [light.exterior_lights] to the same state (on or off) as the triggering light.",
"natural_language": {
"trigger": "When the state of the Front porch light [light.front_porch] or the Side door light [light.side_door] changes.",
"conditions": "The new state of the light that triggered the automation must be either 'on' or 'off'.",
"action": "Sets the Exterior lights [light.exterior_lights] to match the state (on or off) of the light that triggered the automation."
},
"human_like": "Synchronizes the main exterior lights to turn on or off whenever the front porch or side door light is switched.",
"complexity": "low"
}
},
{
"id": "exterior_exterior_lights_on_triggers",
"result": {
"structured": "TRIGGER: When Garage cover [cover.garage] opens OR Lock locks [lock.locks] unlocks OR Mike [person.mike] enters zone.home OR Tiff [person.tiff] enters zone.home OR Doors binary sensor [binary_sensor.doors] turns on OR Front door doorbell [binary_sensor.front_door_doorbell] changes from off to on. CONDITIONS: Sun sun [sun.sun] elevation is below 0.25. ACTIONS: Turn on Exterior lights [light.exterior_lights].",
"natural_language": {
"trigger": "The automation triggers when any of the following events occur: the garage door opens, the main lock unlocks, either Mike or Tiff arrives home, a door sensor indicates a door is opened, or the front door doorbell is pressed.",
"conditions": "The automation only runs if the sun's elevation is below 0.25, meaning it is dark enough outside.",
"action": "Turns on the Exterior lights [light.exterior_lights]."
},
"human_like": "Turns on the outside lights when someone arrives home, opens a door, or rings the doorbell, but only after dark.",
"complexity": "medium"
}
},
{
"id": "exterior_lock_side_door_dog",
"result": {
"structured": "TRIGGER: When Side door lock [lock.side_door] remains unlocked for 1 minute OR When Side door open [binary_sensor.side_door_open] remains closed (off) for 15 seconds. CONDITIONS: (Time is between 06:30:00 and 08:00:00) OR (Time is between 16:00:00 and 17:00:00 AND Workday sensor [binary_sensor.workday_sensor] is on). ACTIONS: Wait until Side door open [binary_sensor.side_door_open] is closed (off), then lock Side door lock [lock.side_door].",
"natural_language": {
"trigger": "When the Side door lock [lock.side_door] stays unlocked for one minute, or when the Side door open [binary_sensor.side_door_open] sensor indicates the door is closed for 15 seconds.",
"conditions": "The automation only runs if it is between 6:30 AM and 8:00 AM, or if it is between 4:00 PM and 5:00 PM and the Workday sensor [binary_sensor.workday_sensor] is on.",
"action": "The automation waits until the side door is confirmed to be closed, and then locks the Side door lock [lock.side_door]."
},
"human_like": "Automatically locks the side door if it's left unlocked or closed during morning or evening dog feeding times, ensuring it's only locked when the door is shut.",
"complexity": "medium"
}
},
{
"id": "exterior_garage_below_freezing",
"result": {
"structured": "TRIGGER: When Garage temperature [sensor.garage_temperature] falls below 2.0. ACTIONS: Send a notification to mobile_app_michaels_iphone with the message '🚨 Garage temperature low! 🚨'.",
"natural_language": {
"trigger": "When the Garage temperature [sensor.garage_temperature] drops below 2 degrees.",
"conditions": "There are no conditions to check.",
"action": "Sends a push notification to Michael's iPhone with a warning message that the garage temperature is low."
},
"human_like": "Sends a warning to Michael's phone when the garage gets too cold.",
"complexity": "low"
}
},
{
"id": "exterior_auto_unlock_front_door_if_garage_opened",
"result": {
"structured": "TRIGGER: When Mike [person.mike] OR Tiff [person.tiff] enters the home zone. ACTIONS: Wait for Garage cover [cover.garage] to become open (excluding transitions from unknown or unavailable states) for up to 15 minutes; if this occurs, unlock Front door lock [lock.front_door]. If the wait times out, no action is taken.",
"natural_language": {
"trigger": "When either Mike [person.mike] or Tiff [person.tiff] enters the home zone.",
"conditions": "There are no explicit conditions; however, the automation includes a waiting period for a specific state change.",
"action": "After the trigger, the automation waits for the Garage cover [cover.garage] to open (but not from an unknown or unavailable state) for up to 15 minutes. If the garage opens within that time, the Front door lock [lock.front_door] is unlocked. If the garage does not open within 15 minutes, nothing happens."
},
"human_like": "Automatically unlocks the front door when someone arrives home and opens the garage within 15 minutes.",
"complexity": "medium"
}
},
{
"id": "exterior_lock_jammed_notification",
"result": {
"structured": "TRIGGER: When Front door lock jammed [binary_sensor.front_door_lock_jammed] changes from off to on AND remains on for 5 minutes OR When Side door lock jammed [binary_sensor.side_door_lock_jammed] changes from off to on AND remains on for 5 minutes. CONDITIONS: None. ACTIONS: Send a notification to mobile_app_michaels_iphone with title '🔓 Lock Jammed 🔓' and a message containing the name of the triggered entity.",
"natural_language": {
"trigger": "When either the Front door lock jammed [binary_sensor.front_door_lock_jammed] or the Side door lock jammed [binary_sensor.side_door_lock_jammed] sensor changes from 'off' to 'on' and stays in the 'on' state for a continuous period of 5 minutes.",
"conditions": "There are no additional conditions that must be met.",
"action": "Sends a push notification to the user's iPhone with the title '🔓 Lock Jammed 🔓' and a message that states the name of the specific lock sensor that triggered the alert."
},
"human_like": "Sends a phone notification if a door lock is detected as jammed for five minutes.",
"complexity": "low"
}
},
{
"id": "exterior_area_with_jammed_lock",
"result": {
"structured": "TRIGGER: When Sparky location tracker [device_tracker.sparky_location] changes to away OR Michaels iphone tracker [device_tracker.michaels_iphone] changes to away OR Tiffanys iphone tracker [device_tracker.tiffanys_iphone] changes to away. CONDITIONS: (Front door lock jammed [binary_sensor.front_door_lock_jammed] is on) OR (Side door lock jammed [binary_sensor.side_door_lock_jammed] is on). ACTIONS: Send a critical notification to Michaels iphone with title '🔓 Lock Jammed 🔓' and message containing the name of the device tracker that triggered the automation.",
"natural_language": {
"trigger": "When any of the tracked devices (Sparky location tracker [device_tracker.sparky_location], Michaels iphone tracker [device_tracker.michaels_iphone], or Tiffanys iphone tracker [device_tracker.tiffanys_iphone]) changes its state to 'away'.",
"conditions": "If either the Front door lock jammed [binary_sensor.front_door_lock_jammed] or the Side door lock jammed [binary_sensor.side_door_lock_jammed] is reporting as jammed (state 'on').",
"action": "Sends a critical push notification to Michael's iPhone, alerting that a lock is jammed. The notification includes the name of the device that triggered the automation."
},
"human_like": "Sends an urgent phone notification if someone leaves the area while one of the door locks is reported as jammed.",
"complexity": "medium"
}
},
{
"id": "girls_bathroom_night_light_timer_control",
"result": {
"structured": "TRIGGER: When Bathroom night light occupancy [binary_sensor.bathroom_night_light_occupancy] becomes on OR When Bathroom night light occupancy [binary_sensor.bathroom_night_light_occupancy] becomes off AND remains off for 5 minutes OR When Nursery door [binary_sensor.nursery_door] becomes closed (off) AND remains closed for 10 minutes. CONDITIONS: Time is between 22:00:00 and 06:00:00 AND Nap mode input boolean [input_boolean.nap_mode] is on. ACTIONS: IF the trigger state change was to 'off' THEN start Girls bathroom nightlight off timer [timer.girls_bathroom_nightlight_off] ELSE cancel Girls bathroom nightlight off timer [timer.girls_bathroom_nightlight_off].",
"natural_language": {
"trigger": "The automation triggers when the Bathroom night light occupancy [binary_sensor.bathroom_night_light_occupancy] detects occupancy (turns on), when it stops detecting occupancy (turns off) and stays off for five minutes, or when the Nursery door [binary_sensor.nursery_door] is closed and stays closed for ten minutes.",
"conditions": "The automation only runs if the current time is between 10:00 PM and 6:00 AM, and if the Nap mode input boolean [input_boolean.nap_mode] is switched on.",
"action": "If the trigger was the bathroom occupancy sensor turning off, the Girls bathroom nightlight off timer [timer.girls_bathroom_nightlight_off] is started. For any other trigger (occupancy turning on or the nursery door closing), the same timer is cancelled."
},
"human_like": "Manages a nightlight timer in the girls' bathroom during nighttime nap mode, starting the timer when the room becomes unoccupied and cancelling it if occupancy is detected or the nursery door is closed.",
"complexity": "medium"
}
},
{
"id": "girls_bathroom_night_light",
"result": {
"structured": "TRIGGER: When sunset occurs OR Sun sun [sun.sun] elevation is below 2.0 OR Adults group [group.adults] changes from not_home to home OR Nursery door [binary_sensor.nursery_door] changes to on OR Bathroom night light occupancy [binary_sensor.bathroom_night_light_occupancy] changes to on OR Nap mode input boolean [input_boolean.nap_mode] changes to on OR Sun sun [sun.sun] elevation rises above 2.0 OR time is 22:00:00 OR timer.finished event occurs for Girls bathroom nightlight off timer [timer.girls_bathroom_nightlight_off]. CONDITIONS: Master alarm [alarm_control_panel.master] is NOT armed_vacation AND is NOT armed_away. ACTIONS: Choose based on trigger and conditions: If Sun sun [sun.sun] elevation is below 2.0 AND the trigger ID is turn_on, then turn on Bathroom night light [light.bathroom_night_light] with brightness 20% and RGB color (255, 164, 8). If the trigger ID is turn_off, then wait until Bathroom night light occupancy [binary_sensor.bathroom_night_light_occupancy] is off, then turn off Bathroom night light [light.bathroom_night_light].",
"natural_language": {
"trigger": "The automation can be triggered by several events: when the sun sets, when the sun's elevation drops below 2.0 degrees, when the Adults group [group.adults] returns home, when the Nursery door [binary_sensor.nursery_door] opens, when the Bathroom night light occupancy [binary_sensor.bathroom_night_light_occupancy] detects occupancy, when Nap mode input boolean [input_boolean.nap_mode] is turned on, when the sun's elevation rises above 2.0 degrees, at 10:00 PM, or when the Girls bathroom nightlight off timer [timer.girls_bathroom_nightlight_off] finishes.",
"conditions": "The automation only runs if the Master alarm [alarm_control_panel.master] is not set to armed_vacation or armed_away mode.",
"action": "Depending on the trigger, the automation will either turn on the Bathroom night light [light.bathroom_night_light] with a dim, warm color if it's dark enough and a 'turn_on' trigger fired, or it will wait for the bathroom to be unoccupied and then turn the light off if a 'turn_off' trigger fired."
},
"human_like": "Automatically controls the girls' bathroom night light, turning it on at night or when needed, and turning it off late at night or when a timer finishes, but only if the house alarm is not armed for away or vacation.",
"complexity": "high"
}
},
{
"id": "homekit_faux_event_nursery",
"result": {
"structured": "TRIGGER: When Nursery door [binary_sensor.nursery_door] becomes open (on). CONDITIONS: Nap mode input boolean [input_boolean.nap_mode] is on AND remains on for 5 minutes. ACTIONS: Trigger the homekit_faux_camera_event event.",
"natural_language": {
"trigger": "When the Nursery door [binary_sensor.nursery_door] opens.",
"conditions": "If the Nap mode input boolean [input_boolean.nap_mode] is turned on and has been on continuously for at least five minutes.",
"action": "Triggers a HomeKit camera event named 'homekit_faux_camera_event'."
},
"human_like": "Triggers a HomeKit camera event when the nursery door opens, but only if nap mode has been active for at least five minutes.",
"complexity": "low"
}
},
{
"id": "infra_le_cert_refresh",
"result": {
"structured": "TRIGGER: At 03:12:00 daily. CONDITIONS: None. ACTIONS: Restart the Home Assistant addon core_letsencrypt, wait for 5 minutes, then restart the Home Assistant addon core_nginx_proxy.",
"natural_language": {
"trigger": "Every day at 3:12 AM.",
"conditions": "There are no conditions for this automation.",
"action": "Restarts the 'core_letsencrypt' addon, waits for five minutes, and then restarts the 'core_nginx_proxy' addon."
},
"human_like": "Automatically refreshes SSL certificates by restarting the Let's Encrypt and NGINX addons in the early morning.",
"complexity": "low"
}
},
{
"id": "inovelli_clear_led_start",
"result": {
"structured": "TRIGGER: When Home Assistant starts. CONDITIONS: None. ACTIONS: Run script Blue Set LED [script.blue_set_led] with parameters: color 255, effect clear_effect, level 70, duration 65, targeting all light entities whose device model is '2-in-1 switch + dimmer (VZM31-SN)'.",
"natural_language": {
"trigger": "When Home Assistant first starts up.",
"conditions": "There are no conditions for this automation.",
"action": "Executes the Blue Set LED [script.blue_set_led] script. This script will clear the LED indicator lights on all Inovelli 2-in-1 switch + dimmer (VZM31-SN) devices, setting the color to 255, the effect to clear_effect, the brightness level to 70, and the duration to 65."
},
"human_like": "Clears the LED signals on Inovelli smart switches when Home Assistant starts.",
"complexity": "low"
}
},
{
"id": "update_complications_state_changes",
"result": {
"structured": "TRIGGER: When Garage cover [cover.garage] changes state OR When Front door lock [lock.front_door] changes state OR When Side door lock [lock.side_door] changes state OR When Nap mode input boolean [input_boolean.nap_mode] changes state. CONDITIONS: None. ACTIONS: Send notification 'update_complications' to mobile app Michael's iPhone [notify.mobile_app_michaels_iphone].",
"natural_language": {
"trigger": "When the state of the Garage cover [cover.garage], the Front door lock [lock.front_door], the Side door lock [lock.side_door], or the Nap mode input boolean [input_boolean.nap_mode] changes.",
"conditions": "There are no conditions for this automation.",
"action": "Sends a notification with the message 'update_complications' to the mobile app for Michael's iPhone [notify.mobile_app_michaels_iphone]."
},
"human_like": "Sends a notification to update phone complications whenever the garage door, front door lock, side door lock, or nap mode status changes.",
"complexity": "low"
}
},
{
"id": "pick_up_girls_reminder",
"result": {
"structured": "TRIGGER: When Michaels iphone tracker [device_tracker.michaels_iphone] OR Tiffanys iphone tracker [device_tracker.tiffanys_iphone] enters zone.school OR When Michaels iphone tracker [device_tracker.michaels_iphone] OR Tiffanys iphone tracker [device_tracker.tiffanys_iphone] enters zone.camp OR At the time specified by Pickup girls reminder input datetime [input_datetime.pickup_girls_reminder]. CONDITIONS: Workday sensor [binary_sensor.workday_sensor] is on AND current time is between 06:00:00 and 16:00:00. ACTIONS: IF (enter_pickup_zone trigger AND (current month is September through June)) OR (enter_camp_zone trigger) THEN IF trigger is enter_camp_zone THEN set Pickup girls reminder input datetime [input_datetime.pickup_girls_reminder] to today's date with time from Camp pickup time input datetime [input_datetime.camp_pickup_time] ELSE set Pickup girls reminder input datetime [input_datetime.pickup_girls_reminder] to today's date with time 15:45:00. IF trigger is pickup_reminder THEN send a critical notification to Michaels iphone tracker [device_tracker.michaels_iphone] with title 'Pickup Reminder' and message 'Pickup the twins!'.",
"natural_language": {
"trigger": "The automation triggers when either Michaels iphone tracker [device_tracker.michaels_iphone] or Tiffanys iphone tracker [device_tracker.tiffanys_iphone] enters the school zone, or when either phone enters the camp zone, or when a specific scheduled time set in Pickup girls reminder input datetime [input_datetime.pickup_girls_reminder] is reached.",
"conditions": "The automation only runs if the Workday sensor [binary_sensor.workday_sensor] indicates it is a workday, and the current time is between 6:00 AM and 4:00 PM.",
"action": "If the trigger was a phone entering a zone, the action depends on which zone. If the phone entered the camp zone, the reminder time is set to the value stored in Camp pickup time input datetime [input_datetime.camp_pickup_time]. If the phone entered the school zone and the current month is between September and June, the reminder time is set to 3:45 PM. If the trigger was the scheduled reminder time, a critical notification is sent to Michaels iphone tracker [device_tracker.michaels_iphone] with the message 'Pickup the twins!'."
},
"human_like": "Sends a reminder to pick up the twins when a parent's phone arrives at school or camp during work hours, or at a pre-set time.",
"complexity": "medium"
}
},
{
"id": "laundry_simple_laundry_notification",
"result": {
"structured": "TRIGGER: When Washer status [binary_sensor.washer_status] changes from on to off OR When timer.finished event occurs for Laundry done timer [timer.laundry_done] OR When Adults group [group.adults] state becomes home and remains for 10 minutes OR When mobile_app_notification_action event with action 'laundry_moved' occurs OR When Dryer status [binary_sensor.dryer_status] becomes on and remains for 5 minutes OR When Washer status [binary_sensor.washer_status] changes from off to on and remains for 15 minutes. CONDITIONS: (Trigger ID is notify_to_move) OR (Trigger ID is laundry_moved) OR (Trigger ID is arrived_home AND Laundry done timer [timer.laundry_done] is active). ACTIONS: If trigger is notify_to_move: Start Laundry done timer [timer.laundry_done]; If Washer status [binary_sensor.washer_status] is on, stop execution; Clear notification with tag 'laundry-done-notification' via notify.adults; Send notification 'Laundry is done!' to all notifiers of persons at home; If Adults group [group.adults] is home, run Blue Set LED [script.blue_set_led] on specified lights with effect slow_chase. If trigger is laundry_moved: In parallel, cancel Laundry done timer [timer.laundry_done], clear notification with tag 'laundry-done-notification', and run Blue Set LED [script.blue_set_led] on specified lights with effect clear_effect. If trigger is arrived_home and Laundry done timer [timer.laundry_done] is active: Finish Laundry done timer [timer.laundry_done].",
"natural_language": {
"trigger": "The automation can be triggered in several ways: when the Washer status [binary_sensor.washer_status] finishes its cycle (changes from on to off), when the Laundry done timer [timer.laundry_done] finishes, when the Adults group [group.adults] has been home for 10 minutes, when a mobile notification action named 'laundry_moved' is received, when the Dryer status [binary_sensor.dryer_status] has been on for 5 minutes, or when the Washer status [binary_sensor.washer_status] has been on for 15 minutes.",
"conditions": "The actions taken depend on which trigger occurred. If the trigger is related to the laundry being done (notify_to_move), the automation proceeds to send notifications and start a timer. If the trigger indicates the laundry has been moved (laundry_moved), it cancels the timer and clears notifications. If the trigger is the adults arriving home and the laundry timer is still active, it finishes the timer.",
"action": "When the laundry is done, it starts a timer, sends a notification to all adults at home, and sets certain lights to a slow chase effect if anyone is home. If the laundry is moved, it cancels the timer, clears the notification, and clears the light effect. If adults arrive home while the timer is active, it finishes the timer to trigger the notification flow."
},
"human_like": "This automation manages laundry notifications by alerting adults when a wash cycle finishes, providing visual cues with lights, and clearing alerts once the laundry has been moved or the dryer is started.",
"complexity": "high"
}
},
{
"id": "living_room_lights_on_when_dark",
"result": {
"structured": "TRIGGER: When Living room occupancy [binary_sensor.living_room_occupancy] becomes occupied (on). CONDITIONS: Kitchen island light [light.kitchen_island] is off AND remains off for 15 minutes AND Living room motion illuminance [sensor.living_room_motion_illuminance] is below 20 AND Adults group [group.adults] is home AND Master alarm [alarm_control_panel.master] is disarmed. ACTIONS: Turn on Kitchen island light [light.kitchen_island].",
"natural_language": {
"trigger": "When motion is detected in the living room, indicated by the Living room occupancy [binary_sensor.living_room_occupancy] sensor turning on.",
"conditions": "The Kitchen island light [light.kitchen_island] must have been off for at least 15 minutes, the light level in the living room must be below 20 lux, at least one adult must be home, and the home alarm system must be disarmed.",
"action": "Turn on the Kitchen island light [light.kitchen_island]."
},
"human_like": "Turns on the kitchen island light when it's dark, someone is home, and motion is detected in the living room, but only if the light has been off for a while.",
"complexity": "medium"
}
},
{
"id": "living_front_hall_lock_garage_control",
"result": {
"structured": "TRIGGER: When Device ID 949dd8fd2c9e4403656fc84e75de9607 [device_id:949dd8fd2c9e4403656fc84e75de9607] sends an MQTT action 'up_triple' OR 'up_quadruple' OR 'down_triple' OR 'down_quadruple'. CONDITIONS: None. ACTIONS: IF trigger is 'up_triple' THEN unlock Front door lock [lock.front_door]. IF trigger is 'down_triple' THEN lock Front door lock [lock.front_door]. IF trigger is 'up_quadruple' THEN open Garage cover [cover.garage]. IF trigger is 'down_quadruple' THEN close Garage cover [cover.garage].",
"natural_language": {
"trigger": "When a specific MQTT device (Device ID 949dd8fd2c9e4403656fc84e75de9607) sends one of four button action signals: a triple press up, a quadruple press up, a triple press down, or a quadruple press down.",
"conditions": "There are no additional conditions that must be met for the automation to run.",
"action": "Depending on which button was pressed, the automation performs a different action. A triple press up unlocks the Front door lock [lock.front_door]. A triple press down locks the Front door lock [lock.front_door]. A quadruple press up opens the Garage cover [cover.garage]. A quadruple press down closes the Garage cover [cover.garage]."
},
"human_like": "This automation allows you to control the front door lock and garage door by pressing different button sequences on a remote MQTT device.",
"complexity": "medium"
}
},
{
"id": "living_garage_control_kitchen_switch",
"result": {
"structured": "TRIGGER: When Device ID e97867a8181f2b6c5aef264706584f91 sends an MQTT action 'up_triple' OR when Device ID e97867a8181f2b6c5aef264706584f91 sends an MQTT action 'down_triple'. CONDITIONS: None. ACTIONS: If the trigger was 'up_triple', then open Garage cover [cover.garage]. If the trigger was 'down_triple', then close Garage cover [cover.garage].",
"natural_language": {
"trigger": "When a specific device in the kitchen (Device ID e97867a8181f2b6c5aef264706584f91) sends an MQTT signal for a triple-press up action or a triple-press down action.",
"conditions": "There are no conditions that need to be met for this automation to proceed.",
"action": "Depending on which trigger occurred, the automation will either open the Garage cover [cover.garage] for an up-triple press or close the Garage cover [cover.garage] for a down-triple press."
},
"human_like": "Controls the garage door by opening or closing it when a specific kitchen switch is triple-pressed up or down.",
"complexity": "low"
}
},
{
"id": "living_front_lock_control_living_switch",
"result": {
"structured": "TRIGGER: When device ID c2fce543d85f8ffccd89691a42f784d9 sends an MQTT action 'up_triple' OR when device ID c2fce543d85f8ffccd89691a42f784d9 sends an MQTT action 'down_triple'. CONDITIONS: None. ACTIONS: If the trigger was 'up_triple', unlock Front door lock [lock.front_door]. If the trigger was 'down_triple', lock Front door lock [lock.front_door].",
"natural_language": {
"trigger": "When a specific device in the living room (device ID c2fce543d85f8ffccd89691a42f784d9) sends an MQTT signal for a triple-press up action or a triple-press down action.",
"conditions": "There are no conditions that must be met.",
"action": "Depending on which trigger occurred, the automation will either unlock or lock the Front door lock [lock.front_door]. A triple-press up unlocks the door, and a triple-press down locks it."
},
"human_like": "Lets you lock or unlock the front door by triple-pressing the up or down button on a living room switch.",
"complexity": "low"
}
},
{
"id": "living_room_light_group_multitap_control",
"result": {
"structured": "TRIGGER: When device [device_id: c2fce543d85f8ffccd89691a42f784d9] sends an MQTT action 'up_double' OR When device [device_id: c2fce543d85f8ffccd89691a42f784d9] sends an MQTT action 'down_double' OR When device [device_id: e97867a8181f2b6c5aef264706584f91] sends an MQTT action 'up_double' OR When device [device_id: e97867a8181f2b6c5aef264706584f91] sends an MQTT action 'down_double'. CONDITIONS: None. ACTIONS: If the trigger id is 'turn_on', then turn on Living room light group [light.living_room_light_group]. If the trigger id is 'turn_off', then turn off Living room light group [light.living_room_light_group].",
"natural_language": {
"trigger": "When either of two specific devices (with IDs c2fce543d85f8ffccd89691a42f784d9 or e97867a8181f2b6c5aef264706584f91) sends a double-tap up or a double-tap down action via MQTT.",
"conditions": "There are no additional conditions that must be met.",
"action": "If the trigger was a double-tap up action, the Living room light group [light.living_room_light_group] is turned on. If the trigger was a double-tap down action, the Living room light group [light.living_room_light_group] is turned off."
},
"human_like": "Controls the main living room lights using double-tap actions from two different switches.",
"complexity": "medium"
}
},
{
"id": "living_room_turn_on_lights_arrival_dark",
"result": {
"structured": "TRIGGER: When Adults group [group.adults] changes state to home. CONDITIONS: Sun sun [sun.sun] elevation is below 2.0 AND Guests present [binary_sensor.guests_present] is off. ACTIONS: Wait for Front door binary sensor [binary_sensor.front_door] to become on for up to 30 minutes. If the wait times out, the automation stops. If the wait succeeds, execute two actions in parallel: 1. If Apple TV living room [media_player.apple_tv_living_room] is NOT playing, then turn on Living room light group [light.living_room_light_group]. 2. Turn on Front hall light [light.front_hall].",
"natural_language": {
"trigger": "When the Adults group [group.adults] arrives home.",
"conditions": "It must be dark outside, meaning the sun's elevation is below 2.0, and there must be no guests present, indicated by the Guests present [binary_sensor.guests_present] sensor being off.",
"action": "After the conditions are met, the automation waits for the front door to open (Front door binary sensor [binary_sensor.front_door] becomes on) for up to 30 minutes. If the door doesn't open in that time, nothing else happens. Once the door opens, two actions are performed simultaneously: the front hall light [light.front_hall] is turned on, and the living room light group [light.living_room_light_group] is turned on, but only if the Apple TV in the living room [media_player.apple_tv_living_room] is not currently playing media."
},
"human_like": "Turns on the front hall and living room lights when adults arrive home after dark, but only if there are no guests and after the front door is opened.",
"complexity": "medium"
}
},
{
"id": "main_floor_light_default_local_level",
"result": {
"structured": "TRIGGER: When sunset occurs (default_level = 80) OR When Nap mode input boolean [input_boolean.nap_mode] turns on (default_level = 80) OR When sunrise occurs (default_level = 200) OR When Master alarm [alarm_control_panel.master] changes to armed_night (default_level = 60). CONDITIONS: None. ACTIONS: Execute script Blue Set Default Level [script.blue_set_default_level] with data: default_level = '{{ default_level | default(100) }}' and entity_id list containing Front hall light [light.front_hall], Kitchen light [light.kitchen_light], and Living room light [light.living_room_light].",
"natural_language": {
"trigger": "The automation triggers at sunset, when the Nap mode input boolean [input_boolean.nap_mode] is turned on, at sunrise, or when the Master alarm [alarm_control_panel.master] is set to armed_night. Each trigger provides a specific default brightness level: 80 for sunset or nap mode, 200 for sunrise, and 60 for the night alarm.",
"conditions": "There are no conditions that must be met for the action to run.",
"action": "It runs the script Blue Set Default Level [script.blue_set_default_level], passing the appropriate default brightness level to the Front hall light [light.front_hall], Kitchen light [light.kitchen_light], and Living room light [light.living_room_light]."
},
"human_like": "Sets the default brightness for the main floor lights based on the time of day, nap mode, or alarm status.",
"complexity": "medium"
}
},
{
"id": "main_floor_front_door_turn_on_hall_light",
"result": {
"structured": "TRIGGER: When Front door binary sensor [binary_sensor.front_door] changes to open (on). CONDITIONS: Sun sun [sun.sun] elevation is below 5.0 AND current time is before 21:30:00. ACTIONS: Turn on Front hall light [light.front_hall].",
"natural_language": {
"trigger": "When the Front door binary sensor [binary_sensor.front_door] opens.",
"conditions": "If the sun's elevation, as reported by Sun sun [sun.sun], is below 5 degrees, and the current time is before 9:30 PM.",
"action": "Turns on the Front hall light [light.front_hall]."
},
"human_like": "Turns on the front hall light when the front door opens, but only after sunset and before 9:30 PM.",
"complexity": "low"
}
},
{
"id": "main_floor_front_hall_light_off_high_sun_elevation",
"result": {
"structured": "TRIGGER: When Sun sun [sun.sun] elevation attribute rises above 10.0 degrees. CONDITIONS: None. ACTIONS: Turn off Front hall light [light.front_hall].",
"natural_language": {
"trigger": "When the sun's elevation, as reported by Sun sun [sun.sun], rises above 10.0 degrees.",
"conditions": "There are no conditions that must be met.",
"action": "Turns off the Front hall light [light.front_hall]."
},
"human_like": "Turns off the front hall light when the sun is high enough in the sky.",
"complexity": "low"
}
},
{
"id": "cd72c85e-327a-4958-8e2b-fef856573302",
"result": {
"structured": "TRIGGER: At 09:30:00. CONDITIONS: Living room light group [light.living_room_light_group] is on. ACTIONS: Apply adaptive lighting to Adaptive lighting adapt brightness living room switch [switch.adaptive_lighting_adapt_brightness_living_room] with a transition of 90 seconds.",
"natural_language": {
"trigger": "At 9:30 AM every day.",
"conditions": "The Living room light group [light.living_room_light_group] must be turned on.",
"action": "Applies adaptive lighting settings to the Adaptive lighting adapt brightness living room switch [switch.adaptive_lighting_adapt_brightness_living_room], using a 90-second transition period."
},
"human_like": "At 9:30 AM, if the living room lights are on, it smoothly adjusts their brightness and color temperature to match the time of day.",
"complexity": "low"
}
},
{
"id": "lock_status_change",
"result": {
"structured": "TRIGGER: When a Z-Wave JS notification event occurs with command class 113, type 6, and event 6. CONDITIONS: Mike [person.mike] is not home. ACTIONS: Send a notification to mobile_app_michaels_iphone with title 'Lock Event' and a message that includes the unlocking event and, if defined, the name of the user (Mike, Dad, Brendan, Tiff, Lisa, or Cleaners) based on the userId parameter from the trigger event.",
"natural_language": {
"trigger": "When the Z-Wave lock sends a specific notification event indicating a lock status change (command class 113, type 6, event 6).",
"conditions": "The automation only runs if Mike [person.mike] is not at home.",
"action": "Sends a push notification to Michael's iPhone with the title 'Lock Event'. The message states the lock was unlocked and, if the event data includes a user ID, it identifies the user by name (e.g., Mike, Dad, Brendan, Tiff, Lisa, or Cleaners)."
},
"human_like": "Sends a phone notification when the smart lock is unlocked while Mike is away, identifying who unlocked it.",
"complexity": "medium"
}
},
{
"id": "lock_secure_house_evenings",
"result": {
"structured": "TRIGGER: When the time is 22:30:00 OR when Lock locks [lock.locks] remains unlocked for 5 minutes. CONDITIONS: The current time is between 22:25:00 and 07:00:00. ACTIONS: In parallel: 1) Wait until Front door binary sensor [binary_sensor.front_door] is off, then lock Front door lock [lock.front_door]. 2) Wait until Side door open [binary_sensor.side_door_open] is off, then lock Side door lock [lock.side_door].",
"natural_language": {
"trigger": "The automation triggers either at 10:30 PM each evening, or if the Lock locks [lock.locks] entity has been unlocked for five continuous minutes.",
"conditions": "The automation only runs if the current time is between 10:25 PM and 7:00 AM.",
"action": "The automation will then perform two actions in parallel: it will wait for the front door to be closed (indicated by the Front door binary sensor [binary_sensor.front_door] being off) before locking the Front door lock [lock.front_door], and simultaneously, it will wait for the side door to be closed (indicated by the Side door open [binary_sensor.side_door_open] being off) before locking the Side door lock [lock.side_door]."
},
"human_like": "Automatically locks the front and side doors in the evening or if they have been left unlocked, ensuring they are closed first.",
"complexity": "medium"
}
},
{
"id": "lock_enable_cleaner_code",
"result": {
"structured": "TRIGGER: When House planning calendar [calendar.house_planning] event starts 3 hours before its scheduled start OR when House planning calendar [calendar.house_planning] event starts OR when House planning calendar [calendar.house_planning] event ends. CONDITIONS: The calendar event summary contains the word 'Cleaners'. ACTIONS: If the trigger is a 'set_lock' event (calendar start), then set user code 15 on Front door lock [lock.front_door] to a secret code, send a notification to mobile_app_michaels_iphone with message 'Setting cleaners lock code', and disarm Master alarm [alarm_control_panel.master]. If the trigger is a 'clear_lock' event (calendar end), then clear user code 15 on Front door lock [lock.front_door], send a notification to mobile_app_michaels_iphone with message 'Clearing cleaners lock code', and then evaluate: If Presence home group [group.presence_home] is not_home, then if Home nearest distance [sensor.home_nearest_distance] is greater than 55000, arm Master alarm [alarm_control_panel.master] in vacation mode, otherwise arm it in away mode.",
"natural_language": {
"trigger": "The automation is triggered by events on the House planning calendar [calendar.house_planning]. It runs when a calendar event starts (including 3 hours before its scheduled start time) or when a calendar event ends.",
"conditions": "The automation only proceeds if the calendar event's summary contains the word 'Cleaners'.",
"action": "If the trigger is a calendar event start, the automation sets a specific user code (slot 15) on the Front door lock [lock.front_door], sends a notification to a mobile device stating 'Setting cleaners lock code', and disarms the Master alarm [alarm_control_panel.master]. If the trigger is a calendar event end, the automation clears the user code from the lock, sends a notification stating 'Clearing cleaners lock code', and then checks if everyone is away. If no one is home, it arms the alarm in vacation mode if the nearest distance sensor [sensor.home_nearest_distance] shows a value above 55000, otherwise it arms the alarm in away mode."
},
"human_like": "Manages the cleaners' access by automatically enabling and disabling a lock code based on a calendar event, and adjusts the home alarm accordingly.",
"complexity": "medium"
}
},
{
"id": "lock_secure_house_nearby_but_offline",
"result": {
"structured": "TRIGGER: When Mikeiphone14 unifi tracker [device_tracker.mikeiphone14_unifi] OR Tiffanys iphone unifi tracker [device_tracker.tiffanys_iphone_unifi] changes to not_home AND remains in that state for 10 minutes. CONDITIONS: (Adults group [group.adults] is home) AND (Mikeiphone14 unifi tracker [device_tracker.mikeiphone14_unifi] AND Tiffanys iphone unifi tracker [device_tracker.tiffanys_iphone_unifi] are both not_home) AND (Lock locks [lock.locks] is unlocked). ACTIONS: Send notification 'Wifi Auto Lock Triggered' to mobile_app_michaels_iphone AND Lock Lock locks [lock.locks].",
"natural_language": {
"trigger": "When either Mike's iPhone or Tiffany's iPhone is reported as not home for at least 10 minutes.",
"conditions": "The group of adults must be at home, both Mike's and Tiffany's iPhones must be reported as not home, and the house locks must be unlocked.",
"action": "Send a notification titled 'Wifi Auto Lock Triggered' to Michael's iPhone and then lock the house locks."
},
"human_like": "Automatically locks the doors and sends a notification when both adults' phones are away from home for 10 minutes but the household is still considered occupied.",
"complexity": "medium"
}
},
{
"id": "main_bath_set_default_local_level",
"result": {
"structured": "TRIGGER: When sunset occurs (with variable default_level set to 60) OR When sunrise occurs (with variable default_level set to 254) OR When Master alarm [alarm_control_panel.master] changes to armed_night (with variable default_level set to 20). CONDITIONS: None. ACTIONS: Execute script Blue Set Default Level [script.blue_set_default_level] with data: default_level = '{{ default_level | default(100) }}' and entity_id = light.main_bath_light [light.main_bath_light].",
"natural_language": {
"trigger": "The automation triggers at sunset, at sunrise, or when the Master alarm [alarm_control_panel.master] is armed for the night (armed_night). At sunset, it sets a default brightness level of 60. At sunrise, it sets a default brightness level of 254. When the alarm is armed for the night, it sets a default brightness level of 20.",
"conditions": "There are no conditions that must be met for the action to run.",
"action": "It runs the script Blue Set Default Level [script.blue_set_default_level] to apply the calculated default brightness level to the Main bath light [light.main_bath_light]."
},
"human_like": "Automatically adjusts the default brightness for the main bathroom light based on the time of day or when the house alarm is set to night mode.",
"complexity": "medium"
}
},
{
"id": "main_bath_time_light_shower",
"result": {
"structured": "TRIGGER: When Main bath light [light.main_bath_light] turns on OR at 21:30:30. CONDITIONS: Main bath light [light.main_bath_light] is on AND the current time is after 21:30:00. ACTIONS: Turn on Main bath light [light.main_bath_light] with brightness set to 3% over a 10-second transition.",
"natural_language": {
"trigger": "When the Main bath light [light.main_bath_light] is turned on, or at exactly 9:30:30 PM.",
"conditions": "The Main bath light [light.main_bath_light] must be on, and the current time must be after 9:30:00 PM.",
"action": "Sets the Main bath light [light.main_bath_light] to a low brightness of 3% using a smooth 10-second transition."
},
"human_like": "Dims the main bathroom light to a low level after 9:30 PM, either when it's turned on or at a specific time, for a shower-friendly ambiance.",
"complexity": "medium"
}
},
{
"id": "main_bath_full_brightness",
"result": {
"structured": "TRIGGER: When device [device_id: e3bc901892c55fbcaa6dd42876632c35] sends an MQTT action of type 'up_double'. CONDITIONS: None. ACTIONS: Turn on Main bath light [light.main_bath_light] to 100% brightness.",
"natural_language": {
"trigger": "When a specific device (device ID e3bc901892c55fbcaa6dd42876632c35) sends a double-up action via MQTT.",
"conditions": "There are no conditions that must be met for this automation to run.",
"action": "Turns on the Main bath light [light.main_bath_light] at full brightness."
},
"human_like": "Turns the main bathroom light on to full brightness with a double-up action from a specific device.",
"complexity": "low"
}
},
{
"id": "main_bath_on_humidity",
"result": {
"structured": "TRIGGER: When Bathroom humidity derivative [sensor.bathroom_humidity_derivative] is above 1. CONDITIONS: Adults group [group.adults] is home. ACTIONS: Send a notification to mobile_app_michaels_iphone with the message 'Shower fan should run'.",
"natural_language": {
"trigger": "When the Bathroom humidity derivative [sensor.bathroom_humidity_derivative] rises above a value of 1.",
"conditions": "Only if the Adults group [group.adults] is in a 'home' state.",
"action": "Sends a notification to the user's phone (mobile_app_michaels_iphone) suggesting that the shower fan should be turned on."
},
"human_like": "Sends a phone notification to turn on the shower fan when the bathroom humidity starts rising and an adult is home.",
"complexity": "low"
}
},
{
"id": "monitoring_healthcheck",
"result": {
"structured": "TRIGGER: When the time pattern matches every 5 minutes. CONDITIONS: None. ACTIONS: Call the service rest_command.healthcheck.",
"natural_language": {
"trigger": "Every 5 minutes.",
"conditions": "There are no conditions.",
"action": "Sends a ping by calling the service rest_command.healthcheck."
},
"human_like": "Sends a periodic ping to a health check service every 5 minutes.",
"complexity": "low"
}
},
{
"id": "mornings_wake_up_sequence",
"result": {
"structured": "TRIGGER: When ios_wakeup_event occurs OR Nap mode input boolean [input_boolean.nap_mode] turns off OR Living room occupancy [binary_sensor.living_room_occupancy] turns on. CONDITIONS: Adults group [group.adults] is home AND time is between 05:00:00 and 09:00:00 AND (Sun sun [sun.sun] elevation is below 3.0 OR Tomorrow io home cloud cover [sensor.tomorrow_io_home_cloud_cover] is above 65). ACTIONS: Turn on Kitchen island light [light.kitchen_island] and Christmas Tree [switch.christmas_tree]. THEN wait until Living room occupancy [binary_sensor.living_room_occupancy] is on, for a maximum of 1 hour, and stop if timeout occurs. THEN turn on Kitchen light [light.kitchen_light] and Living room light [light.living_room_light] with brightness at 28% and a transition of 120 seconds.",
"natural_language": {
"trigger": "The automation can start in three ways: when a specific iOS wake-up event is received, when the Nap mode input boolean [input_boolean.nap_mode] is turned off, or when the Living room occupancy [binary_sensor.living_room_occupancy] sensor detects someone in the room.",
"conditions": "All of the following must be true: at least one adult is home, as indicated by the Adults group [group.adults]; the current time is between 5:00 AM and 9:00 AM; and it is either dark outside (the sun's elevation is below 3.0 degrees) or it's a cloudy day (cloud cover is above 65%).",
"action": "First, the Kitchen island light [light.kitchen_island] and the Christmas Tree [switch.christmas_tree] are turned on. The automation then pauses, waiting for up to one hour for someone to be detected in the living room. If occupancy is detected, it proceeds. If the hour passes without detection, the automation stops. Once occupancy is confirmed, the Kitchen light [light.kitchen_light] and Living room light [light.living_room_light] are turned on to 28% brightness, fading in over two minutes."
},
"human_like": "Gradually turns on lights in the morning when someone wakes up, but only if it's dark or cloudy and an adult is home.",
"complexity": "medium"
}
},
{
"id": "nursery_nap_mode_toggle",
"result": {
"structured": "TRIGGER: When a single action is triggered on the MQTT device with device_id 1cb9a601720330d677b308f3d186b9ff. CONDITIONS: None. ACTIONS: Toggle the state of Nap mode input boolean [input_boolean.nap_mode] AND then wait for 1 second.",
"natural_language": {
"trigger": "When a single action is triggered on the MQTT device in the nursery [device_id: 1cb9a601720330d677b308f3d186b9ff].",
"conditions": "There are no conditions for this automation.",
"action": "Toggles the Nap mode input boolean [input_boolean.nap_mode] on or off, and then pauses for one second."
},
"human_like": "Toggles the nap mode on or off when a button in the nursery is pressed.",
"complexity": "low"
}
},
{
"id": "nursery_led_on",
"result": {
"structured": "TRIGGER: When the device with ID 1ccea5c5991d06dc7b15dd83b69832e4 sends an MQTT action of type 'on'. CONDITIONS: None. ACTIONS: First, turn on Nursery power loss gate [switch.nursery_power_loss_gate]. Then, wait until Nursery LED [light.nursery_led] is not in the 'unavailable' state. Then, if Nap mode input boolean [input_boolean.nap_mode] is off, execute script LED Strip On [script.led_strip_on] with data scene_id set to Nursery LED On [scene.nursery_led_on]. Otherwise, if Nap mode input boolean [input_boolean.nap_mode] is on, execute script LED Strip On [script.led_strip_on] with data scene_id set to scene.nursery_led_on_low.",
"natural_language": {
"trigger": "When a specific MQTT device in the nursery (device ID 1ccea5c5991d06dc7b15dd83b69832e4) sends an 'on' action command.",
"conditions": "There are no explicit conditions that must be met before proceeding with the actions.",
"action": "First, the automation turns on the Nursery power loss gate [switch.nursery_power_loss_gate]. It then waits for the Nursery LED [light.nursery_led] to become available. Once the light is available, it checks the state of Nap mode input boolean [input_boolean.nap_mode]. If nap mode is off, it runs a script to turn on the LED strip using the standard 'Nursery LED On' scene. If nap mode is on, it runs the same script but uses a different, presumably lower brightness, scene called 'nursery_led_on_low'."
},
"human_like": "Turns on the nursery LED lights when a remote button is pressed, using a standard or dimmed scene depending on whether nap mode is active.",
"complexity": "medium"
}
},
{
"id": "nursery_led_off",
"result": {
"structured": "TRIGGER: When Device ID 1ccea5c5991d06dc7b15dd83b69832e4 sends an MQTT 'off' action OR when sunrise occurs with a +2 hour offset. CONDITIONS: None. ACTIONS: Wait until Nursery LED [light.nursery_led] is not in an 'unavailable' state, then turn off Nursery LED [light.nursery_led].",
"natural_language": {
"trigger": "The automation triggers either when a specific device in the nursery sends an 'off' command via MQTT, or two hours after sunrise.",
"conditions": "There are no conditions that must be met for the action to proceed.",
"action": "The automation first waits for the Nursery LED [light.nursery_led] to become available. Once it is available, it turns the light off."
},
"human_like": "Turns off the nursery LED light either when a remote button is pressed or two hours after sunrise.",
"complexity": "medium"
}
},
{
"id": "nursery_set_nap_accessories",
"result": {
"structured": "TRIGGER: When Nap mode input boolean [input_boolean.nap_mode] changes state. CONDITIONS: None. ACTIONS: If Nap mode input boolean [input_boolean.nap_mode] is on, then activate scene Baby Nap On [scene.baby_nap_on] AND set volume of Sonos living room [media_player.sonos_living_room] to 0.15. If Nap mode input boolean [input_boolean.nap_mode] is off, then if the current time is between 17:00:00 and 08:30:00, activate scene Baby Nap Off [scene.baby_nap_off] AND run script LED Strip On [script.led_strip_on] with data scene_id: scene.nursery_led_on; otherwise, activate scene Baby Nap Off [scene.baby_nap_off] AND turn on Nursery light [light.nursery_light].",
"natural_language": {
"trigger": "Whenever the state of the Nap mode input boolean [input_boolean.nap_mode] changes.",
"conditions": "There are no additional conditions; the automation runs whenever the trigger occurs.",
"action": "If nap mode is turned on, it activates the 'Baby Nap On' scene [scene.baby_nap_on] and sets the volume of the Sonos living room [media_player.sonos_living_room] to 15%. If nap mode is turned off, it checks the time of day. If it's between 5:00 PM and 8:30 AM, it activates the 'Baby Nap Off' scene [scene.baby_nap_off] and runs the 'LED Strip On' script [script.led_strip_on] to set the nursery LED scene. Otherwise, during daytime hours, it activates the 'Baby Nap Off' scene [scene.baby_nap_off] and turns on the Nursery light [light.nursery_light]."
},
"human_like": "Sets up or restores nursery lighting and sound based on whether nap mode is activated, adjusting for day and night time.",
"complexity": "medium"
}
},
{
"id": "nursery_humidifer_evenings",
"result": {
"structured": "TRIGGER: When Nap mode input boolean [input_boolean.nap_mode] changes from off to on OR at 19:00:00. CONDITIONS: (TRIGGER is manual_on) OR (TRIGGER is early_on AND Adults group [group.adults] is home). ACTIONS: Turn on Nursery humidifier [fan.nursery_humidifier].",
"natural_language": {
"trigger": "When the Nap mode input boolean [input_boolean.nap_mode] is manually turned on, or when the clock reaches 7:00 PM.",
"conditions": "If the trigger was the manual activation of nap mode, or if the trigger was the scheduled 7:00 PM time and the Adults group [group.adults] are home.",
"action": "Turns on the Nursery humidifier [fan.nursery_humidifier]."
},
"human_like": "Turns on the nursery humidifier either when nap mode is activated or at 7:00 PM if an adult is home.",
"complexity": "medium"
}
},
{
"id": "girls_fan_control",
"result": {
"structured": "TRIGGER: When Nap mode input boolean [input_boolean.nap_mode] turns on OR When Master alarm [alarm_control_panel.master] changes from armed_vacation to any state except unknown, unavailable, or triggered (sets variable fan_speed_percentage to 33) OR When Girls room temperature [sensor.girls_room_temperature] is above 22.0 AND below 25 (sets variable fan_speed_percentage to 33) OR When Girls room temperature [sensor.girls_room_temperature] is above 24.9 (sets variable fan_speed_percentage to 66) OR When Sun sun [sun.sun] attribute azimuth is above 150 OR When Girls room temperature [sensor.girls_room_temperature] is below 22.5 (id: force_off). CONDITIONS: (Season sensor [sensor.season] is NOT winter) AND (Master alarm [alarm_control_panel.master] is NOT armed_vacation) AND (My ecobee climate [climate.my_ecobee] is NOT heat) AND (time is after 11:00:00). ACTIONS: Choose based on conditions: If trigger id force_off is active, then turn off Girls ceiling fan [fan.girls_ceiling_fan]. Otherwise, if Tomorrow io home nowcast weather [weather.tomorrow_io_home_nowcast] attribute temperature is above 18 OR Girls room temperature [sensor.girls_room_temperature] is above 21, then: If trigger id nap_on is active AND Girls room temperature [sensor.girls_room_temperature] is above 25, turn on Girls ceiling fan [fan.girls_ceiling_fan] at 66% speed. Otherwise, turn on Girls ceiling fan [fan.girls_ceiling_fan] at the percentage defined by variable fan_speed_percentage (default 33).",
"natural_language": {
"trigger": "The automation can be triggered in several ways: when nap mode is turned on, when the master alarm changes from vacation mode, when the girls' room temperature is between 22 and 25 degrees, when it's above 24.9 degrees, when the sun's azimuth is above 150 degrees, or when the temperature drops below 22.5 degrees. Some triggers also set an internal fan speed variable.",
"conditions": "For the automation to run, it must not be winter, the master alarm must not be in vacation mode, the home's heating system must not be active, and the time must be after 11:00 AM.",
"action": "The fan's action depends on specific conditions. If the trigger for a low temperature (force_off) is active, the fan is turned off. Otherwise, if the forecasted temperature is warm or the room temperature is above 21 degrees, the fan is turned on. The speed is set to 66% if nap mode is on and the room is very hot (above 25°C); otherwise, it uses a speed determined by the triggering event (defaulting to 33%)."
},
"human_like": "Automatically controls the girls' room ceiling fan based on temperature, time of day, and system modes, turning it on for cooling when needed and off when it's cool enough.",
"complexity": "high"
}
},
{
"id": "nursery_temp_warning",
"result": {
"structured": "TRIGGER: When Girls room temperature [sensor.girls_room_temperature] remains below 17 for 30 minutes OR When Girls room temperature [sensor.girls_room_temperature] remains above 25 for 10 minutes. CONDITIONS: Nap mode input boolean [input_boolean.nap_mode] is on. ACTIONS: For each person entity currently at home, send a notification to that person's notifier with a title 'Nursery Temperature Warning', a message indicating if the temperature is low or high along with the current temperature value, and data including a URL, click action, tag, and group.",
"natural_language": {
"trigger": "When the Girls room temperature [sensor.girls_room_temperature] stays below 17 degrees for 30 minutes, or when it stays above 25 degrees for 10 minutes.",
"conditions": "The automation only runs if the Nap mode input boolean [input_boolean.nap_mode] is turned on.",
"action": "Sends a notification titled 'Nursery Temperature Warning' to every person who is currently at home. The message states whether the temperature is low or high and includes the current temperature reading. The notification contains a link to the girls-room dashboard and is tagged for grouping."
},
"human_like": "Sends a warning notification to all home occupants if the nursery temperature becomes too cold or too hot while nap mode is active.",
"complexity": "medium"
}
},
{
"id": "nursery_off_if_forgotten",
"result": {
"structured": "TRIGGER: When Girls room camera motion [binary_sensor.girls_room_camera_motion] is off AND Girls room occupancy [binary_sensor.girls_room_occupancy] is off OR When timer.finished event occurs for Girls lights off timer [timer.girls_lights_off] OR When Girls fan light [light.girls_fan] turns on. CONDITIONS: (Nursery light [light.nursery_light] is on OR Nursery LED [light.nursery_led] is on) AND Nap mode input boolean [input_boolean.nap_mode] is off AND time is before 19:00:00. ACTIONS: If trigger is Girls fan light [light.girls_fan] turning on, cancel Girls lights off timer [timer.girls_lights_off]. If trigger is Girls room camera motion [binary_sensor.girls_room_camera_motion] is off AND Girls room occupancy [binary_sensor.girls_room_occupancy] is off, start Girls lights off timer [timer.girls_lights_off]. If trigger is timer.finished event for Girls lights off timer [timer.girls_lights_off] AND (Nursery light [light.nursery_light] is on OR Nursery LED [light.nursery_led] is on), turn on Nursery LED [light.nursery_led], delay 10 seconds, turn off Nursery light [light.nursery_light], delay 30 seconds, turn off Nursery LED [light.nursery_led].",
"natural_language": {
"trigger": "The automation can be triggered in three ways: when both the Girls room camera motion [binary_sensor.girls_room_camera_motion] and Girls room occupancy [binary_sensor.girls_room_occupancy] sensors report no activity, when the Girls lights off timer [timer.girls_lights_off] finishes, or when the Girls fan light [light.girls_fan] is turned on.",
"conditions": "For the automation to proceed, at least one of the nursery lights (Nursery light [light.nursery_light] or Nursery LED [light.nursery_led]) must be on, the Nap mode input boolean [input_boolean.nap_mode] must be off, and the current time must be before 7:00 PM.",
"action": "Depending on which trigger occurred, the automation performs different actions. If the fan light is turned on, it cancels the timer. If both motion and occupancy are off, it starts the timer. If the timer finishes and a nursery light is still on, it performs a sequence: first, it turns on the Nursery LED, waits 10 seconds, turns off the main Nursery light, waits 30 seconds, and finally turns off the Nursery LED."
},
"human_like": "Turns off the nursery lights if they are left on when the room is unoccupied, but only during the day and not during nap time.",
"complexity": "medium"
}
},
{
"id": "nursery_turn_off_white_noise_forgotten",
"result": {
"structured": "TRIGGER: When Nursery white noise [switch.nursery_white_noise] OR Nursery humidifier [fan.nursery_humidifier] turns on AND remains on for 30 minutes. CONDITIONS: The current time is before 17:00:00 AND Nap mode switch [switch.nap_mode] is off. ACTIONS: Turn off the entity that triggered the automation (Nursery white noise [switch.nursery_white_noise] OR Nursery humidifier [fan.nursery_humidifier]).",
"natural_language": {
"trigger": "When either the Nursery white noise [switch.nursery_white_noise] or the Nursery humidifier [fan.nursery_humidifier] is turned on and stays on for 30 minutes.",
"conditions": "If the current time is before 5:00 PM and the Nap mode switch [switch.nap_mode] is turned off.",
"action": "Turns off the specific device (either the white noise machine or the humidifier) that triggered the automation."
},
"human_like": "Automatically turns off nursery accessories like the white noise machine or humidifier if they are left on for 30 minutes during the day when nap mode is not active.",
"complexity": "medium"
}
},
{
"id": "nursery_nap_off_via_lightswitch",
"result": {
"structured": "TRIGGER: When Nursery light [light.nursery_light] turns on from off. CONDITIONS: Nap mode input boolean [input_boolean.nap_mode] is on. ACTIONS: Turn off Nap mode input boolean [input_boolean.nap_mode].",
"natural_language": {
"trigger": "When the Nursery light [light.nursery_light] is switched on from an off state.",
"conditions": "If the Nap mode input boolean [input_boolean.nap_mode] is currently turned on.",
"action": "Turns off the Nap mode input boolean [input_boolean.nap_mode]."
},
"human_like": "Turns off nap mode when the nursery light is switched on.",
"complexity": "low"
}
},
{
"id": "nursery_nap_on_door_open",
"result": {
"structured": "TRIGGER: When Nursery door [binary_sensor.nursery_door] remains open (on) for 10 minutes OR When Nursery door [binary_sensor.nursery_door] remains closed (off) for 5 minutes. CONDITIONS: Nap mode input boolean [input_boolean.nap_mode] is on AND (time is NOT between 01:30:00 and 07:00:00). ACTIONS: IF the trigger was left_open (door open for 10 minutes) THEN for each person entity that is home, send a notification using their notifier attribute with title 'Nursery Door Left Open', message 'Door is Open', and data including a URL and tag. ELSE (if the trigger was door closed for 5 minutes) send a notification to notify.adults with message 'clear_notification' and data tag 'nursery-door-open-warning'.",
"natural_language": {
"trigger": "When the Nursery door [binary_sensor.nursery_door] stays open for 10 minutes, or when it stays closed for 5 minutes.",
"conditions": "The Nap mode input boolean [input_boolean.nap_mode] must be turned on, and the current time must be outside the period from 1:30 AM to 7:00 AM.",
"action": "If the door was left open for 10 minutes, a notification titled 'Nursery Door Left Open' with the message 'Door is Open' is sent to every person who is currently at home, using their individual notification service. The notification includes a link to the girls' room dashboard and a specific tag for grouping. If the door was closed for 5 minutes, a clear notification command is sent to the adults' notification service to remove any previous door-open warnings."
},
"human_like": "Sends a warning if the nursery door is left open during nap time (outside of night hours), and clears the warning when the door is closed again.",
"complexity": "medium"
}
},
{
"id": "nursery_quite_mode_control",
"result": {
"structured": "TRIGGER: When time is 19:00:00 OR Nap mode input boolean [input_boolean.nap_mode] turns on OR time is 08:00:00 OR Nap mode input boolean [input_boolean.nap_mode] turns off OR Nursery LED [light.nursery_led] changes state to null. CONDITIONS: (For the first action branch: trigger ID is quite_on) OR (For the second action branch: trigger ID is quite_off) OR (For the third action branch: trigger ID is led_control AND time is after 18:30:00 AND the new state of Nursery LED [light.nursery_led] is either 'off' or 'on'). ACTIONS: If trigger ID is quite_on, turn on Quite mode input boolean [input_boolean.quite_mode]. If trigger ID is quite_off, turn off Quite mode input boolean [input_boolean.quite_mode]. If trigger ID is led_control, time is after 18:30:00, and the new state of Nursery LED [light.nursery_led] is 'off' or 'on', then turn Quite mode input boolean [input_boolean.quite_mode] to the same state (off or on) as the Nursery LED.",
"natural_language": {
"trigger": "The automation triggers at 7:00 PM, when Nap mode input boolean [input_boolean.nap_mode] is turned on, at 8:00 AM, when Nap mode input boolean [input_boolean.nap_mode] is turned off, or when the Nursery LED [light.nursery_led] changes its state to null.",
"conditions": "Depending on which trigger fired, different conditions apply. For the 7:00 PM or nap mode on triggers, the only condition is that the trigger must be one of those. For the 8:00 AM or nap mode off triggers, the condition is that the trigger must be one of those. For the nursery light change trigger, it must be after 6:30 PM and the light's new state must be either 'off' or 'on'.",
"action": "If triggered by 7:00 PM or nap mode being turned on, the automation turns on Quite mode input boolean [input_boolean.quite_mode]. If triggered by 8:00 AM or nap mode being turned off, it turns off Quite mode input boolean [input_boolean.quite_mode]. If triggered by a change in the nursery light after 6:30 PM, it sets Quite mode input boolean [input_boolean.quite_mode] to match the new state of the light (off or on)."
},
"human_like": "This automation manages quiet mode based on a schedule, nap mode status, and the nursery light's state in the evening, syncing quiet mode with the light after 6:30 PM.",
"complexity": "medium"
}
},
{
"id": "nursery_nap_mode_on_forgotten",
"result": {
"structured": "TRIGGER: When Nursery door [binary_sensor.nursery_door] remains closed (off) for 1 minute. CONDITIONS: (Time is after 19:30:00) AND (Nursery light [light.nursery_light] is off). ACTIONS: Turn on Nap mode input boolean [input_boolean.nap_mode].",
"natural_language": {
"trigger": "When the Nursery door [binary_sensor.nursery_door] remains closed for at least one minute.",
"conditions": "If the current time is after 7:30 PM and the Nursery light [light.nursery_light] is off.",
"action": "Turns on the nap mode by enabling the Nap mode input boolean [input_boolean.nap_mode]."
},
"human_like": "Automatically turns on nap mode in the evening if the nursery door has been closed for a minute and the light is off, likely indicating a forgotten nap routine.",
"complexity": "low"
}
},
{
"id": "nursery_door_open_during_sleep",
"result": {
"structured": "TRIGGER: When Nursery door [binary_sensor.nursery_door] changes to open (on). CONDITIONS: Nap mode input boolean [input_boolean.nap_mode] is on AND remains on for 10 minutes AND Adults group [group.adults] is home AND NOT (time is between 01:30:00 and 07:00:00). ACTIONS: For each person entity whose state is 'home', send a notification using the notifier attribute value, with title 'Nursery Door Opened!' and message 'Someone has left the nursery', including data for URL and grouping. Then, IF Apple TV living room [media_player.apple_tv_living_room] is playing, pause it. Finally, wait for 3 minutes.",
"natural_language": {
"trigger": "When the Nursery door [binary_sensor.nursery_door] is opened.",
"conditions": "Nap mode must be active for at least 10 minutes, at least one adult must be home, and the current time must not be between 1:30 AM and 7:00 AM.",
"action": "Sends a notification to all adults who are at home, informing them that the nursery door has been opened. If the Apple TV in the living room is playing, it will be paused. The automation then waits for three minutes."
},
"human_like": "Alerts adults when the nursery door is opened during nap time, pausing the TV and sending notifications, but only during daytime hours.",
"complexity": "medium"
}
},
{
"id": "nursery_set_girls_wakeup_time",
"result": {
"structured": "TRIGGER: When the time is 09:00:00. CONDITIONS: None. ACTIONS: First, retrieve events from the Ontario holidays calendar [calendar.ontario_holidays] for the next 24 hours and store the result in a variable named 'holidays'. Then, set the Girls wakeup time input datetime [input_datetime.girls_wakeup_time] to 07:30:00 if there is at least one holiday event in the next 24 hours OR if the day after the current day is a Saturday (6) or Sunday (7). Otherwise, set it to 07:00:00.",
"natural_language": {
"trigger": "Every day at 9:00 AM.",
"conditions": "There are no specific conditions that must be met for the actions to run; the automation executes based solely on the time trigger.",
"action": "First, the automation checks the Ontario holidays calendar [calendar.ontario_holidays] for any events scheduled in the next 24 hours. Then, it sets the Girls wakeup time input datetime [input_datetime.girls_wakeup_time]. The wake-up time is set to 7:30 AM if there is a holiday the next day or if the next day is a weekend (Saturday or Sunday). If neither is true, the wake-up time is set to 7:00 AM."
},
"human_like": "Sets the girls' scheduled wake-up time to 7:30 AM on weekends and holidays, and 7:00 AM on weekdays, updating automatically each morning.",
"complexity": "medium"
}
},
{
"id": "nursery_let_girls_out_of_bed_time_trigger",
"result": {
"structured": "TRIGGER: When the time reaches the value set in Girls wakeup time input datetime [input_datetime.girls_wakeup_time]. CONDITIONS: (Adults group [group.adults] is home) OR (Guests present [binary_sensor.guests_present] is on). ACTIONS: Wait until Nursery LED [light.nursery_led] is not in an 'unavailable' state, then execute the script LED Strip On [script.led_strip_on] with the parameter scene_id set to scene.nursery_led_on.",
"natural_language": {
"trigger": "At the specific time set in the Girls wakeup time input datetime [input_datetime.girls_wakeup_time].",
"conditions": "If at least one adult is home, as indicated by the Adults group [group.adults] being 'home', or if guests are present, as indicated by the Guests present [binary_sensor.guests_present] sensor being on.",
"action": "First, the automation waits for the Nursery LED [light.nursery_led] to become available. Once it is available, it runs the LED Strip On [script.led_strip_on] script, which activates the Nursery LED On [scene.nursery_led_on] scene."
},
"human_like": "Turns on the nursery lights at the girls' scheduled wake-up time, but only if an adult or guest is home.",
"complexity": "medium"
}
},
{
"id": "nusery_led_strip_reenable",
"result": {
"structured": "TRIGGER: When UPS status [sensor.ups_status] changes from Online OR when Nap mode input boolean [input_boolean.nap_mode] changes from on to off OR when the time matches the value stored in Girls wakeup time input datetime [input_datetime.girls_wakeup_time] OR when the time is 18:30:00. CONDITIONS: None specified outside of the choose block. ACTIONS: Wait until Nursery power loss gate [switch.nursery_power_loss_gate] is not in an unavailable state. Then, choose an action based on conditions: IF Nap mode input boolean [input_boolean.nap_mode] is off, THEN turn on Nursery power loss gate [switch.nursery_power_loss_gate]. OTHERWISE, IF Nap mode input boolean [input_boolean.nap_mode] is on AND the current time is between 07:00:00 and 08:00:00, THEN turn on Nursery power loss gate [switch.nursery_power_loss_gate].",
"natural_language": {
"trigger": "The automation can be triggered in four ways: when the UPS status [sensor.ups_status] changes from 'Online' to another state; when the Nap mode input boolean [input_boolean.nap_mode] is turned off; at a specific time stored in the Girls wakeup time input datetime [input_datetime.girls_wakeup_time]; or at 6:30 PM every day.",
"conditions": "There are no global conditions that must be met for the automation to run. However, the actions themselves are conditional. The automation will first wait until the Nursery power loss gate [switch.nursery_power_loss_gate] is available (not 'unavailable'). Then, it will check the state of Nap mode. If nap mode is off, it will proceed to turn on the gate. If nap mode is on, it will only turn on the gate if the current time is between 7:00 AM and 8:00 AM.",
"action": "The automation ensures the Nursery power loss gate [switch.nursery_power_loss_gate] is available and then turns it on, but the decision to turn it on is gated by the nap mode status and a specific morning time window."
},
"human_like": "This automation re-enables the nursery light after a power loss or at scheduled times, but respects nap mode by only turning it on in the morning if nap mode is active.",
"complexity": "medium"
}
},
{
"id": "nursery_show_camera_automatically",
"result": {
"structured": "TRIGGER: When Nap mode input boolean [input_boolean.nap_mode] turns on. CONDITIONS: NOT (Apple TV living room [media_player.apple_tv_living_room] is playing). ACTIONS: Turn on Entertainment switch relay [switch.entertainment_switch_relay]; Turn on Remote apple tv living room [remote.apple_tv_living_room]; Send command 'wakeup' to Remote apple tv living room [remote.apple_tv_living_room]; Wait for 30 seconds; Fire event 'homekit_faux_camera_event'; Wait for 5 seconds; Send command 'home' to Remote apple tv living room [remote.apple_tv_living_room].",
"natural_language": {
"trigger": "When the Nap mode input boolean [input_boolean.nap_mode] is turned on.",
"conditions": "The Apple TV living room [media_player.apple_tv_living_room] is not currently playing any media.",
"action": "First, the automation turns on the Entertainment switch relay [switch.entertainment_switch_relay] and the Remote apple tv living room [remote.apple_tv_living_room]. It then sends a 'wakeup' command to the Apple TV remote. After a 30-second delay, it fires a 'homekit_faux_camera_event'. Following another 5-second delay, it sends a 'home' command to the Apple TV remote."
},
"human_like": "Automatically wakes up the living room Apple TV and switches to the nursery camera feed when nap mode is activated, provided the TV isn't already playing something.",
"complexity": "medium"
}
},
{
"id": "nursery_turn_on_kitchen_lighting",
"result": {
"structured": "TRIGGER: When Nap mode input boolean [input_boolean.nap_mode] turns on. CONDITIONS: The current time is after 18:00:00. ACTIONS: Turn on Kitchen island light [light.kitchen_island] AND turn off Living room light [light.living_room_light] and Kitchen light [light.kitchen_light] with a transition of 90 seconds.",
"natural_language": {
"trigger": "When the Nap mode input boolean [input_boolean.nap_mode] is switched on.",
"conditions": "The automation only runs if the current time is after 6:00 PM.",
"action": "It turns on the Kitchen island light [light.kitchen_island]. Simultaneously, it turns off the Living room light [light.living_room_light] and the Kitchen light [light.kitchen_light], making the lights fade out over 90 seconds."
},
"human_like": "Turns on the kitchen island light and turns off other living area lights with a slow fade when nap mode is activated in the evening.",
"complexity": "low"
}
},
{
"id": "nursery_girls_light_control",
"result": {
"structured": "TRIGGER: When the device with ID 619b1285a00b9c9b050cedb19e02d4c1 sends a single action via MQTT. CONDITIONS: (Nap mode input boolean [input_boolean.nap_mode] is off) AND (the current time is before 19:15:00). ACTIONS: If conditions are met: Toggle Nursery light [light.nursery_light] AND turn off Nursery LED [light.nursery_led]. Otherwise (default): Toggle Nursery LED [light.nursery_led] AND turn off Nursery light [light.nursery_light]. Then, wait for 5 seconds.",
"natural_language": {
"trigger": "When a specific MQTT device (ID 619b1285a00b9c9b050cedb19e02d4c1) in the girls' room sends a single action signal.",
"conditions": "The automation checks if the Nap mode input boolean [input_boolean.nap_mode] is turned off and if the current time is before 7:15 PM.",
"action": "If both conditions are true, it toggles the main Nursery light [light.nursery_light] and turns off the Nursery LED [light.nursery_led]. If either condition is false, it instead toggles the Nursery LED [light.nursery_led] and turns off the main Nursery light [light.nursery_light]. After performing the light actions, it waits for 5 seconds."
},
"human_like": "Controls the nursery lights based on nap mode and time of day when a button in the girls' room is pressed, ensuring appropriate lighting for different situations.",
"complexity": "medium"
}
},
{
"id": "nursery_warmer_temp_led",
"result": {
"structured": "TRIGGER: When the time is 19:00:00 OR When Nursery LED [light.nursery_led] turns on. CONDITIONS: The current time is after 18:00:00 AND before 21:00:00 AND Nursery LED [light.nursery_led] is on. ACTIONS: Turn on Nursery LED [light.nursery_led] with brightness 254 and color temperature 2000 Kelvin.",
"natural_language": {
"trigger": "The automation runs either at 7:00 PM sharp, or whenever the Nursery LED [light.nursery_led] is switched on.",
"conditions": "For the automation to proceed, the current time must be between 6:00 PM and 9:00 PM, and the Nursery LED [light.nursery_led] must already be in the 'on' state.",
"action": "Sets the Nursery LED [light.nursery_led] to a warm, bright setting by adjusting its brightness to 254 and its color temperature to 2000 Kelvin."
},
"human_like": "Sets the nursery LED strip to a warm, bright light in the evening, either at 7 PM or when it's turned on.",
"complexity": "medium"
}
},
{
"id": "nursery_led_on_bedtime_routine",
"result": {
"structured": "TRIGGER: When Nursery light [light.nursery_light] turns on. CONDITIONS: The current time is after 18:00:00. ACTIONS: Turn on Nursery LED [light.nursery_led], activate the scene Nursery LED On [scene.nursery_led_on], and then wait for 1 second.",
"natural_language": {
"trigger": "When the Nursery light [light.nursery_light] is turned on.",
"conditions": "The automation only runs if the current time is after 6:00 PM.",
"action": "It turns on the Nursery LED [light.nursery_led], activates the 'Nursery LED On' [scene.nursery_led_on] scene to set a specific lighting state, and then pauses for one second."
},
"human_like": "Turns on the nursery LED strip and sets a specific scene when the main nursery light is switched on in the evening, as part of a bedtime routine.",
"complexity": "low"
}
},
{
"id": "girls_control_hall_lights_bedtime",
"result": {
"structured": "TRIGGER: When Nap mode input boolean [input_boolean.nap_mode] turns on. CONDITIONS: None. ACTIONS: Turn off Upstairs hall light [light.upstairs_hall]. THEN, IF Sun sun [sun.sun] elevation is below 4.0, turn on Main stairs light [light.main_stairs]; OTHERWISE, turn off Main stairs light [light.main_stairs].",
"natural_language": {
"trigger": "When the Nap mode input boolean [input_boolean.nap_mode] is switched on.",
"conditions": "There are no conditions that must be met before the actions are executed.",
"action": "First, turn off the Upstairs hall light [light.upstairs_hall]. Then, check the sun's elevation. If the Sun sun [sun.sun] elevation is below 4.0 degrees, turn on the Main stairs light [light.main_stairs]. If the sun's elevation is 4.0 degrees or higher, turn off the Main stairs light [light.main_stairs]."
},
"human_like": "Turns off the upstairs hall light at bedtime and controls the main stairs light based on how dark it is outside.",
"complexity": "medium"
}
},
{
"id": "girls_hall_lights_off_door_open",
"result": {
"structured": "TRIGGER: When Nursery door [binary_sensor.nursery_door] opens (state changes to 'on') AND previous state is not unknown OR unavailable OR When timer.finished event occurs for Bedtime stairs light off timer [timer.bedtime_stairs_light_off] OR When Nursery door [binary_sensor.nursery_door] closes (state changes to 'off') AND previous state is not unknown OR unavailable. CONDITIONS: Nap mode input boolean [input_boolean.nap_mode] is 'on'. ACTIONS: IF trigger id is lights_off THEN turn off Main stairs light [light.main_stairs] AND Upstairs hall light [light.upstairs_hall] AND cancel Bedtime stairs light off timer [timer.bedtime_stairs_light_off]. ELSE IF trigger id is lights_on AND current time is between 18:30:00 and 21:45:00 THEN wait 5 seconds, turn on Main stairs light [light.main_stairs], AND start Bedtime stairs light off timer [timer.bedtime_stairs_light_off].",
"natural_language": {
"trigger": "The automation triggers when the Nursery door [binary_sensor.nursery_door] opens, when the Bedtime stairs light off timer [timer.bedtime_stairs_light_off] finishes, or when the Nursery door [binary_sensor.nursery_door] closes. The door triggers only activate if the previous state was a known, available value.",
"conditions": "The automation only runs if Nap mode input boolean [input_boolean.nap_mode] is turned on.",
"action": "If the trigger was the door opening or the timer finishing, the automation turns off the Main stairs light [light.main_stairs] and the Upstairs hall light [light.upstairs_hall], and cancels the Bedtime stairs light off timer [timer.bedtime_stairs_light_off]. If the trigger was the door closing and the current time is between 6:30 PM and 9:45 PM, the automation waits 5 seconds, turns on the Main stairs light [light.main_stairs], and starts the Bedtime stairs light off timer [timer.bedtime_stairs_light_off]."
},
"human_like": "During nap mode, this automation controls the hall and stair lights based on the nursery door: turning them off when the door opens or a timer ends, and turning them on with a timer when the door closes in the evening.",
"complexity": "medium"
}
},
{
"id": "girls_linked_led_to_light_state",
"result": {
"structured": "TRIGGER: When Girls fan light [light.girls_fan] changes state to on OR off. CONDITIONS: The new state of Girls fan light [light.girls_fan] is either 'on' or 'off'. ACTIONS: Turn Girls room switch light [light.girls_room_switch] on OR off, matching the new state of Girls fan light [light.girls_fan].",
"natural_language": {
"trigger": "When the Girls fan light [light.girls_fan] is turned on or off.",
"conditions": "The new state of the Girls fan light [light.girls_fan] must be a valid light state, either 'on' or 'off'.",
"action": "Sets the Girls room switch light [light.girls_room_switch] to the same state as the Girls fan light [light.girls_fan]."
},
"human_like": "Syncs the Girls room switch light with the Girls fan light, so they turn on and off together.",
"complexity": "low"
}
},
{
"id": "girls_mute_speaker_at_bedtime",
"result": {
"structured": "TRIGGER: When Nap mode input boolean [input_boolean.nap_mode] turns on. CONDITIONS: None. ACTIONS: Set the volume of Girls room sonos [media_player.girls_room_sonos] to 0.01.",
"natural_language": {
"trigger": "When the Nap mode input boolean [input_boolean.nap_mode] is turned on.",
"conditions": "There are no additional conditions.",
"action": "Sets the volume of the Girls room sonos [media_player.girls_room_sonos] to a very low level (0.01)."
},
"human_like": "Mutes the speaker in the girls' room when nap mode is activated.",
"complexity": "low"
}
},
{
"id": "girls_yoto_player_bedtime",
"result": {
"structured": "TRIGGER: When Nap mode input boolean [input_boolean.nap_mode] changes from off to on. CONDITIONS: Bedroom player [media_player.bedroom_player] is NOT playing. ACTIONS: Wait up to 30 minutes for Bedroom player online [binary_sensor.bedroom_player_online] to be neither offline, unknown, nor unavailable. If the condition is met within the timeout, then play the media item '7AzCP-01-01' on Bedroom player [media_player.bedroom_player] and set its volume to 50%.",
"natural_language": {
"trigger": "When the Nap mode input boolean [input_boolean.nap_mode] is turned on.",
"conditions": "The Bedroom player [media_player.bedroom_player] must not already be playing.",
"action": "The automation will wait for up to 30 minutes for the Bedroom player online [binary_sensor.bedroom_player_online] to report it is online. Once the player is confirmed online, it will start playing the media item '7AzCP-01-01' on the Bedroom player [media_player.bedroom_player] and set its volume to 50%."
},
"human_like": "Automatically starts playing a bedtime track on the bedroom player when nap mode is activated, ensuring the player is online first.",
"complexity": "medium"
}
},
{
"id": "girls_yoto_auto_sleep_players_overnight",
"result": {
"structured": "TRIGGER: When Bedroom player [media_player.bedroom_player] OR Merry and vivs player [media_player.merry_and_vivs_player] changes state to playing. CONDITIONS: The current time is between 23:00:00 AND 06:00:00. ACTIONS: Set the sleep timer for the triggered player to 900 seconds. Specifically, if the trigger was Bedroom player [media_player.bedroom_player], set Bedroom player sleep timer seconds remaining [number.bedroom_player_sleep_timer_seconds_remaining] to 900. If the trigger was Merry and vivs player [media_player.merry_and_vivs_player], set Merry and vivs player sleep timer seconds remaining [number.merry_and_vivs_player_sleep_timer_seconds_remaining] to 900.",
"natural_language": {
"trigger": "When either the Bedroom player [media_player.bedroom_player] or the Merry and vivs player [media_player.merry_and_vivs_player] starts playing.",
"conditions": "The automation only runs if the current time is between 11:00 PM and 6:00 AM.",
"action": "It sets a 15-minute (900-second) sleep timer on the specific player that triggered the automation. For the Bedroom player, it updates the Bedroom player sleep timer seconds remaining [number.bedroom_player_sleep_timer_seconds_remaining]. For the Merry and vivs player, it updates the Merry and vivs player sleep timer seconds remaining [number.merry_and_vivs_player_sleep_timer_seconds_remaining]."
},
"human_like": "Automatically sets a 15-minute sleep timer on the children's Yoto players when they start playing overnight.",
"complexity": "medium"
}
},
{
"id": "girls_yoto_auto_off",
"result": {
"structured": "TRIGGER: When the timer Bedtime stairs light off timer [timer.bedtime_stairs_light_off] finishes. ACTIONS: Wait for the condition (Girls room motion [binary_sensor.girls_room_motion] is off AND Girls room occupancy [binary_sensor.girls_room_occupancy] is off) to become true, with a timeout of 90 minutes. If the condition becomes true before the timeout, then stop playback on Bedroom player [media_player.bedroom_player] and Merry and vivs player [media_player.merry_and_vivs_player]. If the timeout is reached, no further action is taken.",
"natural_language": {
"trigger": "When the Bedtime stairs light off timer [timer.bedtime_stairs_light_off] finishes.",
"conditions": "There are no explicit conditions. The automation includes a wait action that requires both the Girls room motion [binary_sensor.girls_room_motion] and Girls room occupancy [binary_sensor.girls_room_occupancy] to be off before proceeding.",
"action": "After the trigger, the automation waits for up to 90 minutes for both motion and occupancy in the girls' room to be off. If that happens, it stops the playback on the Bedroom player [media_player.bedroom_player] and the Merry and vivs player [media_player.merry_and_vivs_player]. If the wait times out, the automation stops without performing the stop action."
},
"human_like": "Automatically turns off the Yoto players in the bedroom and girls' room after bedtime, but only if the room is unoccupied and there's no motion for a while.",
"complexity": "medium"
}
},
{
"id": "return_home_annoucement",
"result": {
"structured": "TRIGGER: When Michaels iphone tracker [device_tracker.michaels_iphone] enters the zone 'home'. CONDITIONS: Tiff [person.tiff] is home AND Nap mode input boolean [input_boolean.nap_mode] is on. ACTIONS: Send a notification to mobile_app_tiffanys_iphone with title 'Mike is almost home' and message 'Keep Stella Quiet', then wait for 15 minutes. The automation runs in single mode and will not trigger again while active, with exceeded runs handled silently.",
"natural_language": {
"trigger": "When the device tracker for Michaels iphone [device_tracker.michaels_iphone] detects that the phone has entered the home zone.",
"conditions": "Both Tiff [person.tiff] must be at home, and the nap mode toggle [input_boolean.nap_mode] must be turned on.",
"action": "Sends a notification to Tiff's iPhone with the title 'Mike is almost home' and the message 'Keep Stella Quiet', then waits for 15 minutes before the automation can be triggered again."
},
"human_like": "Sends a reminder to keep the dog quiet when Mike is arriving home, but only if Tiff is home and nap mode is active.",
"complexity": "low"
}
},
{
"id": "tiff_return_home_notification",
"result": {
"structured": "TRIGGER: When Tiff [person.tiff] enters the zone zone.home. CONDITIONS: Mike [person.mike] is home AND remains home for 10 minutes. ACTIONS: Send a notification to mobile_app_michaels_iphone with title 'Tiff is returning home' and message 'Tiff has entered the home zone'.",
"natural_language": {
"trigger": "When Tiff [person.tiff] enters the home zone.",
"conditions": "If Mike [person.mike] has been at home for at least 10 minutes.",
"action": "Sends a notification titled 'Tiff is returning home' with the message 'Tiff has entered the home zone' to the phone associated with mobile_app_michaels_iphone."
},
"human_like": "Notifies Mike when Tiff returns home, but only if Mike has been home for at least 10 minutes.",
"complexity": "low"
}
},
{
"id": "update_notification",
"result": {
"structured": "TRIGGER: When Docker hub update available [binary_sensor.docker_hub_update_available] becomes on. CONDITIONS: None. ACTIONS: Send a notification to mobile_app_michaels_iphone with the message 'There is a new Home Assistant release available.'.",
"natural_language": {
"trigger": "When the Docker hub update available [binary_sensor.docker_hub_update_available] sensor indicates that an update is available.",
"conditions": "There are no conditions that must be met.",
"action": "Sends a push notification to Michael's iPhone stating 'There is a new Home Assistant release available.'."
},
"human_like": "Sends a phone notification when a new Home Assistant update is detected.",
"complexity": "low"
}
},
{
"id": "general_presence_notification_home",
"result": {
"structured": "TRIGGER: When Bumpa person [person.bumpa] changes from not_home to home OR when Lisa person [person.lisa] changes from not_home to home. CONDITIONS: Mike [person.mike] is home. ACTIONS: Send a notification to mobile_app_michaels_iphone with title 'HASS Presence Notification' and a message containing the friendly name of the person who triggered the automation and the text 'is arriving'.",
"natural_language": {
"trigger": "When either Bumpa person [person.bumpa] or Lisa person [person.lisa] arrives home, changing their state from 'not_home' to 'home'.",
"conditions": "Mike [person.mike] must already be at home.",
"action": "Sends a notification to Michael's iPhone, announcing that the person who just arrived is on their way home."
},
"human_like": "Notifies Michael when either Bumpa or Lisa arrives home, but only if Mike is already home.",
"complexity": "low"
}
},
{
"id": "ask_pupper_home",
"result": {
"structured": "TRIGGER: When Sun sun [sun.sun] elevation attribute is below 5 degrees. CONDITIONS: Master alarm [alarm_control_panel.master] is armed_away AND Master alarm [alarm_control_panel.master] is NOT armed_vacation. ACTIONS: Set variables action_home and action_away. Send notification to mobile_app_michaels_iphone with message 'Is the pupper home alone?' and two actions: 'Pupper Home' and 'Not Home'. Wait for a mobile_app_notification_action event with action matching either action_home or action_away. If the received action is action_home, turn on Pupper home input boolean [input_boolean.pupper_home]. If the received action is action_away, turn off Pupper home input boolean [input_boolean.pupper_home].",
"natural_language": {
"trigger": "When the sun's elevation [sun.sun] drops below 5 degrees, indicating it is after dark.",
"conditions": "The Master alarm [alarm_control_panel.master] must be set to 'armed_away' (indicating the house is empty), and it must not be set to 'armed_vacation' mode.",
"action": "The automation sends a notification to the user's phone asking 'Is the pupper home alone?' with two response options: 'Pupper Home' and 'Not Home'. It then waits for the user to select one of these options. If the user selects 'Pupper Home', it turns on the Pupper home input boolean [input_boolean.pupper_home]. If the user selects 'Not Home', it turns off the Pupper home input boolean [input_boolean.pupper_home]."
},
"human_like": "Asks the user if the dog is home after dark when the house alarm is set to away, and updates a status flag based on their response.",
"complexity": "medium"
}
},
{
"id": "set_pupper_light_on",
"result": {
"structured": "TRIGGER: When sunset occurs OR when Master alarm [alarm_control_panel.master] changes to armed_away. CONDITIONS: Sun sun [sun.sun] elevation is below 2.0 AND Pupper home input boolean [input_boolean.pupper_home] is on. ACTIONS: Wait 5 minutes, then turn on Kitchen island light [light.kitchen_island].",
"natural_language": {
"trigger": "The automation triggers either at sunset or when the Master alarm [alarm_control_panel.master] is set to armed_away.",
"conditions": "The sun's elevation [sun.sun] must be below 2.0 degrees, and the Pupper home input boolean [input_boolean.pupper_home] must be turned on.",
"action": "After a 5-minute delay, the Kitchen island light [light.kitchen_island] is turned on."
},
"human_like": "Turns on the kitchen island light for the dog at dark, either at sunset or when the house alarm is set to away, but only if the dog is home.",
"complexity": "medium"
}
},
{
"id": "upstairs_evening_convenience_control",
"result": {
"structured": "TRIGGER: When Device ID e3bc901892c55fbcaa6dd42876632c35 [device_id: e3bc901892c55fbcaa6dd42876632c35] receives a double down action OR When Device ID 0d619322f1e8664e17f93285090c18bd [device_id: 0d619322f1e8664e17f93285090c18bd] receives a double down action OR When Device ID 67df18469d484ee9d7870f2a5fb692cb [device_id: 67df18469d484ee9d7870f2a5fb692cb] receives a double down action. CONDITIONS: The current time is after 21:00:00. ACTIONS: Fire the event goodnight_event.",
"natural_language": {
"trigger": "When a specific device (Device ID e3bc901892c55fbcaa6dd42876632c35, Device ID 0d619322f1e8664e17f93285090c18bd, or Device ID 67df18469d484ee9d7870f2a5fb692cb) sends a 'double down' action signal.",
"conditions": "The automation only runs if it is after 9:00 PM.",
"action": "Triggers a system-wide 'goodnight_event'."
},
"human_like": "Triggers a goodnight routine when a double press down action is detected on certain devices after 9 PM.",
"complexity": "medium"
}
},
{
"id": "vacation_mode_depart",
"result": {
"structured": "TRIGGER: When Home nearest distance [sensor.home_nearest_distance] exceeds 55000. CONDITIONS: Faux girls home tracker [device_tracker.faux_girls_home] is not_home AND Guests present [binary_sensor.guests_present] is off. ACTIONS: Set My ecobee current mode select [select.my_ecobee_current_mode] to 'away'. Turn off all lights on the top_floor, main_floor, and basement floors (errors are ignored). Turn off all fans on the top_floor. Close Garage cover [cover.garage]. Lock Lock locks [lock.locks]. Set Master alarm [alarm_control_panel.master] to vacation mode.",
"natural_language": {
"trigger": "When the Home nearest distance [sensor.home_nearest_distance] sensor reports a value greater than 55000.",
"conditions": "The Faux girls home tracker [device_tracker.faux_girls_home] must report a state of 'not_home', and the Guests present [binary_sensor.guests_present] sensor must be off, indicating no guests are present.",
"action": "The automation sets the thermostat to 'away' mode via My ecobee current mode select [select.my_ecobee_current_mode]. It then turns off all lights on the top floor, main floor, and basement, ignoring any errors if they occur. It also turns off all fans on the top floor, closes the Garage cover [cover.garage], locks the Lock locks [lock.locks], and arms the Master alarm [alarm_control_panel.master] in vacation mode."
},
"human_like": "Activates vacation mode when the home is far away and unoccupied, securing the house by locking up, turning off lights and fans, closing the garage, and setting the alarm.",
"complexity": "medium"
}
},
{
"id": "vacaiton_keep_ecobee_away",
"result": {
"structured": "TRIGGER: When My ecobee current mode select [select.my_ecobee_current_mode] changes from 'away' to any state except 'unknown' or 'unavailable'. CONDITIONS: Master alarm [alarm_control_panel.master] is armed_vacation. ACTIONS: Send a notification to mobile_app_michaels_iphone with message 'Consider Setting Ecobee Vacation' AND set My ecobee current mode select [select.my_ecobee_current_mode] to 'away'.",
"natural_language": {
"trigger": "When the My ecobee current mode select [select.my_ecobee_current_mode] changes from the 'away' setting to any other valid state, excluding 'unknown' or 'unavailable'.",
"conditions": "The Master alarm [alarm_control_panel.master] must be in 'armed_vacation' mode.",
"action": "Sends a notification to the user's phone (mobile_app_michaels_iphone) with the message 'Consider Setting Ecobee Vacation', and then sets the My ecobee current mode select [select.my_ecobee_current_mode] back to 'away' mode."
},
"human_like": "Ensures the thermostat stays in Away mode when the house alarm is set to Vacation, sending a reminder notification if it changes.",
"complexity": "low"
}
},
{
"id": "vacation_mode_return",
"result": {
"structured": "TRIGGER: When Home nearest distance [sensor.home_nearest_distance] falls below 55000. CONDITIONS: NOT (Master alarm [alarm_control_panel.master] is disarmed). ACTIONS: Set My ecobee current mode select [select.my_ecobee_current_mode] to 'home' AND arm Master alarm [alarm_control_panel.master] to 'away'.",
"natural_language": {
"trigger": "When the Home nearest distance [sensor.home_nearest_distance] sensor reports a value below 55000.",
"conditions": "The Master alarm [alarm_control_panel.master] must not be in a disarmed state.",
"action": "Sets the My ecobee current mode select [select.my_ecobee_current_mode] to 'home' and then arms the Master alarm [alarm_control_panel.master] to 'away'."
},
"human_like": "When you are returning from vacation and get close to home, this automation sets the thermostat to home mode and arms the alarm system.",
"complexity": "low"
}
},
{
"id": "vacation_lighting",
"result": {
"structured": "TRIGGER: When Master alarm [alarm_control_panel.master] changes to armed_vacation OR when Master alarm [alarm_control_panel.master] changes to disarmed. CONDITIONS: None. ACTIONS: If the trigger was the change to armed_vacation, then turn on Simulated light presence switch [switch.simulated_light_presence]. Otherwise (default), turn off Simulated light presence switch [switch.simulated_light_presence].",
"natural_language": {
"trigger": "When the Master alarm [alarm_control_panel.master] is set to 'armed_vacation' mode or when it is disarmed.",
"conditions": "There are no conditions for this automation.",
"action": "If the alarm was armed for vacation, the automation turns on the Simulated light presence switch [switch.simulated_light_presence]. If the alarm was disarmed, it turns the switch off."
},
"human_like": "Turns on a simulated light when the house alarm is set to vacation mode, and turns it off when the alarm is disarmed.",
"complexity": "low"
}
}
]