AutomationDataset/Wonderlux-Labs/automation-descriptions.json

652 lines
55 KiB
JSON

[
{
"id": "a7612198293a4638a9a4bfd867361f8e",
"result": {
"structured": "TRIGGER: When square voice satellite [assist_satellite.square_voice] changes state from idle to listening. CONDITIONS: None. ACTIONS: Create a scene named 'cube_voice_restore' capturing the current states of cube light top [light.cube_light_top] and cube inner light [light.cube_inner].",
"natural_language": {
"trigger": "When the square voice satellite [assist_satellite.square_voice] starts listening, transitioning from an idle state.",
"conditions": "There are no conditions for this automation.",
"action": "Creates a new scene snapshot called 'cube_voice_restore' that saves the current brightness, color, and on/off state of the cube light top [light.cube_light_top] and the cube inner light [light.cube_inner]."
},
"human_like": "Saves the current lighting state in the cube room whenever the voice assistant starts listening, so it can be restored later.",
"complexity": "low"
}
},
{
"id": "e3e94119c906442b87993accb955a681",
"result": {
"structured": "TRIGGER: When square voice satellite [assist_satellite.square_voice] changes state to listening. CONDITIONS: None. ACTIONS: Send a notification to awtrix device [device_id: ac07cb1bceee39dce3af75aa6c6d784c] with text 'LISTENING', a duration of 10 seconds, and rainbow effect enabled AND Turn on cube light top [light.cube_light_top] with RGB color (10, 250, 10) and effect 'Happy Blinker'.",
"natural_language": {
"trigger": "When the square voice satellite [assist_satellite.square_voice] starts listening.",
"conditions": "There are no conditions for this automation.",
"action": "Sends a notification to the awtrix device [device_id: ac07cb1bceee39dce3af75aa6c6d784c] displaying the word 'LISTENING' for 10 seconds with a rainbow effect, and simultaneously turns on the cube light top [light.cube_light_top] with a bright green color and a 'Happy Blinker' light effect."
},
"human_like": "Provides visual feedback on the AWTRIX display and a light when the voice assistant satellite starts listening.",
"complexity": "low"
}
},
{
"id": "bf933227de44481a82be0e6bc48781a9",
"result": {
"structured": "TRIGGER: When square voice satellite [assist_satellite.square_voice] changes state to processing. CONDITIONS: None. ACTIONS: Turn on cube light top [light.cube_light_top] with RGB color (10, 50, 250) and the 'Mysterious' lighting effect.",
"natural_language": {
"trigger": "When the square voice satellite [assist_satellite.square_voice] starts processing a voice command.",
"conditions": "There are no conditions that need to be met.",
"action": "Turns on the cube light top [light.cube_light_top] with a specific blue color and sets it to the 'Mysterious' lighting effect."
},
"human_like": "Changes the top cube light to a blue, mysterious effect when the voice satellite is processing a command.",
"complexity": "low"
}
},
{
"id": "224bc31d91254e57ad8d93e8549be334",
"result": {
"structured": "TRIGGER: When square voice satellite [assist_satellite.square_voice] changes state to processing. CONDITIONS: None. ACTIONS: Turn on cube voice ring light [light.cube_voice_ring] with effect 'Music: Vibrate'.",
"natural_language": {
"trigger": "When the square voice satellite [assist_satellite.square_voice] starts processing a voice command.",
"conditions": "There are no conditions that must be met.",
"action": "Turns on the cube voice ring light [light.cube_voice_ring] with a 'Music: Vibrate' lighting effect."
},
"human_like": "When the voice assistant starts listening, it lights up the cube with a pulsing effect.",
"complexity": "low"
}
},
{
"id": "speakandrestore123948",
"result": {
"structured": "TRIGGER: When square voice satellite [assist_satellite.square_voice] changes to idle. CONDITIONS: None. ACTIONS: Activate cube voice restore scene [scene.cube_voice_restore].",
"natural_language": {
"trigger": "When the square voice satellite [assist_satellite.square_voice] becomes idle.",
"conditions": "There are no conditions for this automation.",
"action": "Activates the cube voice restore scene [scene.cube_voice_restore]."
},
"human_like": "Restores the Cube Voice settings when the Square Voice satellite finishes speaking.",
"complexity": "low"
}
},
{
"id": "'1755313710558'",
"result": {
"structured": "TRIGGER: When current persona selector [input_select.current_persona] changes state. CONDITIONS: None. ACTIONS: Choose based on the new state of current persona selector [input_select.current_persona]. If state is 'jax', set home assistant voice assistant [select.home_assistant_voice_09739d_assistant] and esp32 s3 box assistant [select.esp32_s3_box_3_52b3dc_assistant] to 'JAX'. If state is 'buddy', set both to 'BUDDY'. If state is 'sparkle', set both to 'SPARKLE'. If state is 'zorp', set both to 'ZORP'. If state is 'neon', set both to 'NEON'. If state is 'crash', set both to 'CRASH'. If state is 'thecube', set both to 'THECUBE'. If state is 'mobius', set both to 'MOBIUS'. If state is 'NEON', set both to 'NEON'. For any other state, do nothing.",
"natural_language": {
"trigger": "Whenever the current persona selector [input_select.current_persona] changes to a new value.",
"conditions": "There are no conditions that must be met.",
"action": "Depending on the newly selected persona, the automation changes the voice assistant personality on two devices. If 'jax' is selected, it sets both the home assistant voice assistant [select.home_assistant_voice_09739d_assistant] and the esp32 s3 box assistant [select.esp32_s3_box_3_52b3dc_assistant] to the 'JAX' option. If 'buddy' is selected, it sets both to 'BUDDY'. If 'sparkle' is selected, it sets both to 'SPARKLE'. If 'zorp' is selected, it sets both to 'ZORP'. If 'neon' is selected, it sets both to 'NEON'. If 'crash' is selected, it sets both to 'CRASH'. If 'thecube' is selected, it sets both to 'THECUBE'. If 'mobius' is selected, it sets both to 'MOBIUS'. If 'NEON' is selected, it sets both to 'NEON'. If any other, unspecified value is selected, no action is taken."
},
"human_like": "This automation synchronizes the voice assistant personality across devices whenever a user changes the selected persona.",
"complexity": "medium"
}
},
{
"id": "'1755332428238'",
"result": {
"structured": "TRIGGER: When small siren [siren.small_siren] remains on for 20 seconds. CONDITIONS: None. ACTIONS: Turn off small siren [siren.siren.small_siren].",
"natural_language": {
"trigger": "When the small siren [siren.small_siren] has been turned on and remains in the 'on' state for 20 seconds.",
"conditions": "There are no conditions that need to be met.",
"action": "Turns off the small siren [siren.siren.small_siren]."
},
"human_like": "Automatically turns off the siren 20 seconds after it is activated.",
"complexity": "low"
}
},
{
"id": "'1755332428239'",
"result": {
"structured": "TRIGGER: When fan switch [switch.fan_switch] remains on for 1 minute. CONDITIONS: None. ACTIONS: Turn off fan switch [switch.fan_switch] AND turn on fan cooldown [input_boolean.fan_cooldown].",
"natural_language": {
"trigger": "When the fan switch [switch.fan_switch] has been turned on and remains in the on state for one full minute.",
"conditions": "There are no conditions that must be met.",
"action": "Turns off the fan switch [switch.fan_switch] and also turns on the fan cooldown [input_boolean.fan_cooldown]."
},
"human_like": "Automatically turns off the fan one minute after it's turned on, and sets a cooldown flag.",
"complexity": "low"
}
},
{
"id": "'1755332428240'",
"result": {
"structured": "TRIGGER: When strobe switch [switch.strobe_switch] remains on for 30 seconds. CONDITIONS: None. ACTIONS: Turn off strobe switch [switch.strobe_switch].",
"natural_language": {
"trigger": "When the strobe switch [switch.strobe_switch] has been turned on and remains in the on state for 30 seconds.",
"conditions": "There are no conditions.",
"action": "Turns off the strobe switch [switch.strobe_switch]."
},
"human_like": "Automatically turns off the strobe light 30 seconds after it was switched on.",
"complexity": "low"
}
},
{
"id": "'1755332428241'",
"result": {
"structured": "TRIGGER: When blacklight switch [switch.blacklight_switch] remains on for 30 seconds. CONDITIONS: None. ACTIONS: Turn off blacklight switch [switch.blacklight_switch].",
"natural_language": {
"trigger": "When the blacklight switch [switch.blacklight_switch] has been turned on and remains in the on state for 30 seconds.",
"conditions": "There are no conditions that must be met.",
"action": "Turns off the blacklight switch [switch.blacklight_switch]."
},
"human_like": "Automatically turns off the blacklight 30 seconds after it is switched on.",
"complexity": "low"
}
},
{
"id": "'1755332428242'",
"result": {
"structured": "TRIGGER: When fan cooldown [input_boolean.fan_cooldown] is turned on and remains on for 1 hour. CONDITIONS: None. ACTIONS: Turn off fan cooldown [input_boolean.fan_cooldown].",
"natural_language": {
"trigger": "When the fan cooldown [input_boolean.fan_cooldown] is switched on and stays on for exactly one hour.",
"conditions": "There are no conditions that must be met.",
"action": "Turns off the fan cooldown [input_boolean.fan_cooldown]."
},
"human_like": "Automatically resets the fan cooldown status after one hour.",
"complexity": "low"
}
},
{
"id": "'1755333596935'",
"result": {
"structured": "TRIGGER: When backend health check [sensor.backend_health_check] remains unavailable for 15 seconds OR When backend health check [sensor.backend_health_check] remains unknown for 15 seconds. CONDITIONS: None. ACTIONS: Turn on cube voice ring light [light.cube_voice_ring] with red color (RGB 99,0,0) and long flash. AND Turn on cube light top [light.cube_light_top] with red color (RGB 86,0,0) and Breathe effect.",
"natural_language": {
"trigger": "When the backend health check [sensor.backend_health_check] sensor reports a state of 'unavailable' or 'unknown' and that state persists for at least 15 seconds.",
"conditions": "There are no additional conditions for this automation.",
"action": "It turns on the cube voice ring light [light.cube_voice_ring] with a deep red color and a long flash, and simultaneously turns on the cube light top [light.cube_light_top] with a slightly different red color and a breathing light effect."
},
"human_like": "Turns the Cube lights red with flashing and breathing effects to visually alert you when the backend system becomes unresponsive or its status is unknown for 15 seconds.",
"complexity": "low"
}
},
{
"id": "'1755333757049'",
"result": {
"structured": "TRIGGER: When backend health check [sensor.backend_health_check] changes from unavailable to healthy AND remains healthy for 15 seconds. CONDITIONS: None. ACTIONS: Turn on cube voice ring light [light.cube_voice_ring] with a green color (RGB 0, 200, 0) and a long flash. Turn on cube light top [light.cube_light_top] with the twinkle effect. Wait for 5 seconds. Turn on cube light top [light.cube_light_top] with 100% brightness and a purple color (RGB 116, 0, 100). Wait for 30 seconds. Turn on cube inner light [light.cube_inner] and cube light top [light.cube_light_top] with no effect.",
"natural_language": {
"trigger": "When the backend health check [sensor.backend_health_check] becomes healthy after being unavailable and stays healthy for 15 seconds.",
"conditions": "There are no conditions.",
"action": "The automation first turns on the cube voice ring light [light.cube_voice_ring] with a green color and a long flash. Simultaneously, it turns on the cube light top [light.cube_light_top] with a twinkle effect. After a 5-second delay, it changes the cube light top [light.cube_light_top] to full brightness with a purple color. Finally, after another 30-second delay, it removes any effects from both the cube inner light [light.cube_inner] and the cube light top [light.cube_light_top]."
},
"human_like": "Celebrates a healthy backend system by playing a sequence of colorful light patterns on the cube lights.",
"complexity": "medium"
}
},
{
"id": "cycle_persona_automation",
"result": {
"structured": "TRIGGER: When current persona selector [input_select.current_persona] changes state. CONDITIONS: None. ACTIONS: Turn on small siren [siren.small_siren]; Turn on cube light top [light.cube_light_top] with brightness 100% and effect 'Acid'; Play track 'glitch cube theme song!' on cube jukebox [media_player.cube_jukebox] with enqueue mode 'replace'.",
"natural_language": {
"trigger": "Whenever the current persona selector [input_select.current_persona] is changed.",
"conditions": "There are no conditions; the automation runs immediately after the trigger.",
"action": "Activates a multi-sensory alert: the small siren [siren.small_siren] is turned on, the cube light top [light.cube_light_top] is turned on at full brightness with the 'Acid' effect, and the track 'glitch cube theme song!' is played on the cube jukebox [media_player.cube_jukebox], replacing any currently playing media."
},
"human_like": "Plays a glitch-themed audio-visual alert whenever the current persona is changed.",
"complexity": "low"
}
},
{
"id": "motion_auto_reset",
"result": {
"structured": "TRIGGER: When motion detected [input_boolean.motion_detected] remains on for 30 seconds. CONDITIONS: None. ACTIONS: Turn off motion detected [input_boolean.motion_detected].",
"natural_language": {
"trigger": "When the motion detected [input_boolean.motion_detected] input boolean has been in the 'on' state for 30 seconds.",
"conditions": "There are no conditions.",
"action": "Turns the motion detected [input_boolean.motion_detected] input boolean back to the 'off' state."
},
"human_like": "Automatically resets the motion detection flag 30 seconds after it is triggered.",
"complexity": "low"
}
},
{
"id": "low_battery_alert",
"result": {
"structured": "TRIGGER: When low battery [input_boolean.low_battery] turns on. CONDITIONS: None. ACTIONS: Turn on cube voice ring light [light.cube_voice_ring] with red color and long flash AND create a persistent notification with title 'Low Battery Warning' and message 'System battery is low. Consider finding power.' with notification_id 'low_battery_alert'.",
"natural_language": {
"trigger": "When the low battery [input_boolean.low_battery] indicator is turned on.",
"conditions": "There are no conditions; the automation runs immediately when triggered.",
"action": "The cube voice ring light [light.cube_voice_ring] will turn on with a red color and a long flashing pattern, and a persistent notification titled 'Low Battery Warning' with the message 'System battery is low. Consider finding power.' will be created."
},
"human_like": "Alerts you with a flashing red light and a notification when the system battery is low.",
"complexity": "low"
}
},
{
"id": "cube_busy_visual",
"result": {
"structured": "TRIGGER: When cube busy [input_boolean.cube_busy] turns on OR When cube busy [input_boolean.cube_busy] turns off. CONDITIONS: None. ACTIONS: If cube busy [input_boolean.cube_busy] is on, turn on cube light top [light.cube_light_top] with effect 'Happy Blinker' and brightness 50%. If cube busy [input_boolean.cube_busy] is off, turn on cube light top [light.cube_light_top] with a random effect from its effect list.",
"natural_language": {
"trigger": "Whenever the cube busy [input_boolean.cube_busy] status changes, either turning on or off.",
"conditions": "There are no additional conditions that must be met.",
"action": "If the cube is marked as busy, the top light in the cube will turn on with a 'Happy Blinker' effect at half brightness. If the cube is marked as not busy, the top light will turn on with a randomly selected effect from its available list."
},
"human_like": "Changes the lighting effect on the cube's top light to visually indicate whether the cube is busy or not busy.",
"complexity": "medium"
}
},
{
"id": "awtrix_persona_change",
"result": {
"structured": "TRIGGER: When current persona selector [input_select.current_persona] changes state. CONDITIONS: None. ACTIONS: Publish an MQTT message to topic 'awtrix/custom/persona' with a JSON payload. The payload contains a text field set to the uppercase value of current persona selector [input_select.current_persona], an icon ID determined by the persona value (2022 for 'buddy', 7956 for 'jax', 7919 for 'lomi', 7982 for 'zorp', 7786 otherwise), a color array determined by the persona value ([0, 200, 255] for 'buddy', [255, 100, 0] for 'jax', [255, 0, 200] for 'lomi', [100, 255, 0] for 'zorp', [255, 255, 255] otherwise), and a duration of 8.",
"natural_language": {
"trigger": "Whenever the selected value of the current persona selector [input_select.current_persona] changes.",
"conditions": "There are no conditions; the action runs immediately after the trigger.",
"action": "Sends a custom message to an AWTRIX display via MQTT. The message shows the selected persona's name in uppercase, a specific icon and color associated with that persona, and remains visible for 8 seconds."
},
"human_like": "Updates the AWTRIX display to show the currently selected persona with a matching icon and color.",
"complexity": "low"
}
},
{
"id": "awtrix_battery_alert",
"result": {
"structured": "TRIGGER: When low battery [input_boolean.low_battery] changes state. CONDITIONS: None. ACTIONS: Publish an MQTT message to topic 'awtrix/custom/battery' with a JSON payload. The payload contains a text field showing 'LOW BAT' if low battery [input_boolean.low_battery] is on, otherwise 'BAT OK'. It includes an icon (184 if on, 183 if off), a color (red [255, 0, 0] if on, green [0, 255, 0] if off), an effect ('BlinkyRainbow' if on, otherwise empty), and a duration of 10 seconds.",
"natural_language": {
"trigger": "Whenever the state of the low battery [input_boolean.low_battery] changes.",
"conditions": "There are no conditions; the action runs immediately after the trigger.",
"action": "Sends a custom message to an AWTRIX display via MQTT. The message shows 'LOW BAT' in red with a blinking rainbow effect if the battery status is low, or 'BAT OK' in green with a static icon if the battery is okay. The message is displayed for 10 seconds."
},
"human_like": "Displays a battery status alert on an AWTRIX screen, showing a red warning for low battery or a green OK message.",
"complexity": "low"
}
},
{
"id": "awtrix_motion_alert",
"result": {
"structured": "TRIGGER: When motion detected [input_boolean.motion_detected] turns on. CONDITIONS: None. ACTIONS: Publish a custom MQTT message to the topic 'awtrix/custom/motion' with a payload containing the text 'MOTION', icon 7876, an orange color, the 'ColorWipe' effect, and a duration of 5 seconds.",
"natural_language": {
"trigger": "When the system's motion detected [input_boolean.motion_detected] is turned on.",
"conditions": "There are no conditions; the action runs immediately after the trigger.",
"action": "Sends a message to an AWTRIX display via MQTT, showing the word 'MOTION' in orange with a specific icon and a wipe effect for 5 seconds."
},
"human_like": "Shows a motion alert on the AWTRIX display whenever motion is detected.",
"complexity": "low"
}
},
{
"id": "awtrix_health_status",
"result": {
"structured": "TRIGGER: When backend health check [sensor.backend_health_check] changes state. CONDITIONS: None. ACTIONS: Publish an MQTT message to the topic 'awtrix/custom/health' with a payload containing a JSON object. The payload includes: a 'text' field set to the uppercase version of the new state of backend health check [sensor.backend_health_check]; an 'icon' field set to 4687 if the new state is 'healthy', otherwise 4688; a 'color' field set to [0, 255, 0] for 'healthy', [255, 255, 0] for 'degraded', otherwise [255, 0, 0]; and a 'duration' field set to 8.",
"natural_language": {
"trigger": "Whenever the backend health check [sensor.backend_health_check] sensor updates its state.",
"conditions": "There are no conditions; the action runs immediately after the trigger.",
"action": "Sends a custom message to an AWTRIX display via MQTT. The message shows the health status in uppercase text, with a corresponding icon and color: a green checkmark for 'healthy', a yellow icon for 'degraded', and a red icon for any other status. The message is displayed for 8 seconds."
},
"human_like": "Displays the system health status on an AWTRIX screen, using different icons and colors to indicate if the system is healthy, degraded, or in an error state.",
"complexity": "low"
}
},
{
"id": "awtrix_conversation_counter",
"result": {
"structured": "TRIGGER: When daily conversations counter [counter.daily_conversations] changes state. CONDITIONS: None. ACTIONS: Publish an MQTT message to the topic 'awtrix/custom/conversations' with a payload containing the text 'CHATS' followed by the current state of daily conversations counter [counter.daily_conversations], an icon ID of 7929, a color of [0, 255, 200], and a display duration of 6 seconds.",
"natural_language": {
"trigger": "Whenever the daily conversations counter [counter.daily_conversations] updates its value.",
"conditions": "There are no conditions that must be met.",
"action": "Sends a formatted message to an AWTRIX device via MQTT. The message displays the text 'CHATS' followed by the current count from the daily conversations counter [counter.daily_conversations], shows a specific icon, uses a cyan color, and remains visible for 6 seconds."
},
"human_like": "Updates the AWTRIX display to show the current number of daily conversations.",
"complexity": "low"
}
},
{
"id": "'1755536429534'",
"result": {
"structured": "TRIGGER: When world state sensor [sensor.world_state] attribute weather_updated_at changes state and remains stable for 1 second. CONDITIONS: square voice media player [media_player.square_voice] is idle AND remains idle for 30 seconds. ACTIONS: Use cloud TTS to speak the value of the weather_conditions attribute from world state sensor [sensor.world_state] on square voice media player [media_player.square_voice].",
"natural_language": {
"trigger": "Whenever the weather_updated_at attribute of the world state sensor [sensor.world_state] changes and then stays the same for at least one second.",
"conditions": "The square voice media player [media_player.square_voice] must be in an idle state and remain idle for at least 30 seconds.",
"action": "The automation uses cloud-based text-to-speech to announce the current weather conditions, which are read from the weather_conditions attribute of the world state sensor [sensor.world_state], through the square voice media player [media_player.square_voice]."
},
"human_like": "Announces the current weather conditions on the living room speaker when the weather data is updated and the speaker is available.",
"complexity": "medium"
}
},
{
"id": "'1755758825522'",
"result": {
"structured": "TRIGGER: When cube battery volts [sensor.cube_battery_volts] drops below 12.2. CONDITIONS: None. ACTIONS: Turn on low battery mode [input_boolean.low_battery_mode].",
"natural_language": {
"trigger": "When the cube battery volts [sensor.cube_battery_volts] sensor reports a value below 12.2 volts.",
"conditions": "There are no conditions that must be met.",
"action": "Activates the system's low battery mode by turning on the low battery mode [input_boolean.low_battery_mode] switch."
},
"human_like": "Activates low battery mode when the cube's battery voltage falls below 12.2 volts.",
"complexity": "low"
}
},
{
"id": "'1755760732184'",
"result": {
"structured": "TRIGGER: When cube jukebox [media_player.cube_jukebox] changes state to playing. CONDITIONS: None. ACTIONS: Send a notification to awtrix device [device_id: ac07cb1bceee39dce3af75aa6c6d784c] with text 'Now playing: {{ state_attr('media_player.cube_jukebox', 'media_title') }} -- {{ state_attr('media_player.cube_jukebox', 'media_artist') }}', duration 30 seconds, icon '39264', rainbow false, pushIcon '1', repeat -1, wakeup true.",
"natural_language": {
"trigger": "When the cube jukebox [media_player.cube_jukebox] starts playing.",
"conditions": "There are no conditions.",
"action": "Sends a notification to the awtrix device [device_id: ac07cb1bceee39dce3af75aa6c6d784c] displaying the currently playing track's title and artist. The notification will show for 30 seconds, use a specific icon, and will wake the display."
},
"human_like": "Displays the currently playing song on the Awtrix device when music starts on the jukebox.",
"complexity": "low"
}
},
{
"id": "'1755841067280'",
"result": {
"structured": "TRIGGER: When camera motion alarm [switch.camera_motion_alarm] turns on. CONDITIONS: None. ACTIONS: Execute script main_cam_analyze_detail.",
"natural_language": {
"trigger": "When the camera motion alarm [switch.camera_motion_alarm] is turned on.",
"conditions": "There are no conditions for this automation.",
"action": "Runs the script named main_cam_analyze_detail."
},
"human_like": "Runs a detailed camera analysis when the motion alarm is activated.",
"complexity": "low"
}
},
{
"id": "'1755864373097'",
"result": {
"structured": "TRIGGER: Every minute (time pattern minutes: /1). CONDITIONS: None. ACTIONS: Turn on key rgb matrix [light.esphome_web_510674_key_rgb_matrix] with a random effect from its effect list.",
"natural_language": {
"trigger": "The automation triggers every minute.",
"conditions": "There are no conditions.",
"action": "Turns on the key rgb matrix [light.esphome_web_510674_key_rgb_matrix] light, applying a random effect from the light's available effect list."
},
"human_like": "Every minute, the key light turns on with a random color effect.",
"complexity": "low"
}
},
{
"id": "'1755864517367'",
"result": {
"structured": "TRIGGER: When right encoder button [binary_sensor.esphome_web_510674_right_encoder_button] turns on. CONDITIONS: None. ACTIONS: Turn on small siren [siren.small_siren].",
"natural_language": {
"trigger": "When the right encoder button [binary_sensor.esphome_web_510674_right_encoder_button] is pressed (turns on).",
"conditions": "There are no conditions that must be met.",
"action": "Activate the small siren [siren.small_siren]."
},
"human_like": "Sounds the siren when a specific button is pressed.",
"complexity": "low"
}
},
{
"id": "123456781aaa92",
"result": {
"structured": "TRIGGER: When square voice satellite [assist_satellite.square_voice] changes from idle to listening. CONDITIONS: None. ACTIONS: Create a scene named 'cube_voice_restore' capturing the current states of cube light top [light.cube_light_top] and cube inner light [light.cube_inner].",
"natural_language": {
"trigger": "When the square voice satellite [assist_satellite.square_voice] starts listening, transitioning from an idle state.",
"conditions": "There are no conditions that must be met for this automation to proceed.",
"action": "Creates a snapshot of the current lighting state, saving it as a scene named 'cube_voice_restore'. This scene includes the cube light top [light.cube_light_top] and the cube inner light [light.cube_inner]."
},
"human_like": "Saves the current state of the cube lights as a scene whenever the voice assistant starts listening.",
"complexity": "low"
}
},
{
"id": "voicelistening123456",
"result": {
"structured": "TRIGGER: When square voice satellite [assist_satellite.square_voice] changes state to listening. CONDITIONS: None. ACTIONS: Send a notification to awtrix device [device_id: ac07cb1bceee39dce3af75aa6c6d784c] with text 'BUDDY is LiStEnING', a duration of 10 seconds, and rainbow effect enabled, AND turn on cube light top [light.cube_light_top] with RGB color (10, 10, 200).",
"natural_language": {
"trigger": "When the square voice satellite [assist_satellite.square_voice] enters the 'listening' state.",
"conditions": "There are no conditions that must be met.",
"action": "Sends a notification to the awtrix device [device_id: ac07cb1bceee39dce3af75aa6c6d784c] displaying the text 'BUDDY is LiStEnING' with a rainbow effect for 10 seconds, and simultaneously turns on the cube light top [light.cube_light_top] to a blue color."
},
"human_like": "When the voice assistant starts listening, it shows a rainbow notification on the Awtrix display and lights the cube with a blue light.",
"complexity": "low"
}
},
{
"id": "voiceprocessing1234",
"result": {
"structured": "TRIGGER: When square voice satellite [assist_satellite.square_voice] changes to the state 'processing'. CONDITIONS: None. ACTIONS: Turn on cube busy [input_boolean.cube_busy].",
"natural_language": {
"trigger": "When the square voice satellite [assist_satellite.square_voice] starts processing a voice command.",
"conditions": "There are no conditions that must be met.",
"action": "Sets the cube busy [input_boolean.cube_busy] indicator to on."
},
"human_like": "Sets a busy indicator when the voice assistant starts processing a command.",
"complexity": "low"
}
},
{
"id": "speakandrestore123948",
"result": {
"structured": "TRIGGER: When square voice satellite [assist_satellite.square_voice] changes to speaking OR When square voice satellite [assist_satellite.square_voice] changes to idle. CONDITIONS: None. ACTIONS: If the trigger was idle, then activate cube voice restore scene [scene.cube_voice_restore] and turn off cube busy [input_boolean.cube_busy]. Otherwise, turn on cube inner light [light.cube_inner] with the 'Music: Vibrate' effect.",
"natural_language": {
"trigger": "When the square voice satellite [assist_satellite.square_voice] starts speaking or returns to idle.",
"conditions": "There are no conditions for this automation.",
"action": "If the voice satellite becomes idle, it restores a saved scene for the cube and marks it as not busy. If the voice satellite starts speaking, it turns on the cube's inner light with a special 'Music: Vibrate' effect."
},
"human_like": "Changes the cube's lighting based on the voice satellite's status: a vibrating effect when speaking starts, and restores the previous scene when it stops.",
"complexity": "medium"
}
},
{
"id": "cube_proactive_motion_check",
"result": {
"structured": "TRIGGER: When living room motion [binary_sensor.living_room_motion] becomes active (on). CONDITIONS: The time elapsed since the last conversation time recorded by cube last conversation time [sensor.cube_last_conversation_time] is greater than 1800 seconds (30 minutes). ACTIONS: Call the service rest_command.glitchcube_proactive with data parameters: trigger set to 'motion_after_quiet' and context set to 'Motion detected in living room after X minutes of quiet', where X is the elapsed quiet minutes (rounded).",
"natural_language": {
"trigger": "When motion is detected in the living room, as reported by the living room motion [binary_sensor.living_room_motion] sensor turning on.",
"conditions": "The automation only proceeds if it has been more than 30 minutes since the last conversation time recorded by the cube last conversation time [sensor.cube_last_conversation_time] sensor.",
"action": "Sends a proactive command to the Cube device via the 'glitchcube_proactive' service, indicating motion was detected after a period of quiet. The command includes the specific trigger 'motion_after_quiet' and a context message stating how many minutes of quiet preceded the motion."
},
"human_like": "Triggers a proactive Cube notification when motion is detected in the living room, but only if there hasn't been a conversation with the Cube for over 30 minutes.",
"complexity": "medium"
}
},
{
"id": "cube_proactive_arrival_checkin",
"result": {
"structured": "TRIGGER: When user person [person.user] arrives home (state changes to home). CONDITIONS: The time elapsed since user person [person.user] last changed state is greater than 7200 seconds (2 hours). ACTIONS: Call the REST command glitchcube_proactive with data: trigger = arrival_home, context = 'User just arrived home after being away for X hours' where X is the elapsed time in hours rounded to one decimal place.",
"natural_language": {
"trigger": "When the user person [person.user] arrives home.",
"conditions": "If the user has been away from home for more than two hours before arriving.",
"action": "Sends a proactive notification via a REST command, indicating the user has arrived home and including the duration they were away."
},
"human_like": "Sends a notification when you arrive home after being away for more than two hours.",
"complexity": "low"
}
},
{
"id": "cube_proactive_weather_alert",
"result": {
"structured": "TRIGGER: When home weather [weather.home] condition attribute changes. CONDITIONS: The new condition is rainy, snowy, stormy, or windy AND the previous condition was not rainy, snowy, stormy, or windy. ACTIONS: Call service rest_command.glitchcube_proactive with data: trigger=weather_change, context='Weather changed from [previous condition] to [new condition]'.",
"natural_language": {
"trigger": "When the weather condition reported by home weather [weather.home] changes.",
"conditions": "The new weather condition must be one of rainy, snowy, stormy, or windy, and the previous weather condition must not have been any of those.",
"action": "Sends a proactive alert by calling the 'glitchcube_proactive' service, specifying the weather change as the trigger and including a message with the old and new weather conditions."
},
"human_like": "Sends an alert when the weather changes to a potentially disruptive condition like rain, snow, storm, or wind.",
"complexity": "low"
}
},
{
"id": "cube_proactive_evening_checkin",
"result": {
"structured": "TRIGGER: At 21:00:00 daily. CONDITIONS: (user person [person.user] is home) AND (more than 3600 seconds (1 hour) have passed since the last conversation time recorded by cube last conversation time [sensor.cube_last_conversation_time]). ACTIONS: Call the service rest_command.glitchcube_proactive with data: trigger = evening_checkin, context = It's evening (9 PM) and user has been home without interaction for X minutes (where X is the minutes since last conversation, rounded).",
"natural_language": {
"trigger": "Every day at 9:00 PM.",
"conditions": "The user person [person.user] must be at home, and more than one hour must have passed since the last conversation time recorded by the sensor cube last conversation time [sensor.cube_last_conversation_time].",
"action": "Triggers a proactive evening check-in by calling the service rest_command.glitchcube_proactive, providing context that it's 9 PM and the user has been home without interaction for a calculated number of minutes."
},
"human_like": "At 9 PM, if you're home and haven't talked to the Cube in over an hour, it will initiate an evening check-in.",
"complexity": "medium"
}
},
{
"id": "cube_proactive_morning_energy",
"result": {
"structured": "TRIGGER: At 08:00:00 daily. CONDITIONS: (user person [person.user] is home) AND (workday sensor [binary_sensor.workday_sensor] is on). ACTIONS: Call the service rest_command.glitchcube_proactive with data: trigger = morning_energy_report, context = 'Good morning! It's a workday. Current energy usage: {{ states('sensor.home_energy_consumption') }}kW. Weather: {{ states('weather.home') }}'.",
"natural_language": {
"trigger": "The automation triggers every day at 8:00 AM.",
"conditions": "The user person [person.user] must be at home, and the workday sensor [binary_sensor.workday_sensor] must indicate that it is a workday.",
"action": "Sends a proactive morning energy report by calling a custom REST command (glitchcube_proactive). The report includes a greeting, notes it's a workday, and provides the current home energy consumption [sensor.home_energy_consumption] and the weather condition from home weather [weather.home]."
},
"human_like": "Sends a morning energy report on workdays when you are home, providing a summary of current energy usage and weather.",
"complexity": "low"
}
},
{
"id": "cube_proactive_device_offline",
"result": {
"structured": "TRIGGER: When internet connection [binary_sensor.internet_connection] remains off for 5 minutes OR nas online [binary_sensor.nas_online] remains off for 5 minutes OR security system [binary_sensor.security_system] remains off for 5 minutes. CONDITIONS: None. ACTIONS: Send a REST command to glitchcube_proactive with trigger 'device_offline_alert' and context containing the entity ID that triggered the automation.",
"natural_language": {
"trigger": "When the internet connection [binary_sensor.internet_connection], the NAS online status [binary_sensor.nas_online], or the security system [binary_sensor.security_system] reports an 'off' state for at least five minutes.",
"conditions": "There are no additional conditions that must be met.",
"action": "Sends a proactive alert via a REST command, specifying the trigger as 'device_offline_alert' and including the name of the specific device that went offline in the alert message."
},
"human_like": "Sends an alert if a critical device like the internet, NAS, or security system goes offline for five minutes.",
"complexity": "low"
}
},
{
"id": "cube_proactive_loneliness_check",
"result": {
"structured": "TRIGGER: When the time matches a pattern of every 4 hours. CONDITIONS: (user person [person.user] is home) AND (the time difference between now and cube last conversation time [sensor.cube_last_conversation_time] is greater than 14400 seconds) AND (the current time is after 08:00:00 AND before 22:00:00). ACTIONS: Call the service rest_command.glitchcube_proactive with data: trigger set to 'loneliness_check' and context containing a message stating the user has been home without interaction for a calculated number of hours.",
"natural_language": {
"trigger": "The automation triggers every four hours, based on a time pattern.",
"conditions": "The user person [person.user] must be at home. The time since the last conversation recorded by cube last conversation time [sensor.cube_last_conversation_time] must be more than four hours (14,400 seconds). Additionally, the current time must be between 8:00 AM and 10:00 PM.",
"action": "It sends a proactive check-in command to a device or service named 'glitchcube' with a context message detailing how many hours the user has been home without interaction."
},
"human_like": "Checks in on the user every few hours during the day if they've been home alone without talking to their smart device for an extended period.",
"complexity": "medium"
}
},
{
"id": "cube_proactive_energy_spike",
"result": {
"structured": "TRIGGER: When home energy consumption [sensor.home_energy_consumption] remains above 5.0 kW for 10 minutes. CONDITIONS: None. ACTIONS: Call service rest_command.glitchcube_proactive with data: trigger = high_energy_usage, context = 'Energy consumption has been high (current value kW) for 10 minutes. Current time: (current time in HH:MM format)'.",
"natural_language": {
"trigger": "When the home energy consumption [sensor.home_energy_consumption] stays above 5.0 kilowatts for a continuous period of 10 minutes.",
"conditions": "There are no additional conditions that need to be met.",
"action": "Sends a proactive alert by calling a REST command (glitchcube_proactive), reporting a high energy usage event. The alert includes the current energy consumption value and the time the alert was triggered."
},
"human_like": "Sends an alert when the home's energy usage is high for an extended period.",
"complexity": "low"
}
},
{
"id": "cube_proactive_security_event",
"result": {
"structured": "TRIGGER: When front door [binary_sensor.front_door] opens (on) OR When back door [binary_sensor.back_door] opens (on). CONDITIONS: (user person [person.user] is not_home) OR (time is after 23:00:00 AND before 06:00:00). ACTIONS: Call service rest_command.glitchcube_proactive with data: trigger=security_event, context='{{ trigger.entity_id }} opened at {{ now().strftime(''%H:%M'') }} when user status is {{ states(''person.user'') }}'.",
"natural_language": {
"trigger": "When either the front door [binary_sensor.front_door] or the back door [binary_sensor.back_door] opens.",
"conditions": "If the user person [person.user] is marked as not home, or if the current time is between 11:00 PM and 6:00 AM.",
"action": "Sends a proactive security event notification to a GlitchCube service, including which door opened, the current time, and the current status of the user person [person.user]."
},
"human_like": "Sends a security alert when a door is opened while the user is away or during nighttime hours.",
"complexity": "medium"
}
},
{
"id": "awtrix_location_context",
"result": {
"structured": "TRIGGER: When the time pattern matches every 5 minutes OR When current location [input_text.current_location] changes state OR When sun [sun.sun] changes state. CONDITIONS: None. ACTIONS: Send a custom app notification to awtrix device [device_id: ac07cb1bceee39dce3af75aa6c6d784c] with app 'location'. The notification displays the location text from current location [input_text.current_location] and the current time in 12-hour format, with an icon and a color determined by the hour of the day (blue before 6, yellow before 12, orange before 17, red before 21, purple otherwise). The notification lasts for 12 seconds, scrolls at speed 85, uses uppercase text, and is centered.",
"natural_language": {
"trigger": "The automation runs every 5 minutes, whenever the current location text changes, or when the sun's state changes.",
"conditions": "There are no conditions that must be met.",
"action": "Sends a notification to the AWTRIX device in the living room. The notification shows the current location name and the current time. The text color changes based on the time of day: blue for early morning, yellow for morning, orange for afternoon, red for evening, and purple for night. The message is displayed for 12 seconds, scrolls, is in uppercase, and is centered on the screen."
},
"human_like": "Updates the AWTRIX display every 5 minutes, or when the location or sun changes, to show the current location and time with a color that reflects the time of day.",
"complexity": "medium"
}
},
{
"id": "awtrix_weather_info",
"result": {
"structured": "TRIGGER: When the time pattern matches every 10 minutes OR When playa weather [weather.playaweather] changes state OR When pirate weather [weather.pirateweather] changes state. CONDITIONS: None. ACTIONS: Send custom app data to awtrix device [device_id: ac07cb1bceee39dce3af75aa6c6d784c] with app 'weather', text containing temperature, humidity, and wind speed from playa weather [weather.playaweather], an icon based on the weather condition of playa weather [weather.playaweather], a color based on the temperature of playa weather [weather.playaweather], a display duration of 15 seconds, a scroll speed of 75, and center alignment disabled.",
"natural_language": {
"trigger": "The automation runs every 10 minutes, or whenever the playa weather [weather.playaweather] entity updates, or whenever the pirate weather [weather.pirateweather] entity updates.",
"conditions": "There are no conditions that must be met for the action to run.",
"action": "Sends a custom weather display to the awtrix device [device_id: ac07cb1bceee39dce3af75aa6c6d784c]. The display shows the current temperature, humidity, and wind speed from the playa weather [weather.playaweather] sensor. The icon changes based on the current weather condition (like sunny or rainy), and the text color changes based on the temperature (e.g., blue for cold, red for hot). The message is displayed for 15 seconds and scrolls across the screen."
},
"human_like": "Updates the AWTRIX display with current weather information every 10 minutes or when the weather data changes.",
"complexity": "medium"
}
},
{
"id": "awtrix_glitch_cube_alert",
"result": {
"structured": "TRIGGER: When the time pattern matches every 3 minutes OR When current persona selector [input_select.current_persona] changes state OR When daily conversations counter [counter.daily_conversations] changes state. CONDITIONS: None. ACTIONS: Send a custom app notification to awtrix device [device_id: ac07cb1bceee39dce3af75aa6c6d784c] using the app 'hey_glitch' with the text '🎉 HEY GLITCH CUBE! 🎉', a dynamic icon based on the state of current persona selector [input_select.current_persona] (icon 2022 for 'buddy', 7956 for 'jax', 7919 for 'lomi', 7982 for 'zorp', else 7786), rainbow effect enabled, 'BlinkyRainbow' animation, duration of 8 seconds, scroll speed 100, and center alignment disabled.",
"natural_language": {
"trigger": "The automation triggers every 3 minutes, or whenever the current persona selector [input_select.current_persona] changes, or whenever the daily conversations counter [counter.daily_conversations] changes.",
"conditions": "There are no conditions that must be met for the action to run.",
"action": "Sends a fun animated notification to the AWTRIX device [device_id: ac07cb1bceee39dce3af75aa6c6d784c] displaying the message '🎉 HEY GLITCH CUBE! 🎉'. The icon shown changes based on the selected persona, and the notification uses a rainbow color effect with a 'BlinkyRainbow' animation, lasting for 8 seconds."
},
"human_like": "Sends a cheerful 'HEY GLITCH CUBE' notification to the AWTRIX display every few minutes or when certain system states change, with a persona-specific icon.",
"complexity": "medium"
}
},
{
"id": "awtrix_system_status",
"result": {
"structured": "TRIGGER: When current persona selector [input_select.current_persona] changes state OR When daily conversations counter [counter.daily_conversations] changes state OR When the system time matches a pattern (every 15 minutes). CONDITIONS: None. ACTIONS: Send a custom app notification to awtrix device [ac07cb1bceee39dce3af75aa6c6d784c] with app name 'status'. The notification text displays the uppercase value of current persona selector [input_select.current_persona] and the state of daily conversations counter [counter.daily_conversations] followed by 'CHATS'. The icon and color are selected based on the value of current persona selector [input_select.current_persona]. The notification lasts for 15 seconds, scrolls at speed 80, and is not centered.",
"natural_language": {
"trigger": "The automation triggers whenever the selected persona changes, when the daily conversation count changes, or every 15 minutes on the clock.",
"conditions": "There are no conditions that must be met for the action to run.",
"action": "Sends a status notification to the AWTRIX device [ac07cb1bceee39dce3af75aa6c6d784c]. The message shows the current persona in uppercase and the number of daily chats. The icon and color of the notification change depending on which persona is selected. The notification is displayed for 15 seconds and scrolls across the screen."
},
"human_like": "Updates the AWTRIX display every 15 minutes or when the persona or chat count changes, showing the current AI persona and the number of conversations for the day.",
"complexity": "medium"
}
},
{
"id": "awtrix_manual_hey_glitch",
"result": {
"structured": "TRIGGER: When cycle persona button [input_button.cycle_persona] is pressed. CONDITIONS: None. ACTIONS: Send a custom app command to awtrix device [device_id: ac07cb1bceee39dce3af75aa6c6d784c] to display the 'hey_glitch' app with the text '🚨 HEY GLITCH CUBE! 🚨 PERSONA SWITCH!', icon 7982, rainbow effect enabled, BlinkyRainbow animation, for a duration of 10 seconds, with a scroll speed of 120, and text not centered.",
"natural_language": {
"trigger": "Whenever the cycle persona button [input_button.cycle_persona] is pressed.",
"conditions": "There are no conditions that must be met.",
"action": "Sends a command to the awtrix device [device_id: ac07cb1bceee39dce3af75aa6c6d784c] to show a custom alert. The alert displays the message '🚨 HEY GLITCH CUBE! 🚨 PERSONA SWITCH!' with a specific icon, rainbow colors, a blinking rainbow animation, for 10 seconds, and the text scrolls at a speed of 120."
},
"human_like": "Displays a flashing 'HEY GLITCH CUBE' alert on the AWTRIX screen when the persona cycle button is pressed.",
"complexity": "low"
}
},
{
"id": "awtrix_clear_apps",
"result": {
"structured": "TRIGGER: When maintenance mode [input_boolean.maintenance_mode] turns on. CONDITIONS: None. ACTIONS: Clear the 'location' custom app on awtrix device [device_id: ac07cb1bceee39dce3af75aa6c6d784c] AND clear the 'weather' custom app on awtrix device [device_id: ac07cb1bceee39dce3af75aa6c6d784c] AND clear the 'hey_glitch' custom app on awtrix device [device_id: ac07cb1bceee39dce3af75aa6c6d784c] AND clear the 'status' custom app on awtrix device [device_id: ac07cb1bceee39dce3af75aa6c6d784c].",
"natural_language": {
"trigger": "When the maintenance mode [input_boolean.maintenance_mode] is switched on.",
"conditions": "There are no conditions for this automation.",
"action": "Clears all custom applications from the AWTRIX device [device_id: ac07cb1bceee39dce3af75aa6c6d784c] by sending empty text commands to the 'location', 'weather', 'hey_glitch', and 'status' apps."
},
"human_like": "Clears all custom apps from the AWTRIX display when maintenance mode is enabled.",
"complexity": "low"
}
},
{
"id": "cube_proactive_bored",
"result": {
"structured": "TRIGGER: When living room motion [binary_sensor.living_room_motion] becomes active (on). CONDITIONS: The time elapsed since the last conversation time [conversation.last_conversation_time] is greater than 1200 seconds (20 minutes). ACTIONS: Start a conversation with square voice satellite [assist_satellite.square_voice] using a proactive message indicating motion was detected after a period of inactivity and an extra system prompt to be engaging and offer help.",
"natural_language": {
"trigger": "When motion is detected in the living room, as reported by the living room motion [binary_sensor.living_room_motion] sensor.",
"conditions": "If it has been more than 20 minutes since the last conversation, as tracked by the last conversation time [conversation.last_conversation_time] sensor.",
"action": "Initiates a proactive conversation with the square voice satellite [assist_satellite.square_voice] in the living room. The conversation starts with a message noting the motion detection and the duration of inactivity, and the assistant is prompted to be engaging and offer help with activities or entertainment."
},
"human_like": "The system proactively starts a friendly conversation in the living room when motion is detected after a long period of silence, offering help or entertainment.",
"complexity": "medium"
}
},
{
"id": "cube_proactive_lonely",
"result": {
"structured": "TRIGGER: When the time pattern matches every 30 minutes. CONDITIONS: (user person [person.user] is home) AND (The time elapsed since the last conversation time [conversation.last_conversation_time] is greater than 3600 seconds). ACTIONS: Start a conversation on square voice satellite [assist_satellite.square_voice] with a proactive message indicating a loneliness check and an extra system prompt to be friendly and offer companionship.",
"natural_language": {
"trigger": "The automation triggers every 30 minutes.",
"conditions": "The user person [person.user] must be at home, and more than one hour (3600 seconds) must have passed since the last recorded conversation time [conversation.last_conversation_time].",
"action": "Initiates a proactive conversation on the square voice satellite [assist_satellite.square_voice], stating that the user is home but hasn't interacted for a calculated number of minutes, and prompts the assistant to be friendly and offer companionship or suggest activities."
},
"human_like": "Checks in with the user if they are home and haven't had a conversation for over an hour, offering friendly companionship.",
"complexity": "medium"
}
},
{
"id": "cube_proactive_weather_alert",
"result": {
"structured": "TRIGGER: When home weather [weather.home] condition attribute changes to rainy. CONDITIONS: None. ACTIONS: Start a conversation with square voice satellite [assist_satellite.square_voice] using a proactive message about the weather change and an extra system prompt to inform the user about potential impacts or suggestions.",
"natural_language": {
"trigger": "When the weather condition reported by home weather [weather.home] changes to rainy.",
"conditions": "There are no additional conditions that must be met.",
"action": "Initiates a proactive conversation on the square voice satellite [assist_satellite.square_voice], announcing the weather change and prompting the assistant to inform the user about potential impacts or suggestions related to the new rainy conditions."
},
"human_like": "Proactively alerts the user via voice when the weather changes to rainy, prompting the assistant to provide relevant information.",
"complexity": "low"
}
}
]