mirror of
https://github.com/CCOSTAN/Home-AssistantConfig.git
synced 2026-06-19 22:11:30 +00:00
fix(garage): reuse arrival door-open helper
This commit is contained in:
@@ -42,7 +42,7 @@ Live collection of plug-and-play Home Assistant packages. Each YAML file in this
|
||||
| [alexa_media_player.yaml](alexa_media_player.yaml) | Alexa Media helper sensors including stable bedroom wake-alarm wrappers for Carlo and Stacey plus a combined next-wake view. | `sensor.last_alexa`, `sensor.bedroom_next_wake_alarm`, `sensor.bedroom_next_wake_alarm_source`, `binary_sensor.bedroom_next_wake_alarm_active` |
|
||||
| [fridge.yaml](fridge.yaml) | SmartThinQ fridge monitoring with 6-minute raw door-open alerts plus fridge/freezer status announcements. | `binary_sensor.refrigerator_door_open`, `script.notify_engine`, `script.speech_engine` |
|
||||
| [climate.yaml](climate.yaml) | Nest climate schedules plus runtime-based AC filter reminders with snooze and filter-changed actions. | `input_datetime.*_filter_snooze_until`, `script.notify_engine_two_button`, mobile app action events |
|
||||
| [garadget.yaml](garadget.yaml) | MQTT-based garage door control plus arrival helpers, entry prompts, wind checks, nighttime reminders, and camera context. | `cover.large_garage_door`, `cover.small_garage_door`, `group.garage_doors`, `sensor.garadget_reflection` |
|
||||
| [garadget.yaml](garadget.yaml) | MQTT-based garage door control plus arrival helpers, entry prompts, wind checks, nighttime reminders, and camera context. | `cover.large_garage_door`, `cover.small_garage_door`, `group.garage_doors`, `script.open_large_garage_door_if_ready` |
|
||||
| [august.yaml](august.yaml) | Front-door August smart lock with Alexa Show camera pop-up when unlocked. | `lock.front_door`, media_player actions for front doorbell camera |
|
||||
| [holiday.yaml](holiday.yaml) | REST-driven US holiday + flag sensors that color scenes and exterior lighting. | `sensor.holiday`, `sensor.flag`, JSON feed at `config/json_data/holidays.json` |
|
||||
| [lightning.yaml](lightning.yaml) | Blitzortung lightning counter monitoring with snoozeable push actions. | `sensor.blitzortung_lightning_counter`, `input_boolean.snooze_lightning`, notify engine actions |
|
||||
@@ -74,7 +74,7 @@ Live collection of plug-and-play Home Assistant packages. Each YAML file in this
|
||||
| [finance.yaml](finance.yaml) | Yahoo Finance sensor bundle for portfolio glances and Lovelace cards. | `sensor.tsla`, `sensor.aapl`, `sensor.amzn`, `sensor.msft` |
|
||||
|
||||
### Garadget automations
|
||||
- Logic lives in [garadget.yaml](garadget.yaml): auto-open on arrival, entry helper prompt (unlock front door or open garage), kid-specific trusted shortcuts, wind checks, nightly open-door reminders, and camera pop-ups.
|
||||
- Logic lives in [garadget.yaml](garadget.yaml): auto-open on arrival, entry helper prompt (unlock front door or open garage), trusted-family shortcuts, wind checks, nightly open-door reminders, and camera pop-ups.
|
||||
- MQTT-based covers for large/small doors; notifications and speech wired to the house notify/speech engines.
|
||||
- Video companion: [Garage automation walkthrough](https://youtu.be/wFO0H5zgnzk) and [companion blog post](https://www.vcloudinfo.com/2026/05/home-assistant-garage-automations-arrival-alerts-tesla.html).
|
||||

|
||||
|
||||
@@ -19,7 +19,8 @@
|
||||
# Notes: Teslamate and crystalsoftwashsolutions are live services and should remain in the monitored group when their discovery switches are present.
|
||||
# Notes: Treat telemetry reconnects from unavailable/unknown to a concrete stopped state as actionable outages.
|
||||
# Notes: Infra Info was removed; BearClaw Admin is the planning snapshot surface.
|
||||
# Notes: codex_appliance moved to a dedicated VM, but the legacy container switches still surface in HA and remain in the monitored group until the entities are retired.
|
||||
# Notes: codex_appliance moved to a dedicated VM; keep the standard codex_appliance switches and retire the legacy hashed discovery entity when it disappears.
|
||||
# Notes: Paige's Bookshelf is a live monitored service and should remain in the group when its discovery switch is present.
|
||||
# Notes: Retired repair cleanup clears old codex_appliance and hashed dozzle Portainer repair IDs.
|
||||
######################################################################
|
||||
|
||||
@@ -84,7 +85,6 @@ switch:
|
||||
- switch.cloudflared_kch_container_2
|
||||
- switch.cloudflared_wp_container
|
||||
- switch.cloudflared_wp_container_2
|
||||
- switch.63a0a831eb7d_codex_appliance_container
|
||||
- switch.college_budget_app_container
|
||||
- switch.college_budget_app_container_2
|
||||
- switch.cruise_tracker_container
|
||||
@@ -137,6 +137,7 @@ switch:
|
||||
- switch.nebula_sync_container_2
|
||||
- switch.onenote_indexer_container
|
||||
- switch.onenote_indexer_container_2
|
||||
- switch.paiges_bookshelf_container
|
||||
- switch.panel_notes_container
|
||||
- switch.panel_notes_container_2
|
||||
- switch.pihole_container
|
||||
|
||||
@@ -84,6 +84,42 @@ group:
|
||||
- cover.large_garage_door
|
||||
- cover.small_garage_door
|
||||
|
||||
script:
|
||||
open_large_garage_door_if_ready:
|
||||
alias: Open Large Garage Door If Ready
|
||||
mode: single
|
||||
fields:
|
||||
person_name:
|
||||
description: Optional person name for arrival logging.
|
||||
example: Carlo
|
||||
sequence:
|
||||
- condition: state
|
||||
entity_id: cover.large_garage_door
|
||||
state: 'closed'
|
||||
- condition: state
|
||||
entity_id: group.family
|
||||
state: 'home'
|
||||
# - condition: state
|
||||
# entity_id: group.bed
|
||||
# state: 'off'
|
||||
- service: cover.open_cover
|
||||
target:
|
||||
entity_id: cover.large_garage_door
|
||||
- choose:
|
||||
- conditions:
|
||||
- condition: template
|
||||
value_template: "{{ person_name | default('', true) | trim != '' }}"
|
||||
sequence:
|
||||
- service: input_text.set_value
|
||||
target:
|
||||
entity_id: input_text.last_person_home
|
||||
data:
|
||||
value: "{{ person_name }}"
|
||||
- service: script.send_to_logbook
|
||||
data:
|
||||
topic: "GARAGE"
|
||||
message: "Large Garage was auto-opened for {{ person_name }}."
|
||||
|
||||
automation:
|
||||
|
||||
######################################################################
|
||||
@@ -99,29 +135,10 @@ automation:
|
||||
- person.stacey
|
||||
from: 'driving'
|
||||
to: 'home'
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: cover.large_garage_door
|
||||
state: 'closed'
|
||||
# - condition: state
|
||||
# entity_id: group.bed
|
||||
# state: 'off'
|
||||
- condition: state
|
||||
entity_id: group.family
|
||||
state: 'home'
|
||||
action:
|
||||
- service: cover.open_cover
|
||||
target:
|
||||
entity_id: cover.large_garage_door
|
||||
- service: input_text.set_value
|
||||
target:
|
||||
entity_id: input_text.last_person_home
|
||||
- service: script.open_large_garage_door_if_ready
|
||||
data:
|
||||
value: "{{ trigger.to_state.entity_id.split('.')[1] }}"
|
||||
- service: script.send_to_logbook
|
||||
data:
|
||||
topic: "GARAGE"
|
||||
message: "Large Garage was auto-opened for {{ states('input_text.last_person_home') }}."
|
||||
person_name: "{{ trigger.to_state.entity_id.split('.')[1] }}"
|
||||
|
||||
######################################################################
|
||||
## Entry helper prompt after arrival if auto-open didn’t fire.
|
||||
@@ -176,16 +193,8 @@ automation:
|
||||
event_type: mobile_app_notification_action
|
||||
event_data:
|
||||
action: OPEN_LARGE_GARAGE
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: cover.large_garage_door
|
||||
state: 'closed'
|
||||
- condition: state
|
||||
entity_id: group.family
|
||||
state: 'home'
|
||||
action:
|
||||
- service: cover.open_cover
|
||||
entity_id: cover.large_garage_door
|
||||
- service: script.open_large_garage_door_if_ready
|
||||
|
||||
- alias: 'Unlock Front Door Action'
|
||||
id: c3106db1-f2c4-4800-b1a3-76d440228600
|
||||
@@ -199,9 +208,9 @@ automation:
|
||||
entity_id: lock.front_door
|
||||
|
||||
######################################################################
|
||||
## Auto-unlock front door when Paige or Justin arrive from driving
|
||||
## Auto-unlock front door when Paige, Justin, or Joyce arrive from driving
|
||||
######################################################################
|
||||
- alias: 'Auto Unlock Front Door on Arrival (Paige/Justin)'
|
||||
- alias: 'Auto Unlock Front Door on Arrival (Paige/Justin/Joyce)'
|
||||
id: 8f4f5f6a-9c2d-4f4c-9f6c-7d5e5b2e2c3d
|
||||
mode: single
|
||||
trigger:
|
||||
@@ -209,8 +218,12 @@ automation:
|
||||
entity_id:
|
||||
- person.paige
|
||||
- person.justin
|
||||
- device_tracker.life360_joyce_ruskin
|
||||
from: 'driving'
|
||||
to: 'home'
|
||||
variables:
|
||||
arriving_person: >-
|
||||
{{ (trigger.to_state.name | replace('Life360 ', '')).split(' ')[0] }}
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: lock.front_door
|
||||
@@ -222,13 +235,13 @@ automation:
|
||||
- service: script.notify_engine
|
||||
data:
|
||||
title: "Front door auto-unlocked"
|
||||
value1: "Unlocking for {{ trigger.to_state.name }} arriving from driving."
|
||||
value1: "Unlocking for {{ arriving_person }} arriving from driving."
|
||||
who: "family"
|
||||
group: "Welcome_Home"
|
||||
- service: script.send_to_logbook
|
||||
data:
|
||||
topic: "DOORS"
|
||||
message: "Front door auto-unlocked for {{ trigger.to_state.name }} arriving from driving."
|
||||
message: "Front door auto-unlocked for {{ arriving_person }} arriving from driving."
|
||||
|
||||
|
||||
######################################################################
|
||||
|
||||
Reference in New Issue
Block a user