[ { "id": "Now playing → ESPHome cover (PNG)", "result": { "structured": "TRIGGER: When wrover2 media player [media_player.wrover2] changes state. CONDITIONS: The entity_picture attribute of wrover2 media player [media_player.wrover2] has changed from the previous state AND the current entity_picture attribute is not empty or None. ACTIONS: Set variables: base URL, entity_picture URL, remote image URL, remote_ok flag, source URL (using remote if accessible, otherwise local), cache bust timestamp, final URL. Then, download the source image to a temporary file, wait 1 second, normalize the image, clean up temporary files, wait 1 second, and display the final image on the ESPHome device.", "natural_language": { "trigger": "Whenever the state of the wrover2 media player [media_player.wrover2] changes.", "conditions": "The condition checks that the media player's album art or entity picture has actually changed from its previous state, and that the new picture is not empty.", "action": "The automation downloads the new album art image from either a remote or local source, processes it by normalizing the image file, cleans up temporary files, and then displays it full-screen on an ESPHome device." }, "human_like": "Updates the displayed album art on an ESPHome screen whenever the media player changes tracks.", "complexity": "medium" } }, { "id": "request_response_to_dashboard", "result": { "structured": "TRIGGER: When esphome web e9f624 text request sensor [sensor.esphome_web_e9f624_text_request] changes state OR When esphome web e9f624 text response sensor [sensor.esphome_web_e9f624_text_response] changes state. CONDITIONS: None. ACTIONS: Choose based on trigger: IF trigger is request AND the new state of the triggering entity is not '...' THEN set airesponse input text [input_text.airesponse] to 'You: ' followed by the new state. IF trigger is response AND the new state of the triggering entity is not '...' THEN set airesponse input text [input_text.airesponse] to 'AI: ' followed by the new state.", "natural_language": { "trigger": "The automation runs when the state of the esphome web e9f624 text request sensor [sensor.esphome_web_e9f624_text_request] changes, or when the state of the esphome web e9f624 text response sensor [sensor.esphome_web_e9f624_text_response] changes.", "conditions": "There are no conditions that must be met for the automation to proceed.", "action": "Depending on which sensor triggered the automation, the action updates the airesponse input text [input_text.airesponse]. If the request sensor triggered and its new value is not '...', the text is set to 'You: ' followed by the request. If the response sensor triggered and its new value is not '...', the text is set to 'AI: ' followed by the response." }, "human_like": "Updates a dashboard text field with either a user's request or an AI's response, prefixed accordingly.", "complexity": "medium" } }, { "id": "jarvis voice light when thinking", "result": { "structured": "TRIGGER: When jarvis voice assist satellite [assist_satellite.jarvis_voice_assist_satellite] changes to processing. CONDITIONS: None. ACTIONS: Turn on esphome web 0bac48 light [light.esphome_web_0bac48], then wait until jarvis voice assist satellite [assist_satellite.jarvis_voice_assist_satellite] changes to responding, then turn off esphome web 0bac48 light [light.esphome_web_0bac48].", "natural_language": { "trigger": "When the jarvis voice assist satellite [assist_satellite.jarvis_voice_assist_satellite] starts processing a voice command.", "conditions": "There are no conditions that must be met.", "action": "First, the light named esphome web 0bac48 light [light.esphome_web_0bac48] is turned on. The automation then waits for the jarvis voice assist satellite [assist_satellite.jarvis_voice_assist_satellite] to start responding. Once that happens, the same light is turned off." }, "human_like": "Turns on a light when the voice assistant is thinking and turns it off when the assistant starts responding.", "complexity": "medium" } }, { "id": "Taichi v1 Swipe", "result": { "structured": "TRIGGER: When esphome web e9f624 swipe left sensor [binary_sensor.esphome_web_e9f624_swipe_left] turns on OR When esphome web e9f624 swipe right sensor [binary_sensor.esphome_web_e9f624_swipe_right] turns on OR When esphome web e9f624 swipe up sensor [binary_sensor.esphome_web_e9f624_swipe_up] turns on OR When esphome web e9f624 swipe down sensor [binary_sensor.esphome_web_e9f624_swipe_down] turns on. CONDITIONS: None. ACTIONS: If the trigger was esphome web e9f624 swipe up sensor [binary_sensor.esphome_web_e9f624_swipe_up], then select the next option (with cycling) for esphome web e9f624 clock wallpaper online select [select.esphome_web_e9f624_clock_wallpaper_online]. If the trigger was esphome web e9f624 swipe down sensor [binary_sensor.esphome_web_e9f624_swipe_down], then toggle esphome web e9f624 show battery status switch [switch.esphome_web_e9f624_show_battery_status]. If the trigger was esphome web e9f624 swipe left sensor [binary_sensor.esphome_web_e9f624_swipe_left], then select the next option (with cycling) for esphome web e9f624 clock style select [select.esphome_web_e9f624_clock_style]. If the trigger was esphome web e9f624 swipe right sensor [binary_sensor.esphome_web_e9f624_swipe_right], then select the previous option (with cycling) for esphome web e9f624 clock style select [select.esphome_web_e9f624_clock_style].", "natural_language": { "trigger": "The automation is triggered when any of the four swipe sensors on the device become active. This includes the esphome web e9f624 swipe left sensor [binary_sensor.esphome_web_e9f624_swipe_left], the esphome web e9f624 swipe right sensor [binary_sensor.esphome_web_e9f624_swipe_right], the esphome web e9f624 swipe up sensor [binary_sensor.esphome_web_e9f624_swipe_up], or the esphome web e9f624 swipe down sensor [binary_sensor.esphome_web_e9f624_swipe_down].", "conditions": "There are no conditions that need to be met for the automation to proceed.", "action": "Depending on which swipe triggered the automation, a different action is performed. A swipe up cycles to the next wallpaper option for the esphome web e9f624 clock wallpaper online select [select.esphome_web_e9f624_clock_wallpaper_online]. A swipe down toggles the battery status display via the esphome web e9f624 show battery status switch [switch.esphome_web_e9f624_show_battery_status]. A swipe left cycles forward through the clock style options on the esphome web e9f624 clock style select [select.esphome_web_e9f624_clock_style]. A swipe right cycles backward through the clock style options on the same select entity." }, "human_like": "This automation maps swipe gestures on a device to control its clock's wallpaper, style, and battery status display.", "complexity": "medium" } }, { "id": "Talk to (dynamic, Xiaozhi Taichi Pi)", "result": { "structured": "TRIGGER: When a voice command matches the pattern 'talk to {name}', 'let me talk to {name}', 'switch to {name}', or 'i want to talk to {name}' via a conversation trigger. CONDITIONS: The template condition evaluates to true, meaning the variable 'chosen' has a length greater than 0 (i.e., a valid assistant option was found). ACTIONS: Set the xiaozhi taichi pi assistant select [select.xiaozhi_taichi_pi_assistant] to the selected option and respond with 'Okay, switching to [chosen].'", "natural_language": { "trigger": "When you say a voice command like 'talk to', 'let me talk to', 'switch to', or 'i want to talk to' followed by an assistant name.", "conditions": "The system must successfully find a matching assistant name from the available options for the xiaozhi taichi pi assistant select [select.xiaozhi_taichi_pi_assistant].", "action": "Switches the selected assistant to the matched option on the xiaozhi taichi pi assistant select [select.xiaozhi_taichi_pi_assistant] and verbally confirms the change." }, "human_like": "Allows you to switch between different AI assistants by voice command, using fuzzy name matching to understand your request.", "complexity": "medium" } } ]