mirror of
https://github.com/CCOSTAN/Home-AssistantConfig.git
synced 2026-04-24 00:57:48 +00:00
Refine climate targets and docker outage monitoring
This commit is contained in:
@@ -45,7 +45,7 @@ Live collection of plug-and-play Home Assistant packages. Each YAML file in this
|
||||
| [lightning.yaml](lightning.yaml) | Blitzortung lightning counter monitoring with snoozeable push actions. | `sensor.blitzortung_lightning_counter`, `input_boolean.snooze_lightning`, notify engine actions |
|
||||
| [logbook_activity_feed.yaml](logbook_activity_feed.yaml) | Dummy `sensor.activity_feed` + helper to write clean Activity entries (Issue #1550). | `sensor.activity_feed`, `script.send_to_logbook` |
|
||||
| [mariadb_monitoring.yaml](mariadb_monitoring.yaml) | MariaDB health sensors and Lovelace dashboard snippet for recorder stats. | `sensor.mariadb_status`, `sensor.database_size` |
|
||||
| [docker_infrastructure.yaml](docker_infrastructure.yaml) | Docker host patching telemetry + container/stack Repairs automation, 20-minute Joanna escalation for persistent container outages, and weekly scheduled prune actions across docker_10/14/17/69. | `sensor.docker_*_apt_status`, `binary_sensor.*_stack_status`, `sensor.docker_stacks_down_count`, `repairs.create`, `script.joanna_dispatch` |
|
||||
| [docker_infrastructure.yaml](docker_infrastructure.yaml) | Docker host patching telemetry + container/stack Repairs automation, 20-minute Joanna escalation for persistent container outages using stable configured monitor membership, and weekly scheduled prune actions across docker_10/14/17/69. | `sensor.docker_*_apt_status`, `binary_sensor.*_stack_status`, `sensor.docker_stacks_down_count`, `repairs.create`, `script.joanna_dispatch` |
|
||||
| [github_watched_repo_scout.yaml](github_watched_repo_scout.yaml) | Nightly Joanna dispatch that reviews unread notifications from watched GitHub repos, recommends HA-config ideas, refreshes strong-candidate issues, and marks processed watched-repo notifications read. | `automation.github_watched_repo_scout_nightly`, `script.joanna_dispatch`, `script.send_to_logbook` |
|
||||
| [proxmox.yaml](proxmox.yaml) | Proxmox runtime and disk pressure monitoring with Repairs for node degradations plus nightly Frigate reboot. | `binary_sensor.proxmox*_runtime_healthy`, `sensor.proxmox*_disk_used_percentage`, `repairs.create`, `button.qemu_docker2_101_reboot` |
|
||||
| [infrastructure_observability.yaml](infrastructure_observability.yaml) | Normalized WAN/DNS/backup/domain/cert health + website uptime/latency SLO signals for Infrastructure dashboards. | `binary_sensor.infra_website_uptime_slo_breach`, `binary_sensor.infra_website_latency_degraded`, `binary_sensor.infra_*` |
|
||||
@@ -73,7 +73,7 @@ Live collection of plug-and-play Home Assistant packages. Each YAML file in this
|
||||
|
||||
### Nest climate control
|
||||
- Logic lives in [climate.yaml](climate.yaml) and centralizes downstairs/upstairs Nest schedules, grid-aware guardrails, humidity pulses, and presence/weather-based targets.
|
||||
- Shared script keeps targets consistent: away → eco, home + >92°F → 78°F, home default → 80°F. Grid-down conditions pause non-essential cool-downs.
|
||||
- Shared script keeps daytime targets consistent: away → eco, home + >92°F → 78°F, home default → 80°F. Downstairs bedtime cooling now stays dynamic: outside >80°F → 77°F, 76-79°F → 79°F, below 76°F → leave the current target alone. Grid-down conditions pause non-essential cool-downs.
|
||||

|
||||
|
||||
### Dreame vacuum automations
|
||||
|
||||
@@ -341,7 +341,7 @@ automation:
|
||||
topic: "CLIMATE"
|
||||
message: "Upstairs target temp corrected to 78F (guardrail)."
|
||||
|
||||
- alias: Set Downstairs to 77 When Both in Bed
|
||||
- alias: Set Downstairs Bedtime Target When Both in Bed
|
||||
id: set_downstairs_nest_77_both_in_bed
|
||||
trigger:
|
||||
- platform: state
|
||||
@@ -363,10 +363,26 @@ automation:
|
||||
entity_id: sun.sun
|
||||
state: 'below_horizon'
|
||||
action:
|
||||
- service: climate.set_temperature
|
||||
data:
|
||||
entity_id: climate.downstairs
|
||||
temperature: 77
|
||||
- choose:
|
||||
- conditions:
|
||||
- condition: numeric_state
|
||||
entity_id: sensor.pirateweather_temperature
|
||||
above: 80
|
||||
sequence:
|
||||
- service: climate.set_temperature
|
||||
data:
|
||||
entity_id: climate.downstairs
|
||||
temperature: 77
|
||||
- conditions:
|
||||
- condition: numeric_state
|
||||
entity_id: sensor.pirateweather_temperature
|
||||
above: 75
|
||||
below: 80
|
||||
sequence:
|
||||
- service: climate.set_temperature
|
||||
data:
|
||||
entity_id: climate.downstairs
|
||||
temperature: 79
|
||||
|
||||
- alias: 'Set Downstairs Thermostat Daytime Target'
|
||||
id: set_downstairs_thermostat_daytime_target
|
||||
|
||||
@@ -13,6 +13,7 @@
|
||||
# Notes: Container monitoring is dynamic with binary_sensor status preferred over switch state.
|
||||
# Notes: Weekly Joanna reconcile checks discovered container switches vs configured group members.
|
||||
# Notes: Includes Portainer stack status repairs, 20-minute Joanna dispatch for persistent container outages, and scheduled image prune.
|
||||
# Notes: Outage escalation keys off the configured monitored group so host-wide telemetry drops do not fall out of scope before the delayed Joanna dispatch runs.
|
||||
######################################################################
|
||||
|
||||
input_datetime:
|
||||
@@ -616,7 +617,7 @@ script:
|
||||
status_entity_alt: "binary_sensor.{{ container_key }}_status_2"
|
||||
state_entity: "sensor.{{ container_key }}_state"
|
||||
state_entity_alt: "sensor.{{ container_key }}_state_2"
|
||||
monitored_switches: "{{ state_attr('sensor.docker_monitored_switch_inventory', 'entity_id') | default([], true) }}"
|
||||
monitored_switches: "{{ state_attr('switch.docker_monitored_containers', 'entity_id') | default([], true) }}"
|
||||
tracked_container: "{{ switch_entity in monitored_switches or switch_entity_alt in monitored_switches }}"
|
||||
effective_entity: >-
|
||||
{% if expand(status_entity) | count > 0 %}
|
||||
@@ -983,7 +984,7 @@ automation:
|
||||
entity_id: "{{ trigger.event.data.entity_id | default('') }}"
|
||||
old_state: "{{ (trigger.event.data.old_state.state if trigger.event.data.old_state is not none else '') | lower }}"
|
||||
new_state: "{{ (trigger.event.data.new_state.state if trigger.event.data.new_state is not none else '') | lower }}"
|
||||
monitored_switches: "{{ state_attr('sensor.docker_monitored_switch_inventory', 'entity_id') | default([], true) | list }}"
|
||||
monitored_switches: "{{ state_attr('switch.docker_monitored_containers', 'entity_id') | default([], true) | list }}"
|
||||
is_monitored_container_event: >-
|
||||
{% set ent = entity_id %}
|
||||
{% if ent.startswith('switch.') and (ent.endswith('_container') or ent.endswith('_container_2')) %}
|
||||
|
||||
Reference in New Issue
Block a user