Home-AssistantConfig/Misc Stuff.md

185 lines
5.1 KiB
Markdown
Raw Normal View History

2016-10-19 20:56:00 +00:00
https://i.imgur.com/xy10yI1.png
2016-10-11 22:15:08 +00:00
- alias: 'Get Random Time'
trigger:
platform: time
after: '21:00:00'
action:
- service: input_slider.select_value
data_template:
entity_id: input_slider.hour
value: '{{ (range(22, 23) | random) }}'
- service: input_slider.select_value
data_template:
entity_id: input_slider.random_minute
value: '{{ (range(30, 45) | random) }}'
2016-10-11 22:15:08 +00:00
Then simply use that in your light turn off automation:
2016-10-11 22:15:08 +00:00
- alias: 'Turn lights off'
trigger:
platform: template
value_template: '{{ now.hour == (states.input_slider.random_hour.state | int) and now.minute == (states.input_slider.random_minute.state | int) }}'
action:
- service: light.turn_off
data:
entity_id: light.hue_color_lamp_1
2016-10-12 00:45:09 +00:00
- automation:
alias: Random GLeft
initial_state: False
hide_entity: False
trigger:
platform: time
seconds: '/5'
action:
service: homeassistant.turn_on
entity_id:
- light.gright
data:
effect: random
transition: 1
brightness: 255
2016-11-19 18:45:39 +00:00
- platform: template
sensors:
front_door_clean:
value_template: '{% if is_state("binary_sensor.front_door", "on") %}Open{% else %}Closed{% endif %}'
friendly_name: 'Front Door'
entity_id: binary_sensor.front_door
2016-11-19 18:45:39 +00:00
# Template Binary Sensors
platform: template
sensors:
flood_sensor:
value_template: >-
{% if states.sensor.everspring_st812_flood_detector_flood_2_5.state == '255' %}
'on'
{% elif states.sensor.everspring_st812_flood_detector_flood_2_5.state == '0' %}
'off'
{% else %}
n/a
{% endif %}
Using Slider_Booleans to store data and restore it after.
https://community.home-assistant.io/t/brighten-front-porch-lights-then-return-to-recorded-dim-level/6641
input_slider:
porch_brightness:
name: Front Porch Brightness
initial: 25
min: 0
max: 255
step: 1
script:
record_front_porch:
alias: Record front porch status to slider
sequence:
- service: input_slider.select_value
data_template:
entity_id: input_slider.porch_brightness
value: '{% if states.light.front_porch_light_level_32_0.state == "off" %}0{% else %}{{states.light.front_porch_light_level_32_0.attributes.brightness}}{% endif %}'
return_front_porch:
alias: Return front porch to recorded value
sequence:
- service: light.turn_on
entity_id: light.front_porch_light_level_32_0
data_template:
brightness: '{{states.input_slider.porch_brightness.state | int}}'
- service: input_boolean.turn_off
entity_id: input_boolean.front_porch_motion_light_active
return_front_porch_delayed:
alias: Wait 5 min and then return front porch to recorded value
sequence:
- delay:
minutes: 5
- service: script.return_front_porch
automation:
- alias: Motion ON front porch
trigger:
# if motion is ON - this is triggered via IFTTT and Arlo
- platform: state
entity_id: input_boolean.motion_front_porch
to: 'on'
from: 'off'
action:
# some notifications
- service: notify.scott_notifier
data:
message: "Motion front porch"
title: "Front Porch"
data:
priority: 0
- service: notify.kodi
data:
message: "Motion front porch"
title: "Front Porch"
# only at night
- condition: state
entity_id: sun.sun
state: 'below_horizon'
#remember the state of front porch
- service: script.record_front_porch
# turn the light on
- service: light.turn_on
entity_id: light.front_porch_light_level_32_0
data:
brightness: 255
# script with a delay that'll reset light in 5 min
- service: script.return_front_porch_delayed
Easy Garbage Automation
- alias: brown garbage
trigger:
platform: time
hours: 20
minutes: 00
seconds: 0
condition:
condition: time
# At least one of the following is required.
weekday:
- mon
- thu
action:
service: notify.thorsten
data:
message: 'Put the brown garbage out!'
- alias: blue garbage
trigger:
platform: time
hours: 20
minutes: 00
seconds: 0
condition:
condition: time
# At least one of the following is required.
weekday:
- tue
action:
service: notify.thorsten
data:
2016-12-04 21:32:59 +00:00
message: 'Put the blue garbage out!'
{%- if now().month in [01, 11, 12] -%} Yes {%- else -%} NO {%- endif %}
binary_sensor:
platform: command_line
name: Daughter Laptop
command: ping -W 1 -c 1 192.168.0.101 > /dev/null 2>&1 && echo success || echo fail
sensor_class: connectivity
payload_on: "success"
payload_off: "fail"