123 lines
4.2 KiB
YAML
123 lines
4.2 KiB
YAML
play_80_s_office_room_spotify:
|
||
alias: Play 80's Office Room Spotify
|
||
sequence:
|
||
- action: media_player.play_media
|
||
target:
|
||
device_id: 40424cc65a2eaf52e939d2fc97d61989
|
||
data:
|
||
media:
|
||
media_content_id: play All Out 80s on Spotify on Shuffle
|
||
media_content_type: custom
|
||
metadata: {}
|
||
mode: single
|
||
description: ''
|
||
toggle_nest_fan:
|
||
alias: Toggle Nest Fan
|
||
sequence:
|
||
- choose:
|
||
- conditions:
|
||
- condition: state
|
||
entity_id: sensor.nest_fan_mode_status
|
||
state: 'on'
|
||
sequence:
|
||
- action: climate.set_fan_mode
|
||
target:
|
||
entity_id: climate.living_room_living_room
|
||
data:
|
||
fan_mode: 'off'
|
||
default:
|
||
- action: nest.set_fan_timer
|
||
target:
|
||
entity_id: climate.living_room_living_room
|
||
data:
|
||
duration: 01:00:00
|
||
description: Toggles the Nest fan on for 1 hour or turns it off if already on.
|
||
weather_and_comfort_report:
|
||
alias: Weather and comfort report
|
||
sequence:
|
||
- action: ai_task.generate_data
|
||
data:
|
||
task_name: weather comfort report
|
||
instructions: 'Based on the current conditions:
|
||
|
||
- Outdoor temperature: {{ states(''sensor.outdoor_weather_hilo'') }}°C
|
||
|
||
- Weather condition: {{ states(''weather.forecast_home'') }}
|
||
|
||
- Living Room: {{ states(''sensor.living_room_living_room_temperature'') }}°C
|
||
and Humidity: {{ states(''sensor.living_room_living_room_humidity'') }}%
|
||
|
||
- Bedroom: {{ states(''sensor.bedroom_nest_temperature_sensor_bedroom_temperature'')
|
||
}}°C
|
||
|
||
- Basement: {{ states(''sensor.basement_nest_temperature_sensor_basement_temperature'')
|
||
}}°C
|
||
|
||
- Leo''s Room: {{ states(''sensor.leo_room_nest_temperature_sensor_leo_room_temperature'')
|
||
}}°C
|
||
|
||
- Seraphine''s Room: {{ states(''sensor.seraphine_room_nest_temperature_sensor_seraphine_room_temperature'')
|
||
}}°C
|
||
|
||
|
||
Generate a funny weather description and provide a funny assessment of the indoor
|
||
comfort level across the different zones of the house. Make sure it is funny.
|
||
Also, Seraphine is my daughter and Leo is my son. The Basement is my office.
|
||
|
||
'
|
||
structure:
|
||
weather_description:
|
||
description: A humorous description of the current weather outside
|
||
required: true
|
||
selector:
|
||
text: {}
|
||
indoor_comfort:
|
||
description: Overall assessment of how comfortable it is inside compared
|
||
to outside
|
||
required: true
|
||
selector:
|
||
text: {}
|
||
zone_breakdown:
|
||
description: A detailed summary detailing if any specific rooms (like the
|
||
bedroom or basement) are too hot, cold, or perfect
|
||
required: true
|
||
selector:
|
||
text: {}
|
||
response_variable: comfort_report
|
||
- action: notify.persistent_notification
|
||
data:
|
||
title: "\U0001F3E0 Home climate report"
|
||
message: "\U0001F324️ **Weather outside:**\n{{ comfort_report.data.weather_description
|
||
}}\n\n\U0001F6CB️ **Indoor comfort:**\n{{ comfort_report.data.indoor_comfort
|
||
}}\n\n\U0001F4CA **Zone Breakdown:**\n{{ comfort_report.data.zone_breakdown
|
||
}}\n"
|
||
- action: notify.notify
|
||
data:
|
||
title: "\U0001F3E0 Home climate report"
|
||
message: "\U0001F324️ **Weather outside:**\n{{ comfort_report.data.weather_description
|
||
}}\n\n\U0001F6CB️ **Indoor comfort:**\n{{ comfort_report.data.indoor_comfort
|
||
}}\n\n\U0001F4CA **Zone Breakdown:**\n{{ comfort_report.data.zone_breakdown
|
||
}}"
|
||
dynamic_alexa_spotify_player:
|
||
alias: Dynamic Alexa Spotify Player
|
||
sequence:
|
||
- action: media_player.play_media
|
||
target:
|
||
entity_id: '{{ states(''input_select.alexa_target_device'') }}'
|
||
data:
|
||
media:
|
||
media_content_id: play {{ states('input_select.alexa_playlist') }}
|
||
media_content_type: custom
|
||
metadata: {}
|
||
mode: single
|
||
description: Dynamically plays the selected helper playlist on the selected Echo
|
||
speaker.
|
||
stop_alexa_music:
|
||
alias: Stop Alexa Music
|
||
sequence:
|
||
- action: media_player.media_stop
|
||
target:
|
||
entity_id: '{{ states(''input_select.alexa_target_device'') }}'
|
||
mode: single
|
||
description: Stops playback on the selected Echo speaker.
|