Compare commits

...

11 Commits

Author SHA1 Message Date
github-actions[bot]
a9c5e52671 Update HA version badge to 2025.7.2 2025-07-22 18:14:51 +00:00
Carlo Costanzo
4d93cc691c More and More Logbook filtering. 2025-07-22 14:14:25 -04:00
github-actions[bot]
3b38233914 Update HA version badge to 2025.7.2 2025-07-22 16:25:30 +00:00
Carlo Costanzo
5363853618 July_2025 (#1525)
* Update HA version to 2025.7.2, remove deprecated Conico camera configuration, and add new automation for auto-opening the large garage door upon arrival. Enhance garage camera integration with Alexa Media Player for better home monitoring.

* Refactor automation scripts to enhance garbage day announcements and thermostat control. Removed deprecated responsibilities automation and updated related references in speech engine and templates. Added new automation for setting thermostats to eco mode when away.

* Add notification for thermostat eco mode trigger in away.yaml, remove unused media player from media_players.yaml, and comment out unused pool deck switch in switches.yaml. fixing Spook Findings!

* Enhance stats.yaml by adding new sensors for GitHub open issues and stargazers, updating existing sensor configurations for better measurement clarity. Adjust unit_of_measurement and state_class for improved data representation.

* Refactor stats.yaml to unify unit_of_measurement for sensors, changing from specific labels to a generic 'count' for improved consistency and clarity in data representation.

* Update logger and recorder trying to get the logbook a little more useful by excluding a LOT of stuff.  Modified greeting messages in speech templates to address individuals specifically when home.

* Add automation for fridge door open notification in fridge.yaml, integrating ThinLg HACS for enhanced sensor support. This automation alerts family members if the fridge door remains open for over 5 minutes, ensuring timely action to prevent temperature issues. ThinQ LG integration #1165

* Updating the header so AI can read the requirements easier.

* Refactor garage.yaml automation to enhance notifications for garage door operations. Removed unnecessary conditions and added functionality to track the last person home, updating notification details and camera entity for improved monitoring.

* Refactor climate.yaml automation to improve the condition for setting the downstairs Nest temperature. Changed trigger to use a group state for better reliability and added a numeric state condition for temperature checks, ensuring more accurate automation behavior.

* Update configuration.yaml and recorder.yaml to refine logbook and recorder exclusions. Added new entity globs for sensors and updated entities list for improved data management and monitoring. Removed deprecated sensor references for better clarity.  REALLY trying to tighten this up a LOT.

* Add automation to notify Carlo of Proxmox updates in proxmox. This automation triggers notifications when updates are available for Proxmox hosts,.

* Refactor logbook configuration in configuration.yaml to include external logbook.yaml for improved organization and clarity. Removed extensive entity exclusions to streamline logbook entries.

* Update logbook.yaml and recorder.yaml to refine entity exclusions and enhance data management. Added new sensor exclusions in recorder.yaml and standardized unit_of_measurement and icon_template in stats.yaml for improved clarity and consistency.

* Update logbook.yaml to enhance entity tracking by adding new sensors and reorganizing existing entries for improved clarity and data management. Removed some deprecated sensor references to streamline the configuration.

* Merge branch 'master' into July_2025
2025-07-22 12:25:12 -04:00
github-actions[bot]
fafaa32294 Update HA version badge to 2025.7.2 2025-07-22 16:18:16 +00:00
Carlo Costanzo
389a3c348f Dupliate merge or something. 2025-07-22 12:17:51 -04:00
github-actions[bot]
e87e4e90fa Update HA version badge to 2025.7.2 2025-07-22 16:10:47 +00:00
Carlo Costanzo
9e208fca4e Update logger and recorder trying to get the logbook a little more useful by excluding a LOT of stuff. Modified greeting messages in speech templates to address individuals specifically when home. 2025-07-22 12:10:14 -04:00
Carlo Costanzo
f3a4c5087b Update HA version to 2025.7.2, remove deprecated Conico camera configuration, and add new automation for auto-opening the large garage door upon arrival. Enhance garage camera integration with Alexa Media Player for better home monitoring. 2025-07-22 12:05:14 -04:00
github-actions[bot]
833143e445 Update HA version badge to 2025.7.2 2025-07-22 16:00:57 +00:00
Carlo Costanzo
f1fc8e8012 July_2025 (#1524) 2025-07-22 12:00:39 -04:00
29 changed files with 445 additions and 394 deletions

View File

@@ -259,10 +259,8 @@ Defining Guest Mode - /config/input_boolean/home_modes.yaml#L1-L4</a><br>
Using Guest mode as a condition - /config/script/speech_engine.yaml#L26-L28</a><br>
<p></details>
<details>
<summary>Track garbage days and chore days for the kids. Voice reminders and Alexa intergration/request for info.'</summary><p align="center">
<summary>Track garbage days. Voice reminders and Alexa intergration/request for info.'</summary><p align="center">
<a href=https://github.com/CCOSTAN/Home-AssistantConfig/blob/master/config/input_boolean/hidden_booleans.yaml#L5-L7>
Defining responsibilities trigger - /config/input_boolean/hidden_booleans.yaml#L5-L7</a><br>
<a href=https://github.com/CCOSTAN/Home-AssistantConfig/blob/master/config/script/speech_engine.yaml#L56-L68>
Responsibility Speech Code - /config/script/speech_engine.yaml#L56-L68</a><br>
<p></details>
<details>

View File

@@ -1 +1 @@
2025.7.1
2025.7.2

View File

@@ -50,7 +50,7 @@
{%- endmacro -%}
{{greeting_sentence(person)}}
call_responsibilities: 1
call_garbage_day: 1
call_no_announcement: 1
call_garage_check: 1
call_window_check: 1

View File

@@ -26,7 +26,7 @@
- service: script.speech_engine
data:
call_inside_weather: 1
call_responsibilities: 1
call_garbage_day: 1
call_outside_weather: 1
call_garage_check: 1
call_window_check: 1

View File

@@ -1,23 +0,0 @@
######################################################################
## Announce when one of the nests kick in
## Announce over all Chromecast Audios
######################################################################
- alias: 'Nest Status'
id: 7812fdaf-a3f8-498b-8f07-28e977e528fe
trigger:
- platform: state
entity_id:
- climate.downstairs
- climate.upstairs
from: 'off'
action:
- service: script.speech_engine
data:
NestStatus: "The {{ trigger.entity_id.split('.')[1].split('_')[0]}} {{ trigger.entity_id.split('.')[1].split('_')[1]}} has now been turned on for {{(trigger.to_state.state)}}."
call_window_check: 1

View File

@@ -1,22 +0,0 @@
#-------------------------------------------
# Responsibilities Announcement
# Description: Triggers a speech announcement for daily responsibilities
#
# Features:
# - Announces garbage day and recycling reminders
# - Triggered by an input_boolean entity
#
# Integration: Uses speech_engine script for announcements
# Follow me on https://www.vcloudinfo.com/click-here
#-------------------------------------------
- alias: 'responsibilities'
id: f39bd8db-a348-4024-a6a6-a3e3c836646c
trigger:
- platform: state
entity_id: input_boolean.responsibilities
to: 'on'
action:
- service: script.speech_engine
data:
call_responsibilities: 1

View File

@@ -41,3 +41,30 @@
entity_id: switch.back_landscaping
# Set thermostats to eco mode when everyone is away
- alias: 'Set Thermostats to Eco When Away'
id: 1e2d3c4b-eco-thermostat-away
mode: single
trigger:
- platform: state
entity_id: group.family
to: 'not_home'
condition:
- condition: state
entity_id: group.family
state: 'not_home'
- condition: state
entity_id: input_boolean.guest_mode
state: 'off'
action:
- service: climate.set_preset_mode
data:
entity_id:
- climate.downstairs
- climate.upstairs
preset_mode: 'eco'
- service: script.notify_engine
data:
title: "Thermostat Eco Mode Triggered"
value1: "DEBUG: Everyone is gone and the Automation was triggered."
who: "carlo"

View File

@@ -28,8 +28,6 @@
- light.main_slider
- light.garage_attic
- light.bedroom_lights
- light.den_2
- light.den1
- light.dinette_lights
- light.dining_room_lights
- light.foyer

View File

@@ -1,49 +0,0 @@
blueprint:
name: Motion-activated Light
domain: automation
source_url: https://github.com/home-assistant/core/blob/dev/homeassistant/components/automation/blueprints/motion_light.yaml
input:
motion_entity:
name: Motion Sensor
selector:
entity:
domain: binary_sensor
device_class: motion
light_target:
name: Light
selector:
target:
entity:
domain: light
no_motion_wait:
name: Wait time
description: Time to wait until the light should be turned off.
default: 120
selector:
number:
min: 0
max: 3600
unit_of_measurement: seconds
# If motion is detected within the delay,
# we restart the script.
mode: restart
max_exceeded: silent
trigger:
platform: state
entity_id: !input motion_entity
from: "off"
to: "on"
action:
- service: light.turn_on
target: !input light_target
- wait_for_trigger:
platform: state
entity_id: !input motion_entity
from: "on"
to: "off"
- delay: !input no_motion_wait
- service: light.turn_off
target: !input light_target

View File

@@ -1,41 +0,0 @@
blueprint:
name: Send notification when a person leaves a zone
domain: automation
source_url: https://github.com/home-assistant/core/blob/dev/homeassistant/components/automation/blueprints/notify_leaving_zone.yaml
input:
person_entity:
name: Person
selector:
entity:
domain: person
zone_entity:
name: Zone
selector:
entity:
domain: zone
notify_device:
name: Device to notify
description: Device needs to run the official Home Assistant app to receive notifications.
selector:
device:
integration: mobile_app
trigger:
platform: state
entity_id: !input person_entity
variables:
zone_entity: !input zone_entity
zone_state: "{{ states[zone_entity].name }}"
person_entity: !input person_entity
person_name: "{{ states[person_entity].name }}"
condition:
condition: template
value_template: "{{ trigger.from_state.state == zone_state and trigger.to_state.state != zone_state }}"
action:
domain: mobile_app
type: notify
device_id: !input notify_device
message: "{{ person_name }} has left {{ zone_state }}"

View File

@@ -1,74 +0,0 @@
blueprint:
name: Confirmable Notification
description: >-
A script that sends an actionable notification with a confirmation before
running the specified action.
domain: script
source_url: https://github.com/home-assistant/core/blob/master/homeassistant/components/script/blueprints/confirmable_notification.yaml
input:
notify_device:
name: Device to notify
description: Device needs to run the official Home Assistant app to receive notifications.
selector:
device:
integration: mobile_app
title:
name: "Title"
description: "The title of the button shown in the notification."
default: ""
selector:
text:
message:
name: "Message"
description: "The message body"
selector:
text:
confirm_text:
name: "Confirmation Text"
description: "Text to show on the confirmation button"
default: "Confirm"
selector:
text:
confirm_action:
name: "Confirmation Action"
description: "Action to run when notification is confirmed"
default: []
selector:
action:
dismiss_text:
name: "Dismiss Text"
description: "Text to show on the dismiss button"
default: "Dismiss"
selector:
text:
dismiss_action:
name: "Dismiss Action"
description: "Action to run when notification is dismissed"
default: []
selector:
action:
mode: restart
sequence:
- alias: "Send notification"
domain: mobile_app
type: notify
device_id: !input notify_device
title: !input title
message: !input message
data:
actions:
- action: "CONFIRM"
title: !input confirm_text
- action: "DISMISS"
title: !input dismiss_text
- alias: "Awaiting response"
wait_for_trigger:
- platform: event
event_type: mobile_app_notification_action
- choose:
- conditions: "{{ wait.trigger.event.data.action == 'CONFIRM' }}"
sequence: !input confirm_action
- conditions: "{{ wait.trigger.event.data.action == 'DISMISS' }}"
sequence: !input dismiss_action

View File

@@ -64,34 +64,7 @@ light: !include light_groups.yaml
ifttt:
key: !secret ifttt_key
logbook:
exclude:
entities:
- automation.detect_lights_and_adjust_the_brightness_when_turned_on_based_on_time
- automation.cuckoo_clock
- binary_sensor.office_motion
- group.garage_doors
- media_player.LivingRoomCC
- py.warnings
- sensor.small_garage_status
- sensor.large_garage_status
- sensor.small_garage_time_in_state
- sensor.large_garage_time_in_state
- sensor.large_garage_wifi_signal_strength
- sensor.small_garage_wifi_signal_strength
- sensor.small_garage_reflection_rate
- sensor.large_garage_reflection_rate
- sensor.pi_hole_ads_blocked_today
- sensor.pi_hole_ads_percentage_blocked_today
- sensor.pi_hole_dns_queries_today
- sensor.time
- sensor.date
- sensor.floorplan_date
- sensor.floorplan_time
- sensor.ha_uptime
- sensor.sleepnumber_carlo_stacey_pressure
- sensor.sleepnumber_carlo_carlo_pressure
logbook: !include logbook.yaml
logger: !include logger.yaml
recorder: !include recorder.yaml

View File

@@ -4,8 +4,6 @@ Interior_Lights:
- group.kitchen_accents
- light.bedroom
- light.bedroom_lights
- light.den_2
- light.den1
- light.dinette_lights
- light.dining_room_lights
- light.foyer

View File

@@ -3,7 +3,6 @@ media_players:
- media_player.livingroomcc
- media_player.living_room_tv
- media_player.living_room_ultra
- media_player.upstairs_living_room
- media_player.bedroom_tablet
- media_player.living_room
- media_player.front_room_flex
@@ -24,6 +23,5 @@ tvs:
- media_player.roku_3810x_923c
- media_player.roku_living_room
- media_player.tv_samsung_q70_series_65
- media_player.upstairs_living_room

View File

@@ -14,7 +14,7 @@ Interior Switches:
- switch.lr_amp
- switch.master_bathroom_accent_1
- switch.master_bathroom_accent_2
- switch.pool_deck
#- switch.pool_deck - Not being used right now
- switch.foyer_outlet
- switch.den_outlet
- switch.living_room_outlet

View File

@@ -1,7 +1,3 @@
home_stats:
name: Home Stats
initial: off
responsibilities:
name: responsibilities
initial: off

42
config/logbook.yaml Normal file
View File

@@ -0,0 +1,42 @@
#-------------------------------------------
# Logbook Configuration
# Description: Settings for the Home Assistant logbook component
# This component is responsible for displaying items in the logbook.
# Follow me on https://www.vcloudinfo.com/click-here
# Original Repo: https://github.com/CCOSTAN/Home-AssistantConfig
#-------------------------------------------
exclude:
entity_globs:
- sensor.*_location
- sensor.*_place
- sensor.*_geocoded_location
- sensor.pirateweather_*
- weather.*
entities:
- automation.cuckoo_clock
- automation.detect_lights_and_adjust_the_brightness_when_turned_on_based_on_time
- binary_sensor.office_motion
- binary_sensor.refrigerator_door_open
- binary_sensor.rheem_wh_running
- group.garage_doors
- media_player.LivingRoomCC
- sensor.date
- sensor.downstairs_ac_cooling_numeric
- sensor.ha_uptime
- sensor.large_garage_reflection_rate
- sensor.large_garage_status
- sensor.large_garage_time_in_state
- sensor.large_garage_wifi_signal_strength
- sensor.pi_hole_ads_blocked_today
- sensor.pi_hole_ads_percentage_blocked_today
- sensor.pi_hole_dns_queries_today
- sensor.rheem_wh_running_state
- sensor.sleepnumber_carlo_carlo_pressure
- sensor.sleepnumber_carlo_stacey_pressure
- sensor.small_garage_reflection_rate
- sensor.small_garage_status
- sensor.small_garage_time_in_state
- sensor.small_garage_wifi_signal_strength
- sensor.time
- sensor.upstairs_ac_cooling_numeric

View File

@@ -14,13 +14,12 @@
default: info
logs:
AIOGitHubAPI: error
aiohttp.access: critical
aiohttp.server: critical
aiounifi: error
custom_components.hacs: error
hacs: error
queueman: error
AIOGitHubAPI: error
homeassistant.core: error
homeassistant.config_entries: error
homeassistant.components.automation: warn
@@ -29,10 +28,14 @@ logs:
homeassistant.components.device_tracker: error
homeassistant.components.discovery: warn
homeassistant.components.feedreader: error
homeassistant.components.history: error
homeassistant.components.http: warn
homeassistant.components.ipp: critical
homeassistant.components.logbook: error
homeassistant.components.media_player: info
homeassistant.components.mqtt: error
homeassistant.components.mqtt.discovery: critical
homeassistant.components.persistent_notification: critical
homeassistant.components.rest.sensor: critical
homeassistant.components.recorder: error
homeassistant.components.sensor.pi_hole: critical
@@ -47,9 +50,11 @@ logs:
homeassistant.helpers.script: info
homeassistant.helpers.entity: critical
homeassistant.loader: warn
homeassistant.components.websocket_api: error
pubnub: critical
py.warnings: error
pyhap.hap_server: warn
queueman: error
urllib3.connectionpool: error
requests.packages.urllib3.connectionpool: critical
root: warn

View File

@@ -12,4 +12,3 @@ sensor:
{{ states.media_player | selectattr('attributes.last_called','eq',True) | map(attribute='entity_id') | first | default('none') }}
#-------------------------------------------

View File

@@ -1,6 +1,8 @@
# --------------------------------------------------
# AC Filterchange runtime tracker
# --------------------------------------------------
######################################################################
## AC related automations
## For more info visit https://www.vcloudinfo.com/click-here
## Contact: @CCOSTAN
######################################################################
input_datetime:
downstairs_last_filter_change:
@@ -118,6 +120,19 @@ automation:
who: "Carlo"
group: "maintenance"
- alias: 'AC Status off Announcement'
id: 7812fdaf-a3f8-498b-8f07-28e977e528fe
trigger:
- platform: state
entity_id:
- climate.downstairs
- climate.upstairs
from: 'off'
action:
- service: script.speech_engine
data:
NestStatus: "The {{ trigger.entity_id.split('.')[1].split('_')[0]}} {{ trigger.entity_id.split('.')[1].split('_')[1]}} has now been turned on for {{(trigger.to_state.state)}}."
call_window_check: 1
- alias: Prevent Upstairs Nest Below 76
id: 7812fdaf-a3f8-498b-8f07-28e977e528ff
@@ -132,3 +147,33 @@ automation:
data:
entity_id: climate.upstairs
temperature: 77
- alias: Set Downstairs Nest to 76 When both in bed
id: set_downstairs_nest_76_both_in_bed
trigger:
- platform: numeric_state
entity_id: climate.downstairs
attribute: temperature
above: 76
- platform: state
entity_id: group.bed
to: 'on'
condition:
- condition: and
conditions:
- condition: state
entity_id: binary_sensor.sleepnumber_carlo_carlo_is_in_bed
state: 'on'
- condition: state
entity_id: binary_sensor.sleepnumber_carlo_stacey_is_in_bed
state: 'on'
- condition: numeric_state
entity_id: climate.downstairs
attribute: temperature
above: 76
action:
- service: climate.set_temperature
data:
entity_id: climate.downstairs
temperature: 76

View File

@@ -1,81 +0,0 @@
#-------------------------------------------
# Conico Cameras Configuration
# Description: Integrates Conico Cameras with Alexa Media Player
# Last Updated: 2023-11-15
#
# Features:
# - Displays garage camera feed on Echo Show devices
# - Displays driveway camera feed when front door opens
# - Triggers based on garage door state and occupancy changes
#
# Hardware:
# - Conico Camera: https://amzn.to/2Kl1eHo
# - Amazon Echo Show devices
#
# Integration: Alexa Media Player
#
# Original Repo: https://github.com/CCOSTAN/Home-AssistantConfig
# Blog Post: https://www.vcloudinfo.com/2019/03/integrating-smart-cameras-with-alexa-echo-shows.html
# Follow me on https://www.vcloudinfo.com/click-here
#-------------------------------------------
automation:
- alias: 'Garage Camera on Alexa Shows'
id: 4373df2a-77f2-4e19-be7c-46c7b27ca583
mode: single
trigger:
- platform: state
entity_id:
- cover.large_garage_door
- cover.small_garage_door
from: 'closed'
to: 'open'
- platform: state
entity_id: binary_sensor.mcu1_gpio12 #interior Garage Doors
from: 'off'
to: 'on'
- platform: state
entity_id:
- person.carlo
- person.stacey
- person.paige
- person.justin
to: 'not_home'
from: 'home'
action:
- choose:
- conditions: "{{ is_state('binary_sensor.sleepnumber_carlo_stacey_is_in_bed','on') }}"
sequence:
- service: media_player.play_media
data:
entity_id: media_player.stacey_bedroom
media_content_id: 'show garage camera from home assistant'
media_content_type: custom
- delay: '00:10:00'
- service: media_player.play_media
data:
entity_id: media_player.stacey_bedroom
media_content_id: 'hide garage camera'
media_content_type: custom
default:
- service: media_player.play_media
target:
entity_id: media_player.kitchen
data:
media_content_id: 'show garage camera from home assistant'
media_content_type: custom
- delay: '00:20:00'
- service: media_player.play_media
target:
entity_id: media_player.kitchen
data:
media_content_id: 'hide garage camera'
media_content_type: custom
- service: script.garage_lights_off

View File

@@ -0,0 +1,38 @@
#-------------------------------------------
# @CCOSTAN
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
# Support for LG Fridges (https://amzn.to/3lOYTCv)
# Added ThinLg HACS integration for Fridge sensors - https://github.com/ollo69/ha-smartthinq-sensors
#-------------------------------------------
automation:
- alias: 'Fridge Door Open'
id: 2346efcd-e8a8-4e86-b5b6-43eBl1nkFr1dge95D00r0pen
mode: single
trigger:
- platform: state
entity_id: binary_sensor.refrigerator_door_open
to: 'on'
for:
minutes: 5
condition:
- condition: state
entity_id: binary_sensor.refrigerator_door_open
state: 'on'
action:
- service: script.notify_engine
data:
title: 'Fridge Door Open'
value1: >
The fridge door has been open for more than 5 minutes. Please check and close the fridge door to avoid temperature issues.
who: 'family'
group: 'information'
- wait_template: "{{ states.group.family.state == 'home' }}"
- service: script.speech_engine
data:
value1: "Attention! The fridge door has been open for more than 5 minutes. Please close the fridge door."
- delay: 00:30:00
- event: event_fridge_door_open

View File

@@ -79,11 +79,50 @@ group:
- cover.large_garage_door
- cover.small_garage_door
automation:
######################################################################
## Automation: Auto-open Large Garage Door when someone comes home
######################################################################
- alias: 'Auto Open Large Garage Door On Arrival'
id: 7e2b1c3a-4b1e-4b2a-9c1a-automated_garage_door
mode: single
trigger:
- platform: state
entity_id:
- person.carlo
- person.stacey
- person.justin
from: 'not_home'
to: 'home'
condition:
- condition: state
entity_id: cover.large_garage_door
state: 'closed'
- condition: state
entity_id: group.bed
state: 'off'
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
data:
value: "{{ trigger.to_state.entity_id.split('.')[1] }}"
- service: script.notify_engine
data:
who: 'parents'
value1: "Large Garage has been auto-opened for {{ states('input_text.last_person_home') }}."
title: 'Garage Auto-Opened'
group: 'Welcome_Home'
camera_entity: camera.garagecam
######################################################################
## Send a notification to anyone coming home asking if they want to open the garage door.
######################################################################
automation:
- alias: 'Garage Helper'
id: 365adc21-5e96-4e78-9e94-089901a29430
mode: parallel
@@ -339,3 +378,119 @@ automation:
data:
value1: "Check the garage doors. The Small garage is {{ states('cover.small_garage_door')}} and the large garage is {{ states('cover.large_garage_door')}} [Only mention the garage door that is open and remind us to close it for the night]"
- alias: 'Garage Camera on Alexa Shows'
id: 4373df2a-77f2-4e19-be7c-46c7b27ca583
mode: single
trigger:
- platform: state
entity_id:
- cover.large_garage_door
- cover.small_garage_door
from: 'closed'
to: 'open'
- platform: state
entity_id: binary_sensor.mcu1_gpio12 #interior Garage Doors
from: 'off'
to: 'on'
- platform: state
entity_id:
- person.carlo
- person.stacey
- person.paige
- person.justin
to: 'not_home'
from: 'home'
action:
- choose:
- conditions: "{{ is_state('binary_sensor.sleepnumber_carlo_stacey_is_in_bed','on') }}"
sequence:
- service: media_player.play_media
data:
entity_id: media_player.stacey_bedroom
media_content_id: 'show garage camera from home assistant'
media_content_type: custom
- delay: '00:10:00'
- service: media_player.play_media
data:
entity_id: media_player.stacey_bedroom
media_content_id: 'hide garage camera'
media_content_type: custom
default:
- service: media_player.play_media
target:
entity_id: media_player.kitchen
data:
media_content_id: 'show garage camera from home assistant'
media_content_type: custom
- delay: '00:20:00'
- service: media_player.play_media
target:
entity_id: media_player.kitchen
data:
media_content_id: 'hide garage camera'
media_content_type: custom
- service: script.garage_lights_off
- alias: 'Garage Camera on Alexa Shows'
id: 4373df2a-77f2-4e19-be7c-46c7b27ca583
mode: single
trigger:
- platform: state
entity_id:
- cover.large_garage_door
- cover.small_garage_door
from: 'closed'
to: 'open'
- platform: state
entity_id: binary_sensor.mcu1_gpio12 #interior Garage Doors
from: 'off'
to: 'on'
- platform: state
entity_id:
- person.carlo
- person.stacey
- person.paige
- person.justin
to: 'not_home'
from: 'home'
action:
- choose:
- conditions: "{{ is_state('binary_sensor.sleepnumber_carlo_stacey_is_in_bed','on') }}"
sequence:
- service: media_player.play_media
data:
entity_id: media_player.stacey_bedroom
media_content_id: 'show garage camera from home assistant'
media_content_type: custom
- delay: '00:10:00'
- service: media_player.play_media
data:
entity_id: media_player.stacey_bedroom
media_content_id: 'hide garage camera'
media_content_type: custom
default:
- service: media_player.play_media
target:
entity_id: media_player.kitchen
data:
media_content_id: 'show garage camera from home assistant'
media_content_type: custom
- delay: '00:20:00'
- service: media_player.play_media
target:
entity_id: media_player.kitchen
data:
media_content_id: 'hide garage camera'
media_content_type: custom
- service: script.garage_lights_off

View File

@@ -15,3 +15,22 @@ automation:
target:
entity_id: button.qemu_docker2_101_reboot
mode: single
- alias: "Notify Carlo of Proxmox Updates"
id: notify_carlo_proxmox_updates
description: "Sends a notification to Carlo when there are updates available for the Proxmox hosts."
trigger:
- platform: state
entity_id: binary_sensor.node_proxmox02_updates_packages
to: 'on'
- platform: state
entity_id: binary_sensor.node_proxmox1_updates_packages
to: 'on'
action:
- service: script.notify_engine
data:
who: carlo
title: "Proxmox Updates Available"
value1: "There are updates available for the Proxmox hosts. Please review and apply updates as needed."
group: "information"
mode: single

View File

@@ -11,16 +11,23 @@ command_line:
unique_id: lines_of_code
command: "find /config -name '*.yaml' | xargs cat | wc -l"
scan_interval: 20000
value_template: "{{ value | int }}"
unit_of_measurement: "count"
- sensor:
name: 'GitHub Open Issues'
unique_id: github_open_issues
command: 'curl -s https://api.github.com/repos/ccostan/home-assistantconfig'
scan_interval: 20000
value_template: '{{ value_json.open_issues }}'
unit_of_measurement: 'count'
- sensor:
name: 'GitHub Stats'
unique_id: github_stats_command
command: 'curl https://api.github.com/repos/ccostan/home-assistantconfig'
name: 'GitHub Stargazers'
unique_id: github_stargazers
command: 'curl -s https://api.github.com/repos/ccostan/home-assistantconfig'
scan_interval: 20000
value_template: '{{ value_json.name }}'
json_attributes:
- open_issues
- stargazers_count
value_template: '{{ value_json.stargazers_count }}'
unit_of_measurement: 'count'
sensor:
- platform: history_stats
@@ -66,31 +73,42 @@ sensor:
friendly_name: 'Number of Sensors'
value_template: >-
{{ states.sensor | list | count }}
unit_of_measurement: 'count'
icon_template: mdi:counter
automation_count:
friendly_name: 'Number of Automations'
value_template: >-
{{ states.automation| list | count }}
{{ states.automation | list | count }}
unit_of_measurement: 'count'
icon_template: mdi:robot
script_count:
friendly_name: 'Number of Scripts'
value_template: >
value_template: >-
{{ states.script | list | count }}
unit_of_measurement: 'count'
icon_template: mdi:script-text
binary_sensor_count:
friendly_name: 'Number of Binary Sensors'
value_template: >-
{{ states.binary_sensor | list | count }}
unit_of_measurement: 'count'
icon_template: mdi:binary-sensor
tracker_count:
friendly_name: 'Number of Devices'
value_template: >-
{{ states.device_tracker| list | count }}
unit_of_measurement: 'count'
icon_template: mdi:account-group
lights_count:
friendly_name: 'Number of Lights'
value_template: >
{{ states.light | list | count }}
unit_of_measurement: 'count'
icon_template: mdi:lightbulb
lights_on_count:
friendly_name: "Number of lights on"
value_template: >-
@@ -103,7 +121,8 @@ sensor:
{% else %}
{{ qty }} {{ p1 }} on.
{% endif %}
unit_of_measurement: 'count'
icon_template: mdi:binary-sensor
protect_count:
friendly_name: 'Number of Smoke Detectors'
value_template: >
@@ -116,9 +135,12 @@ sensor:
{% else %}
0
{% endif %}
unit_of_measurement: 'count'
icon_template: mdi:smoke-detector
camera_count:
friendly_name: 'Number of online Cameras'
value_template: >
{{ states.camera | list | count }}
unit_of_measurement: 'count'
icon_template: mdi:camera
#############################################################

View File

@@ -11,28 +11,52 @@
#-------------------------------------------
#db_url: sqlite:///data/home-assistant_v2.db
purge_keep_days: 30
include:
entities:
- device_tracker.spaceship_location_tracker
exclude:
domains:
- device_tracker
- camera
- device_tracker
- event
- feedreader
- image
- media_player
- persistent_notification
- sun
- update
- zone
entity_globs:
- sensor.*uptime*
- sensor.vpn_client_*
- binary_sensor.*_motion
- binary_sensor.*_motion_*
- binary_sensor.*is_present
# - binary_sensor.*occupancy*
- light.sleepnumber_*
- number.sleepnumber_*
- number.*_effect_speed
- media_player.*echo*
- select.sleepnumber_*
- select.l10s_vacuum_*
- select.*_wiring
- sensor.*_activity
- sensor.*_battery
- sensor.*_battery_state
- sensor.*_bssid
- sensor.*_first_connection*
- sensor.*_last_connection*
- binary_sensor.*_motion
- binary_sensor.*is_present
- binary_sensor.*_motion_*
- sensor.*_last_update*
- sensor.*_last_boot
- sensor.*_since
- sensor.*uptime*
- sensor.vpn_client_*
- switch.*_do_not_disturb_*
- switch.*_repeat_switch
entities:
- automation.update_garage_get_status
- binary_sensor.bear_stone
- binary_sensor.powerwall_charging
- media_player.carlo_s_4th_fire
- media_player.alarm_panel_2
- script.speech_processing
- number.alarm_panel_1_screen_brightness
- script.amp_settings
- script.speech_processing
- sensor.bear_stone
- sensor.carlo_ap
- sensor.carlo_fast
- sensor.clock_am_pm
@@ -42,23 +66,27 @@ exclude:
- sensor.clock_time
- sensor.clock_time_2
- sensor.date
- sensor.dockerconfigs_backup_date
- sensor.dockerconfigs_backup_error_message
- sensor.dockerconfigs_backup_status
- sensor.external_ip
- sensor.floorplan_date
- sensor.floorplan_time
- sensor.floorplan_time_2
- sensor.ha_uptime
- sensor.large_garage_door_since
- sensor.small_garage_door_since
- sensor.last_alexa
- sensor.lights_on_count
- sensor.low_battery
- sensor.network
- sensor.network_detail
- sensor.pi_hole_ads_blocked_today
- sensor.pi_hole_ads_percentage_blocked_today
- sensor.pi_hole_dns_queries_today
- sensor.small_garage_door_since
- sensor.large_garage_door_since
- sensor.stacey_iphone11_activity
- sensor.time
- sensor.rachio_watering_time
- binary_sensor.rheem_wh_running
- sun.sun
- zone.home
- sensor.stacey_iphone11_activity
- sensor.stacey_iphone11_audio_output
- sensor.sun_next_dawn
- sensor.sun_next_noon
- sensor.time
- switch.bear_stone
- switch.alarm_panel_1_screensaver

View File

@@ -3,11 +3,12 @@
# action:
# service: script.speech_engine
# data:
# value1:
# call_no_announcement:
# call_dark_outside:
# call_window_check:
# call_garage_check:
# call_responsibilities
# call_garbage_day
# call_light_check
# call_inside_weather
# call_outside_weather
@@ -50,9 +51,8 @@ speech_engine:
# Include the speech message from the "speech/briefing.yaml" template file
speech_message: !include ../templates/speech/briefing.yaml
# Turn off the "input_boolean.home_stats" and "input_boolean.responsibilities" input booleans
# Turn off the "input_boolean.home_stats"
- service: input_boolean.turn_off
data:
entity_id:
- input_boolean.home_stats
- input_boolean.responsibilities

View File

@@ -21,7 +21,7 @@
The sun has set. I will turn on the outside lights.
{%- endmacro -%}
{%- macro responsibilities() -%}
{%- macro garbage_day() -%}
{% set day_of_week = now().strftime('%a') %}
{% if day_of_week in ['Wed', 'Sun'] %}
Today is garbage day.
@@ -286,11 +286,11 @@
New Information:
{% if call_no_announcement != 1 %}
{% if now().strftime('%H')|int(9999)< 12 and now().strftime('%H')|int(9999)> 6 %}
Good morning.
Good morning. [if there is only one person home, address them specifically]
{% elif now().strftime('%H')|int(9999)>= 12 and now().strftime('%H')|int(9999)< 17 %}
Good afternoon.
Good afternoon. [if there is only one person home, address them specifically]
{% else %}
Good evening.
Good evening. [if there is only one person home, address them specifically]
{% endif %}
{% endif %}
@@ -346,8 +346,8 @@
{{ light_check() }}
{% endif %}
{% if call_responsibilities == 1 %}
{{ responsibilities() }}
{% if call_garbage_day == 1 %}
{{ garbage_day() }}
{% endif %}
{% if now().strftime('%H')|int(0) > 21 %}

View File

@@ -1,16 +1,16 @@
<svg width="61.5" height="20" viewBox="0 0 615 200" xmlns="http://www.w3.org/2000/svg" role="img" aria-label="2025.7.1">
<title>2025.7.1</title>
<linearGradient id="LEOAH" x2="0" y2="100%">
<svg width="61.5" height="20" viewBox="0 0 615 200" xmlns="http://www.w3.org/2000/svg" role="img" aria-label="2025.7.2">
<title>2025.7.2</title>
<linearGradient id="zzuHy" x2="0" y2="100%">
<stop offset="0" stop-opacity=".1" stop-color="#EEE"/>
<stop offset="1" stop-opacity=".1"/>
</linearGradient>
<mask id="aSVqF"><rect width="615" height="200" rx="30" fill="#FFF"/></mask>
<g mask="url(#aSVqF)">
<mask id="vERfN"><rect width="615" height="200" rx="30" fill="#FFF"/></mask>
<g mask="url(#vERfN)">
<rect width="615" height="200" fill="#08C" x="0"/>
<rect width="615" height="200" fill="url(#LEOAH)"/>
<rect width="615" height="200" fill="url(#zzuHy)"/>
</g>
<g aria-hidden="true" fill="#fff" text-anchor="start" font-family="Verdana,DejaVu Sans,sans-serif" font-size="110">
<text x="65" y="148" textLength="500" fill="#000" opacity="0.25">2025.7.1</text>
<text x="55" y="138" textLength="500">2025.7.1</text>
<text x="65" y="148" textLength="500" fill="#000" opacity="0.25">2025.7.2</text>
<text x="55" y="138" textLength="500">2025.7.2</text>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 811 B

After

Width:  |  Height:  |  Size: 811 B