587 lines
62 KiB
JSON
587 lines
62 KiB
JSON
[
|
|
{
|
|
"id": "clear_active_mode",
|
|
"result": {
|
|
"structured": "TRIGGER: At 07:00:00 daily. CONDITIONS: None. ACTIONS: Set the value of active mode [input_text.active_mode] to an empty string.",
|
|
"natural_language": {
|
|
"trigger": "Every day at 7:00 AM.",
|
|
"conditions": "There are no conditions that must be met.",
|
|
"action": "Clears the text value of the active mode [input_text.active_mode] input helper, setting it to empty."
|
|
},
|
|
"human_like": "Clears the active mode setting every morning at 7 AM.",
|
|
"complexity": "low"
|
|
}
|
|
},
|
|
{
|
|
"id": "clear_force_hot_water_helpers",
|
|
"result": {
|
|
"structured": "TRIGGER: When the time is 00:00:00 OR 10:00:00 OR 20:00:00. CONDITIONS: None. ACTIONS: Turn off force hot water off [input_boolean.force_hot_water_off] AND turn off force hot water on [input_boolean.force_hot_water_on].",
|
|
"natural_language": {
|
|
"trigger": "The automation runs at three specific times of day: midnight, 10:00 AM, and 8:00 PM.",
|
|
"conditions": "There are no conditions that must be met.",
|
|
"action": "It turns off the helper switch force hot water off [input_boolean.force_hot_water_off] and also turns off the helper switch force hot water on [input_boolean.force_hot_water_on]."
|
|
},
|
|
"human_like": "Resets the 'force hot water' helper switches three times a day to clear any manual overrides.",
|
|
"complexity": "low"
|
|
}
|
|
},
|
|
{
|
|
"id": "control_hot_water_schedule",
|
|
"result": {
|
|
"structured": "TRIGGER: When hot water schedule [schedule.hotwater_schedule] changes state OR when force hot water off [input_boolean.force_hot_water_off] changes state OR when force hot water on [input_boolean.force_hot_water_on] changes state OR every 15 minutes (time_pattern). CONDITIONS: None. ACTIONS: Choose the first matching condition set: 1. If force hot water off [input_boolean.force_hot_water_off] is on, then turn off hot water [switch.hot_water]. 2. Else, if force hot water on [input_boolean.force_hot_water_on] is on, then turn on hot water [switch.hot_water]. 3. Else, if ((hot water schedule [schedule.hotwater_schedule] is on) OR (energy consumption mean over last 10 minutes [sensor.energy_consumption_mean_over_last_10_minutes] is less than -2000)) AND (resistencia termoacumulador temperature [sensor.resistencia_termoacumulador_temperature] is less than desired hot water temperature [input_number.desired_hot_water_temperature]), then turn on hot water [switch.hot_water]. 4. Else, if ((hot water schedule [schedule.hotwater_schedule] is off) OR (resistencia termoacumulador temperature [sensor.resistencia_termoacumulador_temperature] is greater than or equal to desired hot water temperature [input_number.desired_hot_water_temperature])), then turn off hot water [switch.hot_water].",
|
|
"natural_language": {
|
|
"trigger": "The automation runs whenever the hot water schedule [schedule.hotwater_schedule] changes, when the manual override switches for forcing the hot water off [input_boolean.force_hot_water_off] or on [input_boolean.force_hot_water_on] change, or every 15 minutes.",
|
|
"conditions": "There are no global conditions. The automation uses a set of internal, exclusive rules to decide what to do.",
|
|
"action": "The automation checks rules in order. First, if the 'force hot water off' switch is on, it turns the hot water off. If not, but the 'force hot water on' switch is on, it turns the hot water on. If neither override is active, it checks the normal operating logic: if the schedule is on or there is significant excess solar energy, and the current water temperature is below the desired temperature, it turns the hot water on. Finally, if the schedule is off or the water temperature has reached or exceeded the desired temperature, it turns the hot water off."
|
|
},
|
|
"human_like": "Automatically controls the hot water heater based on a schedule, available solar energy, and temperature, while allowing for manual overrides.",
|
|
"complexity": "medium"
|
|
}
|
|
},
|
|
{
|
|
"id": "control_swimming_pool_pump_based_schedule",
|
|
"result": {
|
|
"structured": "TRIGGER: When swimming pool pump schedule [schedule.swimming_pool_pump_schedule] changes state. CONDITIONS: None. ACTIONS: If swimming pool pump schedule [schedule.swimming_pool_pump_schedule] is on, then turn on swimming pool pump [device_id: 11352414f861aaceba25adee16b975f5]. If swimming pool pump schedule [schedule.swimming_pool_pump_schedule] is off, then turn off swimming pool pump [device_id: 11352414f861aaceba25adee16b975f5].",
|
|
"natural_language": {
|
|
"trigger": "Whenever the state of the swimming pool pump schedule [schedule.swimming_pool_pump_schedule] changes.",
|
|
"conditions": "There are no conditions that must be met.",
|
|
"action": "The automation checks the new state of the schedule. If the schedule is on, it turns on the swimming pool pump [device_id: 11352414f861aaceba25adee16b975f5]. If the schedule is off, it turns off the swimming pool pump [device_id: 11352414f861aaceba25adee16b975f5]."
|
|
},
|
|
"human_like": "Turns the swimming pool pump on or off automatically based on a predefined schedule.",
|
|
"complexity": "low"
|
|
}
|
|
},
|
|
{
|
|
"id": "delete_cameras_snapshots",
|
|
"result": {
|
|
"structured": "TRIGGER: When Home Assistant starts OR at 7:00:00 every day. CONDITIONS: None. ACTIONS: Delete files in the folder /config/www/doorbell/ that are older than 604800 seconds (7 days) and have the extensions .png or .jpg.",
|
|
"natural_language": {
|
|
"trigger": "The automation runs either when Home Assistant first starts up or every day at 7:00 AM.",
|
|
"conditions": "There are no conditions that must be met for the action to run.",
|
|
"action": "Deletes image files (.png and .jpg) from the folder '/config/www/doorbell/' if they are older than 7 days."
|
|
},
|
|
"human_like": "Cleans up old camera snapshot images from the doorbell folder once a day or on system startup.",
|
|
"complexity": "low"
|
|
}
|
|
},
|
|
{
|
|
"id": "fetch_periodically_alarm_status",
|
|
"result": {
|
|
"structured": "TRIGGER: When Home Assistant starts OR every 10 minutes (at minutes matching pattern /10). CONDITIONS: (lg webos tv oled48c16la [media_player.lg_webos_tv_oled48c16la] is off) OR (NOT (lg webos tv oled48c16la [media_player.lg_webos_tv_oled48c16la] source attribute is HDMI 3)). ACTIONS: Execute service rest_command.trigger_alarm_status_check.",
|
|
"natural_language": {
|
|
"trigger": "The automation runs either when Home Assistant starts up or every 10 minutes.",
|
|
"conditions": "It checks if the TV (lg webos tv oled48c16la [media_player.lg_webos_tv_oled48c16la]) is turned off, or if it is not currently set to the HDMI 3 source (which would indicate the Mac mini is probably not being used).",
|
|
"action": "It triggers a REST command to fetch the alarm status."
|
|
},
|
|
"human_like": "Periodically checks and updates the alarm status when the TV is off or not in use.",
|
|
"complexity": "medium"
|
|
}
|
|
},
|
|
{
|
|
"id": "frigate_motion_detected",
|
|
"result": {
|
|
"structured": "TRIGGER: When an MQTT message is received on topic 'frigate/events'. CONDITIONS: (anyone home [input_boolean.anyone_home] is off) OR (ajax security system [alarm_control_panel.ajax_security_system] is armed_home). ACTIONS: Send a mobile notification with a message containing the detected object label from the trigger payload and an image URL constructed from the event ID.",
|
|
"natural_language": {
|
|
"trigger": "When a motion detection event is published to the MQTT topic 'frigate/events' by the Frigate system.",
|
|
"conditions": "If either nobody is home, as indicated by the anyone home [input_boolean.anyone_home] being off, or if the house alarm is set to armed_home, as indicated by the ajax security system [alarm_control_panel.ajax_security_system].",
|
|
"action": "Sends a high-priority notification to mobile devices, stating the type of object detected (e.g., person, car) and includes a thumbnail image of the event from the Frigate server."
|
|
},
|
|
"human_like": "Sends a mobile alert with a snapshot when motion is detected by the security cameras, but only when the house is either empty or the alarm is armed.",
|
|
"complexity": "medium"
|
|
}
|
|
},
|
|
{
|
|
"id": "motion_detected_back",
|
|
"result": {
|
|
"structured": "TRIGGER: When dvr camera traseiras motion alarm 2 [binary_sensor.dvr_camera_traseiras_motion_alarm_2] changes from off to on AND remains on for 2 seconds. CONDITIONS: (anyone home [input_boolean.anyone_home] is off) OR (ajax security system [alarm_control_panel.ajax_security_system] is armed_home). ACTIONS: 1. Take a snapshot from dvr camera traseiras main 2 [camera.dvr_camera_traseiras_main_2] and save it to a file with a timestamp. 2. Analyze the saved image using a Large Language Model (Gemini 1.5 Pro) to generate a short Portuguese description. 3. Send a high-priority mobile notification with the description, the image, and an action to open the camera app. 4. Wait for 3 minutes.",
|
|
"natural_language": {
|
|
"trigger": "When the dvr camera traseiras motion alarm 2 [binary_sensor.dvr_camera_traseiras_motion_alarm_2] detects motion, changing from 'off' to 'on' and staying on for at least 2 seconds.",
|
|
"conditions": "Either no one is home, indicated by the anyone home [input_boolean.anyone_home] being off, or the house alarm is set to 'armed_home', indicated by the ajax security system [alarm_control_panel.ajax_security_system].",
|
|
"action": "The automation captures a snapshot from the dvr camera traseiras main 2 [camera.dvr_camera_traseiras_main_2], analyzes the image using an AI model to create a short description in Portuguese, and then sends a high-priority notification to mobile devices with the description, the image, and a button to open the camera app. It then pauses for 3 minutes."
|
|
},
|
|
"human_like": "Sends a smart alert with an AI-generated description when motion is detected by the back camera, but only if the house is empty or the alarm is armed.",
|
|
"complexity": "medium"
|
|
}
|
|
},
|
|
{
|
|
"id": "motion_detected_frente",
|
|
"result": {
|
|
"structured": "TRIGGER: When dvr camera frente motion alarm [binary_sensor.dvr_camera_frente_motion_alarm] changes from off to on AND remains on for 2 seconds. CONDITIONS: (anyone home [input_boolean.anyone_home] is off) OR (ajax security system [alarm_control_panel.ajax_security_system] is armed_home). ACTIONS: 1. Take a snapshot from dvr camera frente main [camera.dvr_camera_frente_main] and save it to a timestamped file. 2. Analyze the saved image using an LLM vision service with a specific prompt. 3. Send a high-priority mobile notification with the analysis result and the image, including an action to open the camera app. 4. Wait for 3 minutes.",
|
|
"natural_language": {
|
|
"trigger": "When motion is detected by the front camera's motion sensor [binary_sensor.dvr_camera_frente_motion_alarm] and the motion state remains 'on' for at least two seconds.",
|
|
"conditions": "The automation runs only if either nobody is home, indicated by the anyone home [input_boolean.anyone_home] being off, or if the home security system [alarm_control_panel.ajax_security_system] is in the 'armed_home' mode.",
|
|
"action": "The automation takes a snapshot from the front camera [camera.dvr_camera_frente_main], analyzes the image using an AI model to generate a short Portuguese description, and then sends a high-priority notification to mobile devices with the description and the image. It also includes a button to open the camera app directly. After sending the notification, it waits for three minutes before potentially running again."
|
|
},
|
|
"human_like": "Sends a smart notification with an AI-generated description when motion is detected at the front of the house, but only when the home is empty or the alarm is armed.",
|
|
"complexity": "medium"
|
|
}
|
|
},
|
|
{
|
|
"id": "motion_detected_garage",
|
|
"result": {
|
|
"structured": "TRIGGER: When dvr camera garagem motion alarm 2 [binary_sensor.dvr_camera_garagem_motion_alarm_2] changes from off to on AND remains on for 2 seconds. CONDITIONS: (anyone home [input_boolean.anyone_home] is off) OR (ajax security system [alarm_control_panel.ajax_security_system] is armed_home). ACTIONS: 1. Take a snapshot from dvr camera garagem sub 4 [camera.dvr_camera_garagem_sub_4] and save it to a timestamped file. 2. Analyze the saved image using an LLM vision model with a specific prompt to describe it in Portuguese. 3. Send a high-priority mobile notification with the LLM's description, the image, and an action to open the camera app. 4. Wait for 3 minutes.",
|
|
"natural_language": {
|
|
"trigger": "When the dvr camera garagem motion alarm 2 [binary_sensor.dvr_camera_garagem_motion_alarm_2] detects motion, changing from off to on and staying on for at least two seconds.",
|
|
"conditions": "Either the anyone home [input_boolean.anyone_home] status is off, indicating nobody is home, or the ajax security system [alarm_control_panel.ajax_security_system] is in the 'armed_home' state.",
|
|
"action": "The automation first takes a snapshot from the dvr camera garagem sub 4 [camera.dvr_camera_garagem_sub_4] and saves it. It then uses an AI model to analyze the image and generate a short description in Portuguese. Finally, it sends a high-priority notification to mobile devices containing the AI's description, the captured image, and a quick action button to open the camera app. After sending the notification, the automation waits for three minutes."
|
|
},
|
|
"human_like": "Sends a smart security alert with an AI-generated image description to your phone when motion is detected in the garage, but only when the house is empty or the alarm is armed.",
|
|
"complexity": "medium"
|
|
}
|
|
},
|
|
{
|
|
"id": "motion_detected_swimming_pool",
|
|
"result": {
|
|
"structured": "TRIGGER: When dvr camera piscina motion alarm 2 [binary_sensor.dvr_camera_piscina_motion_alarm_2] changes from off to on AND remains on for 2 seconds. CONDITIONS: (anyone home [input_boolean.anyone_home] is off) OR (ajax security system [alarm_control_panel.ajax_security_system] is armed_home). ACTIONS: 1. Take a snapshot from dvr camera piscina main 2 [camera.dvr_camera_piscina_main_2] and save it to a timestamped file. 2. Analyze the saved image using the Gemini 1.5 Pro LLM model with a specific prompt. 3. Send a high-priority mobile notification with the title 'Movimento Detectado na Piscina', the LLM's description, and the image, including an action to open the camera app. 4. Wait for 3 minutes.",
|
|
"natural_language": {
|
|
"trigger": "When the dvr camera piscina motion alarm 2 [binary_sensor.dvr_camera_piscina_motion_alarm_2] detects motion, changing from off to on and staying on for at least two seconds.",
|
|
"conditions": "Either no one is home, indicated by anyone home [input_boolean.anyone_home] being off, or the home security is active, indicated by ajax security system [alarm_control_panel.ajax_security_system] being in armed_home mode.",
|
|
"action": "The automation first captures a snapshot from the dvr camera piscina main 2 [camera.dvr_camera_piscina_main_2] and saves it. It then uses an AI model to analyze the image and generate a short description in Portuguese. Finally, it sends a high-priority notification to mobile devices with the description and the image, and includes a delay of three minutes."
|
|
},
|
|
"human_like": "Sends a smart security alert with an AI-generated image description to your phone when motion is detected at the swimming pool while the house is empty or the alarm is armed.",
|
|
"complexity": "medium"
|
|
}
|
|
},
|
|
{
|
|
"id": "motion_detected_tablet",
|
|
"result": {
|
|
"structured": "TRIGGER: When wallpanel samsung tab s 10 5 motion detected [binary_sensor.wallpanel_samsung_tab_s_10_5_motion_detected] changes to on AND remains on for 2 seconds. CONDITIONS: (anyone home [input_boolean.anyone_home] is off) OR (ajax security system [alarm_control_panel.ajax_security_system] is armed_home). ACTIONS: 1. Take a snapshot from wallpanel samsung [camera.wallpanel_samsung] and save it to a file with a timestamp-based name. 2. Send a high-priority notification via notify.ha_mobile_apps with title 'Movimento Detectado', message 'Tablet', and the saved image as an attachment. 3. Wait for 3 minutes.",
|
|
"natural_language": {
|
|
"trigger": "When motion is detected by the wallpanel samsung tab s 10 5 motion detected [binary_sensor.wallpanel_samsung_tab_s_10_5_motion_detected] and remains active for at least 2 seconds.",
|
|
"conditions": "Either nobody is home, indicated by the anyone home [input_boolean.anyone_home] being off, or the house is in a secured state, indicated by the ajax security system [alarm_control_panel.ajax_security_system] being armed in home mode.",
|
|
"action": "The automation first captures a snapshot from the wallpanel samsung [camera.wallpanel_samsung] camera and saves it to a file. It then sends a high-priority mobile notification titled 'Movimento Detectado' with the message 'Tablet', including the captured image. Finally, it pauses for 3 minutes."
|
|
},
|
|
"human_like": "Sends a mobile notification with a snapshot when motion is detected by the tablet's camera, but only when the house is empty or the alarm is armed.",
|
|
"complexity": "medium"
|
|
}
|
|
},
|
|
{
|
|
"id": "notify_swimming_pool_daily_working_hours",
|
|
"result": {
|
|
"structured": "TRIGGER: At 21:30:00 every day. CONDITIONS: None. ACTIONS: Send a notification to notify.ha_mobile_apps with title 'Bomba da Piscina' and message 'A bomba hoje trabalhou: ' followed by the numeric value of swimming pool pump on today [sensor.swimming_pool_pump_on_today] in hours.",
|
|
"natural_language": {
|
|
"trigger": "Every day at 9:30 PM.",
|
|
"conditions": "There are no conditions that must be met for this automation to run.",
|
|
"action": "Sends a mobile notification titled 'Bomba da Piscina' with a message stating how many hours the swimming pool pump was on today, using the value from the swimming pool pump on today [sensor.swimming_pool_pump_on_today] sensor."
|
|
},
|
|
"human_like": "Sends a daily evening notification reporting the total hours the swimming pool pump ran that day.",
|
|
"complexity": "low"
|
|
}
|
|
},
|
|
{
|
|
"id": "offline_detection_for_z2m_devices_with_sensor",
|
|
"result": {
|
|
"structured": "TRIGGER: When z2m offline devices [sensor.z2m_offline_devices] changes state. CONDITIONS: None. ACTIONS: Send a notification to marco with a message containing the current state of z2m offline devices [sensor.z2m_offline_devices].",
|
|
"natural_language": {
|
|
"trigger": "Whenever the sensor z2m offline devices [sensor.z2m_offline_devices] changes its state.",
|
|
"conditions": "There are no conditions that must be met.",
|
|
"action": "Sends a notification to the recipient 'marco' with a message that lists the current state of the z2m offline devices sensor."
|
|
},
|
|
"human_like": "Sends a notification listing any offline Zigbee devices whenever the offline device sensor updates.",
|
|
"complexity": "low"
|
|
}
|
|
},
|
|
{
|
|
"id": "open_office_cover_if_is_too_dark",
|
|
"result": {
|
|
"structured": "TRIGGER: When sensor occupancy office occupancy [binary_sensor.sensor_occupancy_office_occupancy] becomes occupied (on) OR When sensor presence office illuminance [sensor.sensor_presence_office_illuminance] remains below 350 lux for 2 minutes. CONDITIONS: The sun is above the horizon (after sunrise AND before sunset) AND plug monitor [switch.plug_monitor] is on AND anyone home [input_boolean.anyone_home] is on AND estores escritorio [cover.estores_escritorio] current_position is below 75. ACTIONS: Set estores escritorio [cover.estores_escritorio] position to 75.",
|
|
"natural_language": {
|
|
"trigger": "When someone enters the office, indicated by the sensor occupancy office occupancy [binary_sensor.sensor_occupancy_office_occupancy] turning on, or when the light level in the office, measured by sensor presence office illuminance [sensor.sensor_presence_office_illuminance], stays below 350 lux for at least two minutes.",
|
|
"conditions": "It must be daytime (after sunrise and before sunset), the plug monitor [switch.plug_monitor] must be switched on, the anyone home [input_boolean.anyone_home] indicator must be on, and the office curtains, estores escritorio [cover.estores_escritorio], must currently be at a position lower than 75% open.",
|
|
"action": "Opens the office curtains to a position of 75% by calling the service on estores escritorio [cover.estores_escritorio]."
|
|
},
|
|
"human_like": "Automatically opens the office curtains to let in more light when it's too dark and someone is in the room, but only during the day and when the house is occupied.",
|
|
"complexity": "medium"
|
|
}
|
|
},
|
|
{
|
|
"id": "remote_toggle_garage",
|
|
"result": {
|
|
"structured": "TRIGGER: When the tuya garagem remote [device_id: 149b39eaad8da492f392577d03198112] sends an MQTT action of type 1_single. ACTIONS: Execute the Garage [script.garage] script.",
|
|
"natural_language": {
|
|
"trigger": "When the tuya garagem remote [device_id: 149b39eaad8da492f392577d03198112] sends a specific single-press action signal.",
|
|
"conditions": "There are no conditions for this automation.",
|
|
"action": "Runs the Garage [script.garage] script."
|
|
},
|
|
"human_like": "Toggles the garage door when a specific button on the remote is pressed.",
|
|
"complexity": "low"
|
|
}
|
|
},
|
|
{
|
|
"id": "remote_toggle_gate_button_3",
|
|
"result": {
|
|
"structured": "TRIGGER: When tuya garagem remote [device_id:149b39eaad8da492f392577d03198112] sends action 3_single via MQTT. CONDITIONS: None. ACTIONS: Toggle portao exterior switch 0 [switch.portao_exterior_switch_0].",
|
|
"natural_language": {
|
|
"trigger": "When button 3 on the tuya garagem remote [device_id:149b39eaad8da492f392577d03198112] is pressed.",
|
|
"conditions": "There are no conditions for this automation.",
|
|
"action": "Toggles the state of the portao exterior switch 0 [switch.portao_exterior_switch_0]."
|
|
},
|
|
"human_like": "Pressing button 3 on the garage remote toggles the exterior gate switch.",
|
|
"complexity": "low"
|
|
}
|
|
},
|
|
{
|
|
"id": "remote_tuya_button_2",
|
|
"result": {
|
|
"structured": "TRIGGER: When remote.tuya.garagem button 2 [device_id: 149b39eaad8da492f392577d03198112] sends a single press action. CONDITIONS: None. ACTIONS: Execute script Garage [script.garage] (to open garage door), wait for 30 seconds, then execute script Garage [script.garage] again (to close garage door).",
|
|
"natural_language": {
|
|
"trigger": "When the second button on the tuya garagem remote [device_id: 149b39eaad8da492f392577d03198112] is pressed once.",
|
|
"conditions": "There are no conditions that need to be met.",
|
|
"action": "The automation first runs the Garage [script.garage] script, which opens the garage door. After a 30-second delay, it runs the same Garage [script.garage] script again, which closes the garage door."
|
|
},
|
|
"human_like": "Pressing button 2 on the garage remote opens the garage door, waits 30 seconds, and then automatically closes it.",
|
|
"complexity": "low"
|
|
}
|
|
},
|
|
{
|
|
"id": "send_notification_garage_door_is_open",
|
|
"result": {
|
|
"structured": "TRIGGER: When sensor garage door contact [binary_sensor.sensor_garage_door_contact] remains open (on) for 15 minutes OR Every 20 minutes (time pattern) OR When ajax security system [alarm_control_panel.ajax_security_system] becomes armed_home. CONDITIONS: (sensor garage door contact [binary_sensor.sensor_garage_door_contact] is on AND remains stable for 45 minutes) OR (sensor garage door contact [binary_sensor.sensor_garage_door_contact] is on AND (anyone home [input_boolean.anyone_home] is off OR ajax security system [alarm_control_panel.ajax_security_system] is armed_home)). ACTIONS: 1. Define action variables action_close and action_ignore. 2. Send a high-priority mobile notification with title 'Garagem Aberta' and message 'Garagem aberta. Pretendes fechar?' offering actions 'Fechar' and 'Ignorar'. 3. Wait for a mobile app notification action response for either 'Fechar' or 'Ignorar'. 4. If the response action is 'Fechar' AND sensor garage door contact [binary_sensor.sensor_garage_door_contact] is still on, then execute the Garage [script.garage] script.",
|
|
"natural_language": {
|
|
"trigger": "The automation can be triggered in three ways: when the sensor garage door contact [binary_sensor.sensor_garage_door_contact] has been open for 15 minutes, every 20 minutes on a schedule, or when the ajax security system [alarm_control_panel.ajax_security_system] is set to armed_home mode.",
|
|
"conditions": "For the automation to proceed, the garage door must be open and one of two scenarios must be true. Either the door has been open for more than 45 minutes, or the door is open and either nobody is home (anyone home [input_boolean.anyone_home] is off) or the security system is armed.",
|
|
"action": "The automation first sets up unique identifiers for notification actions. It then sends a persistent, high-priority mobile notification asking if the user wants to close the garage door, with 'Close' and 'Ignore' buttons. It waits for the user to tap one of these buttons. If the user taps 'Close' and the garage door is still open, it runs the Garage [script.garage] script, presumably to close the door."
|
|
},
|
|
"human_like": "Sends a reminder to close the garage door if it has been open for a long time or if the house is empty and the security system is armed, allowing the user to trigger a closing script directly from the notification.",
|
|
"complexity": "high"
|
|
}
|
|
},
|
|
{
|
|
"id": "send_notification_high_humidy_wc_servico",
|
|
"result": {
|
|
"structured": "TRIGGER: When wc temperature humidity sensor humidity [sensor.wc_temperature_humidity_sensor_humidity] remains above 90% for 15 minutes OR When the time pattern matches every 10 minutes. CONDITIONS: wc temperature humidity sensor humidity [sensor.wc_temperature_humidity_sensor_humidity] is above 90%. ACTIONS: Set variables 'action_ack' and 'message', where 'message' is 'Humidade na WC Serviço demasiado alta: [current humidity]%. Liga a ventilação.'. Then, send a high-priority notification via notify.ha_mobile_apps with the title 'Humidade WC Serviço' and the constructed message.",
|
|
"natural_language": {
|
|
"trigger": "The automation triggers either when the humidity sensor in the WC Serviço [sensor.wc_temperature_humidity_sensor_humidity] has been above 90% for a continuous period of 15 minutes, or on a recurring schedule every 10 minutes.",
|
|
"conditions": "The automation only proceeds if the current humidity reading from the sensor [sensor.wc_temperature_humidity_sensor_humidity] is above 90%.",
|
|
"action": "First, the automation prepares a notification message stating the current humidity level and a prompt to turn on ventilation. Then, it sends a high-priority notification to mobile apps with this message."
|
|
},
|
|
"human_like": "Sends a high-priority mobile notification when the humidity in the WC Serviço is too high for an extended period, reminding you to turn on the ventilation.",
|
|
"complexity": "medium"
|
|
}
|
|
},
|
|
{
|
|
"id": "send_notification_high_humidy_wc_suite",
|
|
"result": {
|
|
"structured": "TRIGGER: When sensor temperature humidity wc suite humidity [sensor.sensor_temperature_humidity_wc_suite_humidity] is above 90% for 15 minutes OR every 10 minutes (time pattern). CONDITIONS: sensor temperature humidity wc suite humidity [sensor.sensor_temperature_humidity_wc_suite_humidity] is above 90%. ACTIONS: Set variables: action_ack and message (containing humidity value and instruction). Send a high-priority notification via notify.ha_mobile_apps with a title 'Humidade WC Suite' and the constructed message.",
|
|
"natural_language": {
|
|
"trigger": "The automation triggers either when the humidity sensor in the WC Suite [sensor.sensor_temperature_humidity_wc_suite_humidity] has been reading above 90% for a continuous period of 15 minutes, or on a scheduled basis every 10 minutes.",
|
|
"conditions": "The automation only proceeds if the current humidity reading from sensor temperature humidity wc suite humidity [sensor.sensor_temperature_humidity_wc_suite_humidity] is above 90%.",
|
|
"action": "It prepares a notification message containing the current humidity value and an instruction to turn on ventilation. Then, it sends a high-priority notification to mobile apps with a specific title and this message."
|
|
},
|
|
"human_like": "Sends a high-priority alert to your phone if the humidity in the WC Suite bathroom stays too high for 15 minutes, and continues to send reminders every 10 minutes while it remains high.",
|
|
"complexity": "medium"
|
|
}
|
|
},
|
|
{
|
|
"id": "send_notification_toaster_is_on",
|
|
"result": {
|
|
"structured": "TRIGGER: When torradeira plug [switch.torradeira_plug] remains on for 5 minutes OR every 5 minutes (on the minute pattern). CONDITIONS: torradeira plug [switch.torradeira_plug] is on AND remains on for 5 minutes. ACTIONS: 1. Define variables for notification actions. 2. Send a high-priority mobile notification titled 'Torradeira ligada' asking if the user wants to turn off the toaster, with 'Desligar' and 'Ignorar' action buttons. 3. Wait for a mobile app notification action response (either 'TURN_OFF_' or 'IGNORE_' prefixed with the context ID). 4. If the response action is 'TURN_OFF_', turn off torradeira plug [switch.torradeira_plug].",
|
|
"natural_language": {
|
|
"trigger": "When the torradeira plug [switch.torradeira_plug] has been turned on and stays on for five minutes, or every five minutes on the clock (e.g., at :00, :05, :10, etc.).",
|
|
"conditions": "The torradeira plug [switch.torradeira_plug] must be in the 'on' state and remain on for a continuous period of five minutes.",
|
|
"action": "The automation first sets up unique identifiers for the notification's action buttons. It then sends a persistent, high-priority notification to mobile devices, asking if the user wants to turn off the toaster because it has been on for over five minutes. The notification provides 'Turn off' and 'Ignore' buttons. The automation then waits for the user to tap one of these buttons. If the user selects 'Turn off', the automation turns off the torradeira plug [switch.torradeira_plug]."
|
|
},
|
|
"human_like": "Sends a mobile notification to ask if you want to turn off the toaster after it has been left on for five minutes, and can turn it off remotely if you choose to.",
|
|
"complexity": "medium"
|
|
}
|
|
},
|
|
{
|
|
"id": "set_anyone_home_off",
|
|
"result": {
|
|
"structured": "TRIGGER: When person marco cunha [person.marco_cunha] changes to not_home OR when person darlene parreira [person.darlene_parreira] changes to not_home. CONDITIONS: person marco cunha [person.marco_cunha] is not_home AND person darlene parreira [person.darlene_parreira] is not_home. ACTIONS: Turn off anyone home [input_boolean.anyone_home].",
|
|
"natural_language": {
|
|
"trigger": "When either person marco cunha [person.marco_cunha] or person darlene parreira [person.darlene_parreira] changes their state to not_home.",
|
|
"conditions": "Both person marco cunha [person.marco_cunha] and person darlene parreira [person.darlene_parreira] must be in the not_home state.",
|
|
"action": "Turns off the anyone home [input_boolean.anyone_home] indicator."
|
|
},
|
|
"human_like": "Turns off the 'anyone home' indicator when both residents are away.",
|
|
"complexity": "low"
|
|
}
|
|
},
|
|
{
|
|
"id": "set_anyone_home_on",
|
|
"result": {
|
|
"structured": "TRIGGER: When person marco cunha [person.marco_cunha] arrives home OR when person darlene parreira [person.darlene_parreira] arrives home. CONDITIONS: person marco cunha [person.marco_cunha] is home OR person darlene parreira [person.darlene_parreira] is home. ACTIONS: Turn on anyone home [input_boolean.anyone_home].",
|
|
"natural_language": {
|
|
"trigger": "When either person marco cunha [person.marco_cunha] or person darlene parreira [person.darlene_parreira] changes their state to home.",
|
|
"conditions": "If at least one of the tracked persons, person marco cunha [person.marco_cunha] or person darlene parreira [person.darlene_parreira], is currently at home.",
|
|
"action": "Sets the anyone home [input_boolean.anyone_home] indicator to on."
|
|
},
|
|
"human_like": "Turns on the 'anyone home' indicator when either Marco or Darlene arrives home.",
|
|
"complexity": "low"
|
|
}
|
|
},
|
|
{
|
|
"id": "set_both_home_off",
|
|
"result": {
|
|
"structured": "TRIGGER: When person marco cunha [person.marco_cunha] changes to not_home OR person darlene parreira [person.darlene_parreira] changes to not_home. CONDITIONS: (person marco cunha [person.marco_cunha] is not_home) OR (person darlene parreira [person.darlene_parreira] is not_home). ACTIONS: Turn off both home [input_boolean.both_home].",
|
|
"natural_language": {
|
|
"trigger": "When either person marco cunha [person.marco_cunha] or person darlene parreira [person.darlene_parreira] changes their state to not_home.",
|
|
"conditions": "If either person marco cunha [person.marco_cunha] is not_home or person darlene parreira [person.darlene_parreira] is not_home.",
|
|
"action": "Turns off the both home [input_boolean.both_home] input boolean."
|
|
},
|
|
"human_like": "Turns off the 'both home' indicator when at least one person is not at home.",
|
|
"complexity": "low"
|
|
}
|
|
},
|
|
{
|
|
"id": "set_both_home_on",
|
|
"result": {
|
|
"structured": "TRIGGER: When person marco cunha [person.marco_cunha] arrives home OR when person darlene parreira [person.darlene_parreira] arrives home. CONDITIONS: (person marco cunha [person.marco_cunha] is home) AND (person darlene parreira [person.darlene_parreira] is home). ACTIONS: Turn on both home [input_boolean.both_home].",
|
|
"natural_language": {
|
|
"trigger": "When either person marco cunha [person.marco_cunha] or person darlene parreira [person.darlene_parreira] changes their state to home.",
|
|
"conditions": "Both person marco cunha [person.marco_cunha] and person darlene parreira [person.darlene_parreira] must be at home.",
|
|
"action": "Sets the both home [input_boolean.both_home] input boolean to on."
|
|
},
|
|
"human_like": "Turns on the 'both home' indicator when both Marco and Darlene are at home.",
|
|
"complexity": "low"
|
|
}
|
|
},
|
|
{
|
|
"id": "toaster_turn_off_automatically",
|
|
"result": {
|
|
"structured": "TRIGGER: When torradeira plug [switch.torradeira_plug] remains on for 10 minutes OR at every 10th minute of the hour (time pattern). CONDITIONS: torradeira plug [switch.torradeira_plug] is on AND remains on for 10 minutes. ACTIONS: Turn off torradeira plug [switch.torradeira_plug] AND send a notification via notify.ha_mobile_apps with title 'Torradeira desligada' and message 'Torradeira desligada automaticamente.'.",
|
|
"natural_language": {
|
|
"trigger": "When the torradeira plug [switch.torradeira_plug] has been turned on and remains on for 10 minutes, or when the clock reaches any 10-minute interval (e.g., 0, 10, 20, 30, 40, 50 minutes past the hour).",
|
|
"conditions": "The torradeira plug [switch.torradeira_plug] must be on and have remained in that state for exactly 10 minutes.",
|
|
"action": "Turn off the torradeira plug [switch.torradeira_plug] and send a mobile notification with the title 'Torradeira desligada' and the message 'Torradeira desligada automaticamente.'."
|
|
},
|
|
"human_like": "Automatically turns off the toaster plug after 10 minutes of being on and sends a notification.",
|
|
"complexity": "medium"
|
|
}
|
|
},
|
|
{
|
|
"id": "turn_off_christmas_tree",
|
|
"result": {
|
|
"structured": "TRIGGER: When the time reaches 23:01:00 OR When anyone home [input_boolean.anyone_home] changes to off. CONDITIONS: (anyone home [input_boolean.anyone_home] is off) OR (the current time is after 23:01:00). ACTIONS: Turn off christmas tree socket 1 [switch.christmas_tree_socket_1].",
|
|
"natural_language": {
|
|
"trigger": "The automation triggers either at exactly 23:01:00 every day, or when the anyone home [input_boolean.anyone_home] status changes to off.",
|
|
"conditions": "The automation proceeds if either the anyone home [input_boolean.anyone_home] status is off, or if the current time is after 23:01:00.",
|
|
"action": "Turns off the christmas tree socket 1 [switch.christmas_tree_socket_1]."
|
|
},
|
|
"human_like": "Turns off the Christmas tree either at 23:01 each night or when everyone has left home.",
|
|
"complexity": "low"
|
|
}
|
|
},
|
|
{
|
|
"id": "turn_off_entrance_ambient_light_when_no_motion_is_detected",
|
|
"result": {
|
|
"structured": "TRIGGER: Every 20 minutes (time_pattern). CONDITIONS: motion sensor illuminance [sensor.motion_sensor_illuminance] is above 50. ACTIONS: Turn off candeeiro ambiente 2 [light.candeeiro_ambiente_2] AND Turn off switch tomada poltrona [light.switch_tomada_poltrona].",
|
|
"natural_language": {
|
|
"trigger": "The automation runs every 20 minutes.",
|
|
"conditions": "The motion sensor illuminance [sensor.motion_sensor_illuminance] must be above a value of 50.",
|
|
"action": "Turns off both the candeeiro ambiente 2 [light.candeeiro_ambiente_2] and the switch tomada poltrona [light.switch_tomada_poltrona] lights."
|
|
},
|
|
"human_like": "Turns off the entrance ambient lights every 20 minutes if the area is sufficiently bright.",
|
|
"complexity": "low"
|
|
}
|
|
},
|
|
{
|
|
"id": "turn_off_office_leds_if_no_motion_detected",
|
|
"result": {
|
|
"structured": "TRIGGER: When sensor presence office motion state [sensor.sensor_presence_office_motion_state] remains in state 'none' for 5 minutes OR when sensor presence office presence [binary_sensor.sensor_presence_office_presence] remains off for 5 minutes. CONDITIONS: light office leds [light.light_office_leds] is on. ACTIONS: Turn off light office leds [light.light_office_leds].",
|
|
"natural_language": {
|
|
"trigger": "When the sensor presence office motion state [sensor.sensor_presence_office_motion_state] reports 'none' for at least five minutes, or when the sensor presence office presence [binary_sensor.sensor_presence_office_presence] reports no presence (off) for at least five minutes.",
|
|
"conditions": "The light office leds [light.light_office_leds] must currently be on.",
|
|
"action": "Turns off the light office leds [light.light_office_leds]."
|
|
},
|
|
"human_like": "Automatically turns off the office LED lights after five minutes of no motion or detected presence, but only if the lights are currently on.",
|
|
"complexity": "medium"
|
|
}
|
|
},
|
|
{
|
|
"id": "turn_off_swimming_pool_pump_according_to_energy_usage",
|
|
"result": {
|
|
"structured": "TRIGGER: When energy consumption mean over last 10 minutes [sensor.energy_consumption_mean_over_last_10_minutes] is above -300 watts OR every 20 minutes (time pattern). CONDITIONS: ((swimming pool pump on today [sensor.swimming_pool_pump_on_today] runtime exceeds swimming pool minimum duration h [input_number.swimming_pool_minimum_duration_h] value) OR (energy consumption mean over last 10 minutes [sensor.energy_consumption_mean_over_last_10_minutes] is above -150 watts)) AND (bomba piscina switch 0 power [sensor.bomba_piscina_switch_0_power] is above 0 watts) AND (swimming pool pump schedule [schedule.swimming_pool_pump_schedule] is off). ACTIONS: Turn off swimming pool pump [device_id: 11352414f861aaceba25adee16b975f5]. If send_notification variable is true, then send a mobile notification: if swimming pool pump on today [sensor.swimming_pool_pump_on_today] runtime exceeds swimming pool minimum duration h [input_number.swimming_pool_minimum_duration_h] value, send a notification stating the pump has worked the required hours; otherwise if average consumption inc pool pump [sensor.average_consumption_inc_pool_pump] is above -150 watts, send a notification stating production is too low with the current consumption value.",
|
|
"natural_language": {
|
|
"trigger": "The automation triggers either when the average energy consumption over the last 10 minutes [sensor.energy_consumption_mean_over_last_10_minutes] is above -300 watts, or every 20 minutes on a repeating schedule.",
|
|
"conditions": "All of the following must be true: the swimming pool pump is currently drawing power, as indicated by bomba piscina switch 0 power [sensor.bomba_piscina_switch_0_power] being above zero; the scheduled time for the pump is off, as shown by swimming pool pump schedule [schedule.swimming_pool_pump_schedule]; and at least one of two energy-related conditions is met: either the pump has already run for the minimum required duration today, as tracked by swimming pool pump on today [sensor.swimming_pool_pump_on_today] compared to the set minimum in swimming pool minimum duration h [input_number.swimming_pool_minimum_duration_h], or the average energy consumption is too high (above -150 watts), meaning there is not enough surplus power.",
|
|
"action": "The main action is to turn off the swimming pool pump. Optionally, if notifications are enabled, a mobile notification is sent. The notification message depends on why the pump was turned off: if it met its daily runtime goal, a summary of hours worked is sent; if it was due to high energy consumption, a message with the current consumption value is sent."
|
|
},
|
|
"human_like": "Automatically turns off the swimming pool pump when it has run long enough for the day or when home energy production is too low, sending an optional notification.",
|
|
"complexity": "medium"
|
|
}
|
|
},
|
|
{
|
|
"id": "turn_off_ventax_wc_guests",
|
|
"result": {
|
|
"structured": "TRIGGER: When wc temperature humidity sensor humidity [sensor.wc_temperature_humidity_sensor_humidity] is less than bathroom max humidity percentage [input_number.bathroom_max_humidity_percentage] for 10 minutes OR every 20 minutes (on the minute). CONDITIONS: (dnd schedule [schedule.dnd_schedule] is on) OR (wc temperature humidity sensor humidity [sensor.wc_temperature_humidity_sensor_humidity] is less than bathroom max humidity percentage [input_number.bathroom_max_humidity_percentage] AND multiswitch wc guests center [fan.multiswitch_wc_guests_center] is on). ACTIONS: Set variables action_ack and message. If send_notification variable is true, send a notification via notify.ha_mobile_apps with the message. Then, turn off multiswitch wc guests center [fan.multiswitch_wc_guests_center].",
|
|
"natural_language": {
|
|
"trigger": "The automation triggers either when the humidity reading from the wc temperature humidity sensor humidity [sensor.wc_temperature_humidity_sensor_humidity] stays below the set maximum humidity level from bathroom max humidity percentage [input_number.bathroom_max_humidity_percentage] for 10 consecutive minutes, or every 20 minutes on the clock.",
|
|
"conditions": "For the automation to proceed, either the do-not-disturb schedule dnd schedule [schedule.dnd_schedule] must be active, or both of the following must be true: the current humidity is below the maximum threshold and the fan multiswitch wc guests center [fan.multiswitch_wc_guests_center] is currently turned on.",
|
|
"action": "First, the automation prepares an internal acknowledgment ID and a status message. If the send_notification flag is enabled, it sends a mobile notification with the humidity status and a note that ventilation has been turned off. Finally, it turns off the fan multiswitch wc guests center [fan.multiswitch_wc_guests_center]."
|
|
},
|
|
"human_like": "Turns off the bathroom ventilation fan when the humidity returns to a normal level, or periodically checks and turns it off if conditions are met, respecting a do-not-disturb schedule.",
|
|
"complexity": "medium"
|
|
}
|
|
},
|
|
{
|
|
"id": "turn_off_ventax_wc_suite",
|
|
"result": {
|
|
"structured": "TRIGGER: When sensor temperature humidity wc suite humidity [sensor.sensor_temperature_humidity_wc_suite_humidity] is less than bathroom max humidity percentage [input_number.bathroom_max_humidity_percentage] for 10 minutes OR every 20 minutes. CONDITIONS: (dnd schedule [schedule.dnd_schedule] is on) OR (sensor temperature humidity wc suite humidity [sensor.sensor_temperature_humidity_wc_suite_humidity] is less than bathroom max humidity percentage [input_number.bathroom_max_humidity_percentage] AND multiswitch wc suite ventax [fan.multiswitch_wc_suite_ventax] is on). ACTIONS: Set variables action_ack and message. If send_notification variable is true, send a notification with title notification_title and message. Then turn off multiswitch wc suite ventax [fan.multiswitch_wc_suite_ventax].",
|
|
"natural_language": {
|
|
"trigger": "The automation triggers when the humidity sensor in the WC Suite [sensor.sensor_temperature_humidity_wc_suite_humidity] reports a value below the configured maximum humidity threshold [input_number.bathroom_max_humidity_percentage] for a continuous period of 10 minutes. It also triggers every 20 minutes, regardless of the humidity level.",
|
|
"conditions": "For the automation to proceed, either the 'Do Not Disturb' schedule [schedule.dnd_schedule] must be active, or both of the following must be true: the humidity is below the maximum threshold and the ventilation fan [fan.multiswitch_wc_suite_ventax] is currently on.",
|
|
"action": "The automation first prepares a notification message. If the internal flag 'send_notification' is enabled, it sends a high-priority mobile notification with the humidity status and a message that the ventilation has been turned off. Finally, it turns off the WC Suite ventilation fan [fan.multiswitch_wc_suite_ventax]."
|
|
},
|
|
"human_like": "Turns off the bathroom ventilation fan when the humidity returns to a normal level, or periodically checks and turns it off if conditions are met, while respecting a 'Do Not Disturb' schedule.",
|
|
"complexity": "medium"
|
|
}
|
|
},
|
|
{
|
|
"id": "turn_on_christmas_tree",
|
|
"result": {
|
|
"structured": "TRIGGER: When sunset occurs with a 20-minute offset OR When anyone home [input_boolean.anyone_home] turns on. CONDITIONS: (anyone home [input_boolean.anyone_home] is on) AND (the sun is after sunset with a 20-minute offset AND before sunrise) AND (the current time is before 23:00:00). ACTIONS: Turn on christmas tree socket 1 [switch.christmas_tree_socket_1].",
|
|
"natural_language": {
|
|
"trigger": "The automation triggers either 20 minutes after sunset, or when the anyone home [input_boolean.anyone_home] input boolean switches to on.",
|
|
"conditions": "All of the following must be true: someone is at home (anyone home [input_boolean.anyone_home] is on), it is after sunset (with a 20-minute offset) and before sunrise, and the current time is before 11:00 PM.",
|
|
"action": "Turns on the Christmas tree by activating the switch christmas tree socket 1 [switch.christmas_tree_socket_1]."
|
|
},
|
|
"human_like": "Turns on the Christmas tree in the evening if someone is home, ensuring it's only on after sunset and before 11 PM.",
|
|
"complexity": "medium"
|
|
}
|
|
},
|
|
{
|
|
"id": "turn_on_coffee_machine_led_when_door_is_open",
|
|
"result": {
|
|
"structured": "TRIGGER: When sensor motion coffee machine occupancy [binary_sensor.sensor_motion_coffee_machine_occupancy] changes from off to on. CONDITIONS: None. ACTIONS: Execute script Turn On Coffee Machine LED [script.turn_on_coffee_machine_led] with variable duration set to 10.",
|
|
"natural_language": {
|
|
"trigger": "When the sensor motion coffee machine occupancy [binary_sensor.sensor_motion_coffee_machine_occupancy] detects motion, changing from an 'off' (no motion) to an 'on' (motion) state.",
|
|
"conditions": "There are no conditions that must be met for this automation to proceed.",
|
|
"action": "Runs the script 'Turn On Coffee Machine LED' [script.turn_on_coffee_machine_led], passing a variable to set the LED duration to 10 units (likely seconds)."
|
|
},
|
|
"human_like": "Turns on the coffee machine's LED light for 10 seconds when motion is detected near it.",
|
|
"complexity": "low"
|
|
}
|
|
},
|
|
{
|
|
"id": "turn_on_entrance_ambient_lights_when_motion_is_detected",
|
|
"result": {
|
|
"structured": "TRIGGER: When motion sensor occupancy [binary_sensor.motion_sensor_occupancy] changes state. CONDITIONS: (motion sensor illuminance [sensor.motion_sensor_illuminance] is below 30) AND (active mode [input_text.active_mode] is NOT SLEEP). ACTIONS: Turn on candeeiro ambiente 2 [light.candeeiro_ambiente_2] AND turn on switch tomada poltrona [light.switch_tomada_poltrona].",
|
|
"natural_language": {
|
|
"trigger": "When motion is detected or cleared by the motion sensor occupancy [binary_sensor.motion_sensor_occupancy].",
|
|
"conditions": "If the light level measured by the motion sensor illuminance [sensor.motion_sensor_illuminance] is below 30 lux, and the current active mode [input_text.active_mode] is not set to SLEEP.",
|
|
"action": "Turn on both the candeeiro ambiente 2 [light.candeeiro_ambiente_2] and the switch tomada poltrona [light.switch_tomada_poltrona] lights in the entrance."
|
|
},
|
|
"human_like": "Turns on the entrance ambient lights when motion is detected, but only if it's dark enough and the house is not in sleep mode.",
|
|
"complexity": "medium"
|
|
}
|
|
},
|
|
{
|
|
"id": "turn_on_external_led_if_entrance_door_is_open",
|
|
"result": {
|
|
"structured": "TRIGGER: When door entrance contact [binary_sensor.door_entrance_contact] changes from closed (off) to open (on). CONDITIONS: The sun is below the horizon (after sunset AND before sunrise). ACTIONS: Execute the Turn On Exterior LED [script.turn_on_exterior_led] script with a duration of 15 minutes.",
|
|
"natural_language": {
|
|
"trigger": "When the entrance door opens, as detected by the door entrance contact [binary_sensor.door_entrance_contact].",
|
|
"conditions": "The automation only runs if it is nighttime, meaning after sunset and before sunrise.",
|
|
"action": "Turns on the exterior LED lights by running the Turn On Exterior LED [script.turn_on_exterior_led] script for 15 minutes."
|
|
},
|
|
"human_like": "Turns on the outside lights for 15 minutes when the front door is opened at night.",
|
|
"complexity": "low"
|
|
}
|
|
},
|
|
{
|
|
"id": "turn_on_external_led_if_motion_detected_frente",
|
|
"result": {
|
|
"structured": "TRIGGER: When an MQTT message is received on topic 'frigate/events' with payload matching 'frente/new' and the value template '{{ value_json['after']['camera'] | lower | replace('-','_') }}/{{ value_json['type']}}' evaluates to true. CONDITIONS: (trigger payload JSON 'after' field 'label' equals 'person' OR trigger payload JSON 'after' field 'label' equals 'car') AND (trigger payload JSON 'after' field 'entered_zones' length is greater than 0). ACTIONS: Execute script Turn On Exterior LED [script.turn_on_exterior_led] with data parameter duration set to 10.",
|
|
"natural_language": {
|
|
"trigger": "When a new Frigate event message is received for the camera named 'frente'.",
|
|
"conditions": "The detected object must be either a person or a car, and the object must have entered at least one defined zone.",
|
|
"action": "Turn on the exterior LED lights for 10 seconds by running the Turn On Exterior LED [script.turn_on_exterior_led] script."
|
|
},
|
|
"human_like": "Turns on the outside lights for 10 seconds when a person or car is detected entering a zone by the front camera.",
|
|
"complexity": "medium"
|
|
}
|
|
},
|
|
{
|
|
"id": "turn_on_external_led_if_motion_detected_garagem",
|
|
"result": {
|
|
"structured": "TRIGGER: When an MQTT message is received on topic 'frigate/events' with payload 'garagem/new' and the value template evaluates to 'garagem/new'. CONDITIONS: (trigger payload label is 'person' OR trigger payload label is 'car') AND (trigger payload entered_zones list length is greater than 0). ACTIONS: Execute script Turn On Exterior LED [script.turn_on_exterior_led] with data duration: 10.",
|
|
"natural_language": {
|
|
"trigger": "When the Frigate system sends an MQTT event notification for the 'garagem' camera indicating a new detection.",
|
|
"conditions": "The detected object must be either a person or a car, and the object must have entered at least one defined zone in the camera's view.",
|
|
"action": "Activates the exterior lights by running the Turn On Exterior LED [script.turn_on_exterior_led] script for a duration of 10 units (likely seconds or minutes)."
|
|
},
|
|
"human_like": "Turns on the exterior LED lights for 10 minutes when a person or car is detected entering a zone in the garage camera.",
|
|
"complexity": "medium"
|
|
}
|
|
},
|
|
{
|
|
"id": "turn_on_external_led_when_garage_door_is_open",
|
|
"result": {
|
|
"structured": "TRIGGER: When sensor garage door contact [binary_sensor.sensor_garage_door_contact] changes from closed (off) to open (on). CONDITIONS: The sun is below the horizon (after sunset AND before sunrise). ACTIONS: Execute the Turn On Exterior LED [script.turn_on_exterior_led] script with a variable 'duration' set to 15.",
|
|
"natural_language": {
|
|
"trigger": "When the garage door contact sensor [binary_sensor.sensor_garage_door_contact] changes from a closed to an open state.",
|
|
"conditions": "The automation only runs if it is nighttime, meaning the sun has set and has not yet risen.",
|
|
"action": "Activates the 'Turn On Exterior LED' [script.turn_on_exterior_led] script, which will turn on the exterior LED lights for a duration of 15 minutes."
|
|
},
|
|
"human_like": "Turns on the exterior LED lights for 15 minutes when the garage door is opened at night.",
|
|
"complexity": "low"
|
|
}
|
|
},
|
|
{
|
|
"id": "turn_on_external_led_when_outside_gate_is_open",
|
|
"result": {
|
|
"structured": "TRIGGER: When portao exterior switch 0 [switch.portao_exterior_switch_0] changes state to on. CONDITIONS: The sun is below the horizon (after sunset AND before sunrise). ACTIONS: Run script Turn On Exterior LED [script.turn_on_exterior_led] with a variable 'duration' set to 15.",
|
|
"natural_language": {
|
|
"trigger": "When the outside gate, represented by portao exterior switch 0 [switch.portao_exterior_switch_0], is opened (changes to the 'on' state).",
|
|
"conditions": "This only happens during nighttime, specifically after sunset and before sunrise.",
|
|
"action": "Activates the Turn On Exterior LED [script.turn_on_exterior_led] script, telling it to run for a duration of 15 minutes."
|
|
},
|
|
"human_like": "Turns on the exterior LED lights for 15 minutes when the outside gate is opened at night.",
|
|
"complexity": "low"
|
|
}
|
|
},
|
|
{
|
|
"id": "turn_on_office_leds_if_motion_detected",
|
|
"result": {
|
|
"structured": "TRIGGER: When sensor presence office motion state [sensor.sensor_presence_office_motion_state] changes to 'large' OR when sensor presence office motion state [sensor.sensor_presence_office_motion_state] changes to 'static' OR when sensor presence office presence [binary_sensor.sensor_presence_office_presence] changes to 'on'. CONDITIONS: sensor presence office illuminance [sensor.sensor_presence_office_illuminance] is below 800. ACTIONS: Turn on light office leds [light.light_office_leds] with brightness set to 20.",
|
|
"natural_language": {
|
|
"trigger": "The automation triggers when the motion sensor in the office detects a large motion, a static motion, or when the presence sensor indicates someone is present.",
|
|
"conditions": "The automation only runs if the illuminance sensor in the office reports a light level below 800 lux.",
|
|
"action": "It turns on the office LED lights, setting their brightness to 20%."
|
|
},
|
|
"human_like": "Turns on the office lights at a low brightness when motion is detected and the room is dark.",
|
|
"complexity": "low"
|
|
}
|
|
},
|
|
{
|
|
"id": "turn_on_swimming_pool_pump_according_to_energy_usage",
|
|
"result": {
|
|
"structured": "TRIGGER: Every 10 minutes OR When swimming pool pump schedule [schedule.swimming_pool_pump_schedule] changes state. CONDITIONS: (swimming pool pump on today [sensor.swimming_pool_pump_on_today] is less than or equal to swimming pool minimum duration h [input_number.swimming_pool_minimum_duration_h] AND average consumption inc pool pump [sensor.average_consumption_inc_pool_pump] is below -150 AND bomba piscina switch 0 power [sensor.bomba_piscina_switch_0_power] is below 0.1 AND time is after 08:00:00) OR (swimming pool pump schedule [schedule.swimming_pool_pump_schedule] is on). ACTIONS: Turn on swimming pool pump [device_id: 11352414f861aaceba25adee16b975f5] AND, if the variable send_notification is true, send a high-priority mobile notification with title 'Bomba da Piscina' and message 'Bomba da piscina ligada'.",
|
|
"natural_language": {
|
|
"trigger": "The automation runs every 10 minutes, or whenever the swimming pool pump schedule [schedule.swimming_pool_pump_schedule] changes its state.",
|
|
"conditions": "The automation proceeds if either of two sets of conditions is met. The first set requires that the swimming pool pump on today [sensor.swimming_pool_pump_on_today] has run for less than the minimum required duration, that the average consumption inc pool pump [sensor.average_consumption_inc_pool_pump] is below -150 (indicating enough surplus energy), that the bomba piscina switch 0 power [sensor.bomba_piscina_switch_0_power] is below 0.1 (meaning the pump is currently off), and that the current time is after 8:00 AM. The second, simpler condition is that the swimming pool pump schedule [schedule.swimming_pool_pump_schedule] is directly set to 'on'.",
|
|
"action": "The main action is to turn on the swimming pool pump. Optionally, if the automation is configured to send notifications, it will also send a high-priority mobile notification titled 'Bomba da Piscina' with the message 'Bomba da piscina ligada'."
|
|
},
|
|
"human_like": "Turns on the swimming pool pump either when the schedule demands it or when there is sufficient surplus energy and the pump hasn't run enough for the day, ensuring efficient energy usage.",
|
|
"complexity": "medium"
|
|
}
|
|
},
|
|
{
|
|
"id": "turn_on_ventax_high_humidy_wc_guests",
|
|
"result": {
|
|
"structured": "TRIGGER: When wc temperature humidity sensor humidity [sensor.wc_temperature_humidity_sensor_humidity] is greater than or equal to bathroom max humidity percentage [input_number.bathroom_max_humidity_percentage] for 5 minutes OR every 20 minutes (time pattern). CONDITIONS: wc temperature humidity sensor humidity [sensor.wc_temperature_humidity_sensor_humidity] is greater than or equal to bathroom max humidity percentage [input_number.bathroom_max_humidity_percentage] AND multiswitch wc guests center [fan.multiswitch_wc_guests_center] is off AND dnd schedule [schedule.dnd_schedule] is off. ACTIONS: Set variables action_ack and message. If send_notification variable is true, send a notification with title 'Humidade WC Guests' and the constructed message. Then, turn on multiswitch wc guests center [fan.multiswitch_wc_guests_center].",
|
|
"natural_language": {
|
|
"trigger": "The automation triggers when the humidity sensor in the WC [sensor.wc_temperature_humidity_sensor_humidity] reports a value at or above the set maximum humidity threshold [input_number.bathroom_max_humidity_percentage] for a continuous period of five minutes. It also triggers every 20 minutes as a periodic check.",
|
|
"conditions": "For the automation to run, the current humidity reading [sensor.wc_temperature_humidity_sensor_humidity] must still be at or above the maximum threshold. The fan [fan.multiswitch_wc_guests_center] must be off, and the 'Do Not Disturb' schedule [schedule.dnd_schedule] must also be off.",
|
|
"action": "The automation first prepares a message stating the humidity is too high and the ventilation is being turned on. If notifications are enabled, it sends a high-priority mobile notification with this message. Finally, it turns on the fan [fan.multiswitch_wc_guests_center] to ventilate the room."
|
|
},
|
|
"human_like": "Turns on the bathroom fan when humidity is too high for a sustained period, ensuring it's not already running and respecting a 'Do Not Disturb' schedule.",
|
|
"complexity": "medium"
|
|
}
|
|
},
|
|
{
|
|
"id": "turn_on_ventax_high_humidy_wc_suite",
|
|
"result": {
|
|
"structured": "TRIGGER: When sensor temperature humidity wc suite humidity [sensor.sensor_temperature_humidity_wc_suite_humidity] remains greater than or equal to bathroom max humidity percentage [input_number.bathroom_max_humidity_percentage] for 5 minutes OR at every 20th minute of the hour. CONDITIONS: sensor temperature humidity wc suite humidity [sensor.sensor_temperature_humidity_wc_suite_humidity] is greater than or equal to bathroom max humidity percentage [input_number.bathroom_max_humidity_percentage] AND multiswitch wc suite ventax [fan.multiswitch_wc_suite_ventax] is off AND dnd schedule [schedule.dnd_schedule] is off. ACTIONS: Set variables (action_ack, message). If send_notification variable is true, send a notification with title 'Humidade WC Suite' and the constructed message. Then, turn on multiswitch wc suite ventax [fan.multiswitch_wc_suite_ventax].",
|
|
"natural_language": {
|
|
"trigger": "The automation triggers either when the humidity sensor in the WC Suite [sensor.sensor_temperature_humidity_wc_suite_humidity] reports a value at or above the configured maximum humidity threshold [input_number.bathroom_max_humidity_percentage] for a continuous period of five minutes, or on a recurring schedule every 20 minutes past the hour.",
|
|
"conditions": "For the action to run, the current humidity reading must still be at or above the maximum threshold, the ventilation fan [fan.multiswitch_wc_suite_ventax] must be off, and the 'Do Not Disturb' schedule [schedule.dnd_schedule] must also be off.",
|
|
"action": "The automation first prepares a notification message. If notifications are enabled (based on the 'send_notification' variable), it sends a high-priority mobile notification with the humidity level and a message that ventilation has been activated. Finally, it turns on the WC Suite ventilation fan [fan.multiswitch_wc_suite_ventax]."
|
|
},
|
|
"human_like": "Turns on the bathroom ventilation fan when humidity is too high for a sustained period, or checks regularly, ensuring it doesn't run during 'Do Not Disturb' times.",
|
|
"complexity": "medium"
|
|
}
|
|
}
|
|
] |