mirror of
https://github.com/CeeWeasel/fresh-home.git
synced 2026-08-09 18:40:14 -04:00
Out with the old and in with the new
This commit is contained in:
@@ -1,154 +1,155 @@
|
||||
type: vertical-stack
|
||||
cards:
|
||||
- type: custom:advanced-camera-card
|
||||
cameras_global:
|
||||
type: conditional
|
||||
conditions:
|
||||
- condition: state
|
||||
entity: sensor.frigate_cam01_camera_fps
|
||||
state_not: "0"
|
||||
card:
|
||||
type: vertical-stack
|
||||
cards:
|
||||
- type: custom:advanced-camera-card
|
||||
cameras_global:
|
||||
dimensions:
|
||||
layout:
|
||||
fit: fill
|
||||
status_bar:
|
||||
style: none
|
||||
cameras:
|
||||
- camera_entity: camera.frigate_cam01
|
||||
live_provider: go2rtc
|
||||
go2rtc:
|
||||
modes:
|
||||
- webrtc
|
||||
stream: rtsp_cam01_sub
|
||||
icon: mdi:yoga
|
||||
title: Blue Room
|
||||
id: blue_room
|
||||
live:
|
||||
preload: true
|
||||
draggable: true
|
||||
show_image_during_load: false
|
||||
lazy_load: false
|
||||
controls:
|
||||
title:
|
||||
mode: none
|
||||
timeline:
|
||||
mode: none
|
||||
thumbnails:
|
||||
mode: none
|
||||
menu:
|
||||
buttons:
|
||||
frigate:
|
||||
enabled: false
|
||||
style: none
|
||||
media_viewer:
|
||||
draggable: false
|
||||
lazy_load: false
|
||||
dimensions:
|
||||
layout:
|
||||
fit: fill
|
||||
status_bar:
|
||||
style: none
|
||||
cameras:
|
||||
- camera_entity: camera.frigate_cam01
|
||||
live_provider: go2rtc
|
||||
go2rtc:
|
||||
modes:
|
||||
- webrtc
|
||||
stream: rtsp_cam01_sub
|
||||
icon: mdi:yoga
|
||||
title: Blue Room
|
||||
id: blue_room
|
||||
live:
|
||||
preload: true
|
||||
draggable: true
|
||||
show_image_during_load: false
|
||||
lazy_load: false
|
||||
controls:
|
||||
title:
|
||||
mode: none
|
||||
timeline:
|
||||
mode: none
|
||||
thumbnails:
|
||||
mode: none
|
||||
menu:
|
||||
buttons:
|
||||
frigate:
|
||||
enabled: false
|
||||
style: none
|
||||
media_viewer:
|
||||
draggable: false
|
||||
lazy_load: false
|
||||
dimensions:
|
||||
aspect_ratio_mode: static
|
||||
aspect_ratio: "16:9"
|
||||
elements:
|
||||
- type: image
|
||||
image: /local/title-dark-double.png
|
||||
style:
|
||||
transform: initial
|
||||
top: 90%
|
||||
left: 0px
|
||||
width: 100%
|
||||
height: 10%
|
||||
opacity: 70%
|
||||
- type: image
|
||||
entity: camera.frigate_cam01
|
||||
image: /local/title-dark-double.png
|
||||
aspect_ratio: 100%
|
||||
tap_action:
|
||||
action: navigate
|
||||
navigation_path: /ai-yml/ai-cam01
|
||||
style:
|
||||
transform: initial
|
||||
top: 0px
|
||||
left: 0px
|
||||
width: 100%
|
||||
height: 100%
|
||||
opacity: 0%
|
||||
aspect_ratio_mode: static
|
||||
aspect_ratio: "16:9"
|
||||
elements:
|
||||
- type: image
|
||||
image: /local/title-dark-double.png
|
||||
style:
|
||||
transform: initial
|
||||
top: 90%
|
||||
left: 0px
|
||||
width: 100%
|
||||
height: 10%
|
||||
opacity: 70%
|
||||
- type: image
|
||||
entity: camera.frigate_cam01
|
||||
image: /local/title-dark-double.png
|
||||
aspect_ratio: 100%
|
||||
tap_action:
|
||||
action: navigate
|
||||
navigation_path: /ai-yml/ai-cam01
|
||||
style:
|
||||
transform: initial
|
||||
top: 0px
|
||||
left: 0px
|
||||
width: 100%
|
||||
height: 100%
|
||||
opacity: 0%
|
||||
|
||||
- type: state-icon
|
||||
entity: group.blue_room_motion
|
||||
style:
|
||||
left: 8%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: binary_sensor.frigate_cam01_speech_sound
|
||||
style:
|
||||
left: 30%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: sensor.furnace_room_person_count
|
||||
style:
|
||||
left: 50%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: input_boolean.blue_room_occupied
|
||||
tap_action:
|
||||
action: toggle
|
||||
style:
|
||||
left: 70%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: binary_sensor.blue_room_occupied
|
||||
style:
|
||||
top: 95%
|
||||
left: 92%
|
||||
- type: state-icon
|
||||
entity: group.blue_room_motion
|
||||
style:
|
||||
left: 8%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: sensor.furnace_room_person_count
|
||||
style:
|
||||
left: 50%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: input_boolean.blue_room_occupied
|
||||
tap_action:
|
||||
action: toggle
|
||||
style:
|
||||
left: 70%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: binary_sensor.blue_room_occupied
|
||||
style:
|
||||
top: 95%
|
||||
left: 92%
|
||||
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.blue_room_person_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.blue_room_person_occupancy
|
||||
style:
|
||||
top: 65%
|
||||
left: 45%
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.furnace_room_person_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.furnace_room_person_occupancy
|
||||
style:
|
||||
top: 22%
|
||||
left: 83%
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.blue_room_person_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.blue_room_person_occupancy
|
||||
style:
|
||||
top: 65%
|
||||
left: 45%
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.furnace_room_person_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.furnace_room_person_occupancy
|
||||
style:
|
||||
top: 22%
|
||||
left: 83%
|
||||
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: light.blue_room_closet
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: light.blue_room_closet
|
||||
style:
|
||||
top: 7%
|
||||
left: 60%
|
||||
tap_action:
|
||||
action: toggle
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: light.blue_room_closet
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: light.blue_room_closet
|
||||
style:
|
||||
top: 7%
|
||||
left: 60%
|
||||
tap_action:
|
||||
action: toggle
|
||||
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: light.blue_room_hue
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: light.blue_room_hue
|
||||
style:
|
||||
top: 7%
|
||||
left: 50%
|
||||
tap_action:
|
||||
action: toggle
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: light.blue_room_hue
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: light.blue_room_hue
|
||||
style:
|
||||
top: 7%
|
||||
left: 50%
|
||||
tap_action:
|
||||
action: toggle
|
||||
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: light.furnace_room
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: light.furnace_room
|
||||
style:
|
||||
top: 7%
|
||||
left: 82%
|
||||
tap_action:
|
||||
action: toggle
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: light.furnace_room
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: light.furnace_room
|
||||
style:
|
||||
top: 7%
|
||||
left: 82%
|
||||
tap_action:
|
||||
action: toggle
|
||||
|
||||
@@ -1,148 +1,149 @@
|
||||
type: vertical-stack
|
||||
cards:
|
||||
- type: custom:advanced-camera-card
|
||||
cameras_global:
|
||||
type: conditional
|
||||
conditions:
|
||||
- condition: state
|
||||
entity: sensor.frigate_cam03_camera_fps
|
||||
state_not: "0"
|
||||
card:
|
||||
type: vertical-stack
|
||||
cards:
|
||||
- type: custom:advanced-camera-card
|
||||
cameras_global:
|
||||
dimensions:
|
||||
layout:
|
||||
fit: fill
|
||||
status_bar:
|
||||
style: none
|
||||
cameras:
|
||||
- camera_entity: camera.frigate_cam03
|
||||
live_provider: go2rtc
|
||||
go2rtc:
|
||||
modes:
|
||||
- webrtc
|
||||
stream: rtsp_cam03_sub
|
||||
icon: mdi:desktop-classic
|
||||
title: Computer Area
|
||||
id: computer_area
|
||||
live:
|
||||
preload: true
|
||||
draggable: true
|
||||
show_image_during_load: false
|
||||
lazy_load: false
|
||||
controls:
|
||||
title:
|
||||
mode: none
|
||||
timeline:
|
||||
mode: none
|
||||
thumbnails:
|
||||
mode: none
|
||||
menu:
|
||||
buttons:
|
||||
frigate:
|
||||
enabled: false
|
||||
style: none
|
||||
media_viewer:
|
||||
draggable: false
|
||||
lazy_load: false
|
||||
dimensions:
|
||||
layout:
|
||||
fit: fill
|
||||
status_bar:
|
||||
style: none
|
||||
cameras:
|
||||
- camera_entity: camera.frigate_cam03
|
||||
live_provider: go2rtc
|
||||
go2rtc:
|
||||
modes:
|
||||
- webrtc
|
||||
stream: rtsp_cam03_sub
|
||||
icon: mdi:desktop-classic
|
||||
title: Computer Area
|
||||
id: computer_area
|
||||
live:
|
||||
preload: true
|
||||
draggable: true
|
||||
show_image_during_load: false
|
||||
lazy_load: false
|
||||
controls:
|
||||
title:
|
||||
mode: none
|
||||
timeline:
|
||||
mode: none
|
||||
thumbnails:
|
||||
mode: none
|
||||
menu:
|
||||
buttons:
|
||||
frigate:
|
||||
enabled: false
|
||||
style: none
|
||||
media_viewer:
|
||||
draggable: false
|
||||
lazy_load: false
|
||||
dimensions:
|
||||
aspect_ratio_mode: static
|
||||
aspect_ratio: '16:9'
|
||||
elements:
|
||||
- type: image
|
||||
image: /local/title-dark-double.png
|
||||
style:
|
||||
transform: initial
|
||||
top: 90%
|
||||
left: 0px
|
||||
width: 100%
|
||||
height: 10%
|
||||
opacity: 70%
|
||||
- type: image
|
||||
entity: camera.frigate_cam03
|
||||
image: /local/title-dark-double.png
|
||||
aspect_ratio: 100%
|
||||
tap_action:
|
||||
action: navigate
|
||||
navigation_path: /ai-yml/ai-cam03
|
||||
style:
|
||||
transform: initial
|
||||
top: 0px
|
||||
left: 0px
|
||||
width: 100%
|
||||
height: 100%
|
||||
opacity: 0%
|
||||
- type: state-icon
|
||||
entity: group.computer_area_motion
|
||||
style:
|
||||
left: 8%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: binary_sensor.frigate_cam03_speech_sound
|
||||
style:
|
||||
left: 30%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: sensor.great_room_person_count
|
||||
style:
|
||||
left: 50%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: input_boolean.computer_area_occupied
|
||||
tap_action:
|
||||
action: toggle
|
||||
style:
|
||||
left: 70%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: binary_sensor.computer_area_occupied
|
||||
style:
|
||||
top: 95%
|
||||
left: 92%
|
||||
aspect_ratio_mode: static
|
||||
aspect_ratio: '16:9'
|
||||
elements:
|
||||
- type: image
|
||||
image: /local/title-dark-double.png
|
||||
style:
|
||||
transform: initial
|
||||
top: 90%
|
||||
left: 0px
|
||||
width: 100%
|
||||
height: 10%
|
||||
opacity: 70%
|
||||
- type: image
|
||||
entity: camera.frigate_cam03
|
||||
image: /local/title-dark-double.png
|
||||
aspect_ratio: 100%
|
||||
tap_action:
|
||||
action: navigate
|
||||
navigation_path: /ai-yml/ai-cam03
|
||||
style:
|
||||
transform: initial
|
||||
top: 0px
|
||||
left: 0px
|
||||
width: 100%
|
||||
height: 100%
|
||||
opacity: 0%
|
||||
- type: state-icon
|
||||
entity: group.computer_area_motion
|
||||
style:
|
||||
left: 8%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: sensor.great_room_person_count
|
||||
style:
|
||||
left: 50%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: input_boolean.computer_area_occupied
|
||||
tap_action:
|
||||
action: toggle
|
||||
style:
|
||||
left: 70%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: binary_sensor.computer_area_occupied
|
||||
style:
|
||||
top: 95%
|
||||
left: 92%
|
||||
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.great_room_person_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.great_room_person_occupancy
|
||||
style:
|
||||
top: 20%
|
||||
left: 25%
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.great_room_person_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.great_room_person_occupancy
|
||||
style:
|
||||
top: 20%
|
||||
left: 25%
|
||||
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.utility_room_person_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.utility_room_person_occupancy
|
||||
style:
|
||||
top: 17%
|
||||
left: 57%
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.utility_room_person_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.utility_room_person_occupancy
|
||||
style:
|
||||
top: 17%
|
||||
left: 57%
|
||||
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.entryway_person_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.entryway_person_occupancy
|
||||
style:
|
||||
top: 25%
|
||||
left: 97%
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.entryway_person_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.entryway_person_occupancy
|
||||
style:
|
||||
top: 25%
|
||||
left: 97%
|
||||
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.computer_area_person_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.computer_area_person_occupancy
|
||||
style:
|
||||
top: 87%
|
||||
left: 80%
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.computer_area_person_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.computer_area_person_occupancy
|
||||
style:
|
||||
top: 87%
|
||||
left: 80%
|
||||
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.computer_chair_contact_occupied
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.computer_chair_contact_occupied
|
||||
style:
|
||||
top: 87%
|
||||
left: 75%
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.computer_chair_contact_occupied
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.computer_chair_contact_occupied
|
||||
style:
|
||||
top: 87%
|
||||
left: 75%
|
||||
|
||||
@@ -1,226 +1,227 @@
|
||||
type: vertical-stack
|
||||
cards:
|
||||
- type: custom:advanced-camera-card
|
||||
cameras_global:
|
||||
type: conditional
|
||||
conditions:
|
||||
- condition: state
|
||||
entity: sensor.frigate_cam04_camera_fps
|
||||
state_not: "0"
|
||||
card:
|
||||
type: vertical-stack
|
||||
cards:
|
||||
- type: custom:advanced-camera-card
|
||||
cameras_global:
|
||||
dimensions:
|
||||
layout:
|
||||
fit: fill
|
||||
status_bar:
|
||||
style: none
|
||||
cameras:
|
||||
- camera_entity: camera.frigate_cam04
|
||||
live_provider: go2rtc
|
||||
go2rtc:
|
||||
modes:
|
||||
- webrtc
|
||||
stream: rtsp_cam04_sub
|
||||
live:
|
||||
preload: true
|
||||
draggable: true
|
||||
show_image_during_load: false
|
||||
lazy_load: false
|
||||
controls:
|
||||
title:
|
||||
mode: none
|
||||
timeline:
|
||||
mode: none
|
||||
thumbnails:
|
||||
mode: none
|
||||
menu:
|
||||
buttons:
|
||||
frigate:
|
||||
enabled: false
|
||||
style: none
|
||||
media_viewer:
|
||||
draggable: false
|
||||
lazy_load: false
|
||||
dimensions:
|
||||
layout:
|
||||
fit: fill
|
||||
status_bar:
|
||||
style: none
|
||||
cameras:
|
||||
- camera_entity: camera.frigate_cam04
|
||||
live_provider: go2rtc
|
||||
go2rtc:
|
||||
modes:
|
||||
- webrtc
|
||||
stream: rtsp_cam04_sub
|
||||
live:
|
||||
preload: true
|
||||
draggable: true
|
||||
show_image_during_load: false
|
||||
lazy_load: false
|
||||
controls:
|
||||
title:
|
||||
mode: none
|
||||
timeline:
|
||||
mode: none
|
||||
thumbnails:
|
||||
mode: none
|
||||
menu:
|
||||
buttons:
|
||||
frigate:
|
||||
enabled: false
|
||||
style: none
|
||||
media_viewer:
|
||||
draggable: false
|
||||
lazy_load: false
|
||||
dimensions:
|
||||
aspect_ratio_mode: static
|
||||
aspect_ratio: '16:9'
|
||||
elements:
|
||||
- type: image
|
||||
image: /local/title-dark-double.png
|
||||
style:
|
||||
transform: initial
|
||||
top: 90%
|
||||
left: 0px
|
||||
width: 100%
|
||||
height: 10%
|
||||
opacity: 70%
|
||||
- type: image
|
||||
entity: camera.frigate_cam04
|
||||
image: /local/title-dark-double.png
|
||||
aspect_ratio: 100%
|
||||
tap_action:
|
||||
action: navigate
|
||||
navigation_path: /ai-yml/ai-cam04
|
||||
style:
|
||||
transform: initial
|
||||
top: 0px
|
||||
left: 0px
|
||||
width: 100%
|
||||
height: 100%
|
||||
opacity: 0%
|
||||
aspect_ratio_mode: static
|
||||
aspect_ratio: '16:9'
|
||||
elements:
|
||||
- type: image
|
||||
image: /local/title-dark-double.png
|
||||
style:
|
||||
transform: initial
|
||||
top: 90%
|
||||
left: 0px
|
||||
width: 100%
|
||||
height: 10%
|
||||
opacity: 70%
|
||||
- type: image
|
||||
entity: camera.frigate_cam04
|
||||
image: /local/title-dark-double.png
|
||||
aspect_ratio: 100%
|
||||
tap_action:
|
||||
action: navigate
|
||||
navigation_path: /ai-yml/ai-cam04
|
||||
style:
|
||||
transform: initial
|
||||
top: 0px
|
||||
left: 0px
|
||||
width: 100%
|
||||
height: 100%
|
||||
opacity: 0%
|
||||
|
||||
- type: state-icon
|
||||
entity: group.garage_motion
|
||||
style:
|
||||
left: 8%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: binary_sensor.frigate_cam04_speech_sound
|
||||
style:
|
||||
left: 22%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: sensor.east_side_vehicle_count
|
||||
style:
|
||||
left: 36%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: sensor.workshop_person_count
|
||||
style:
|
||||
left: 50%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: sensor.west_side_vehicle_count
|
||||
style:
|
||||
left: 64%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: input_boolean.garage_occupied
|
||||
tap_action:
|
||||
action: toggle
|
||||
style:
|
||||
left: 78%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: binary_sensor.garage_occupied
|
||||
style:
|
||||
top: 95%
|
||||
left: 92%
|
||||
- type: state-icon
|
||||
entity: group.garage_motion
|
||||
style:
|
||||
left: 8%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: sensor.east_side_vehicle_count
|
||||
style:
|
||||
left: 36%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: sensor.workshop_person_count
|
||||
style:
|
||||
left: 50%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: sensor.west_side_vehicle_count
|
||||
style:
|
||||
left: 64%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: input_boolean.garage_occupied
|
||||
tap_action:
|
||||
action: toggle
|
||||
style:
|
||||
left: 78%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: binary_sensor.garage_occupied
|
||||
style:
|
||||
top: 95%
|
||||
left: 92%
|
||||
|
||||
- type: state-icon
|
||||
entity: light.garage_overhead
|
||||
tap_action:
|
||||
action: toggle
|
||||
style:
|
||||
top: 5%
|
||||
left: 50%
|
||||
- type: state-icon
|
||||
entity: light.garage_overhead
|
||||
tap_action:
|
||||
action: toggle
|
||||
style:
|
||||
top: 5%
|
||||
left: 50%
|
||||
|
||||
- type: state-icon
|
||||
entity: cover.garage_door
|
||||
tap_action:
|
||||
action: toggle
|
||||
style:
|
||||
top: 40%
|
||||
left: 83%
|
||||
- type: state-icon
|
||||
entity: cover.garage_door
|
||||
tap_action:
|
||||
action: toggle
|
||||
style:
|
||||
top: 40%
|
||||
left: 83%
|
||||
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.parking_spot_vehicle_occupancy
|
||||
state: "on"
|
||||
- entity: binary_sensor.garage_door
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.parking_spot_vehicle_occupancy
|
||||
style:
|
||||
top: 43%
|
||||
left: 40%
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.parking_spot_vehicle_occupancy
|
||||
state: "on"
|
||||
- entity: binary_sensor.garage_door
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.parking_spot_vehicle_occupancy
|
||||
style:
|
||||
top: 43%
|
||||
left: 40%
|
||||
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.from_street_vehicle_occupancy
|
||||
state: "on"
|
||||
- entity: binary_sensor.garage_door
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.from_street_vehicle_occupancy
|
||||
style:
|
||||
top: 40%
|
||||
left: 60%
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.from_street_vehicle_occupancy
|
||||
state: "on"
|
||||
- entity: binary_sensor.garage_door
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.from_street_vehicle_occupancy
|
||||
style:
|
||||
top: 40%
|
||||
left: 60%
|
||||
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.driveway_east_side_vehicle_occupancy
|
||||
state: "on"
|
||||
- entity: binary_sensor.garage_door
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.driveway_east_side_vehicle_occupancy
|
||||
style:
|
||||
top: 50%
|
||||
left: 63%
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.driveway_east_side_vehicle_occupancy
|
||||
state: "on"
|
||||
- entity: binary_sensor.garage_door
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.driveway_east_side_vehicle_occupancy
|
||||
style:
|
||||
top: 50%
|
||||
left: 63%
|
||||
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.driveway_center_vehicle_occupancy
|
||||
state: "on"
|
||||
- entity: binary_sensor.garage_door
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.driveway_center_vehicle_occupancy
|
||||
style:
|
||||
top: 50%
|
||||
left: 55%
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.driveway_center_vehicle_occupancy
|
||||
state: "on"
|
||||
- entity: binary_sensor.garage_door
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.driveway_center_vehicle_occupancy
|
||||
style:
|
||||
top: 50%
|
||||
left: 55%
|
||||
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.driveway_west_side_vehicle_occupancy
|
||||
state: "on"
|
||||
- entity: binary_sensor.garage_door
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.driveway_west_side_vehicle_occupancy
|
||||
style:
|
||||
top: 50%
|
||||
left: 47%
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.driveway_west_side_vehicle_occupancy
|
||||
state: "on"
|
||||
- entity: binary_sensor.garage_door
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.driveway_west_side_vehicle_occupancy
|
||||
style:
|
||||
top: 50%
|
||||
left: 47%
|
||||
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.walkway_person_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.walkway_person_occupancy
|
||||
style:
|
||||
top: 26%
|
||||
left: 72%
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.walkway_person_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.walkway_person_occupancy
|
||||
style:
|
||||
top: 26%
|
||||
left: 72%
|
||||
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.workshop_person_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.workshop_person_occupancy
|
||||
style:
|
||||
top: 50%
|
||||
left: 85%
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.workshop_person_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.workshop_person_occupancy
|
||||
style:
|
||||
top: 50%
|
||||
left: 85%
|
||||
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.east_side_vehicle_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.east_side_vehicle_occupancy
|
||||
style:
|
||||
top: 80%
|
||||
left: 63%
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.east_side_vehicle_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.east_side_vehicle_occupancy
|
||||
style:
|
||||
top: 80%
|
||||
left: 63%
|
||||
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.west_side_vehicle_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.west_side_vehicle_occupancy
|
||||
style:
|
||||
top: 80%
|
||||
left: 30%
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.west_side_vehicle_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.west_side_vehicle_occupancy
|
||||
style:
|
||||
top: 80%
|
||||
left: 30%
|
||||
|
||||
@@ -1,112 +1,113 @@
|
||||
type: vertical-stack
|
||||
cards:
|
||||
- type: custom:advanced-camera-card
|
||||
cameras_global:
|
||||
type: conditional
|
||||
conditions:
|
||||
- condition: state
|
||||
entity: sensor.frigate_cam06_camera_fps
|
||||
state_not: "0"
|
||||
card:
|
||||
type: vertical-stack
|
||||
cards:
|
||||
- type: custom:advanced-camera-card
|
||||
cameras_global:
|
||||
dimensions:
|
||||
layout:
|
||||
fit: fill
|
||||
status_bar:
|
||||
style: none
|
||||
cameras:
|
||||
- camera_entity: camera.frigate_cam06
|
||||
live_provider: go2rtc
|
||||
go2rtc:
|
||||
modes:
|
||||
- webrtc
|
||||
stream: rtsp_cam06_sub
|
||||
live:
|
||||
preload: true
|
||||
draggable: true
|
||||
show_image_during_load: false
|
||||
lazy_load: false
|
||||
controls:
|
||||
title:
|
||||
mode: none
|
||||
timeline:
|
||||
mode: none
|
||||
thumbnails:
|
||||
mode: none
|
||||
menu:
|
||||
buttons:
|
||||
frigate:
|
||||
enabled: false
|
||||
style: none
|
||||
media_viewer:
|
||||
draggable: false
|
||||
lazy_load: false
|
||||
dimensions:
|
||||
layout:
|
||||
fit: fill
|
||||
status_bar:
|
||||
style: none
|
||||
cameras:
|
||||
- camera_entity: camera.frigate_cam06
|
||||
live_provider: go2rtc
|
||||
go2rtc:
|
||||
modes:
|
||||
- webrtc
|
||||
stream: rtsp_cam06_sub
|
||||
live:
|
||||
preload: true
|
||||
draggable: true
|
||||
show_image_during_load: false
|
||||
lazy_load: false
|
||||
controls:
|
||||
title:
|
||||
mode: none
|
||||
timeline:
|
||||
mode: none
|
||||
thumbnails:
|
||||
mode: none
|
||||
menu:
|
||||
buttons:
|
||||
frigate:
|
||||
enabled: false
|
||||
style: none
|
||||
media_viewer:
|
||||
draggable: false
|
||||
lazy_load: false
|
||||
dimensions:
|
||||
aspect_ratio_mode: static
|
||||
aspect_ratio: '16:9'
|
||||
elements:
|
||||
- type: image
|
||||
image: /local/title-dark-double.png
|
||||
style:
|
||||
transform: initial
|
||||
top: 90%
|
||||
left: 0px
|
||||
width: 100%
|
||||
height: 10%
|
||||
opacity: 70%
|
||||
- type: image
|
||||
entity: camera.frigate_cam06
|
||||
image: /local/title-dark-double.png
|
||||
aspect_ratio: 100%
|
||||
tap_action:
|
||||
action: navigate
|
||||
navigation_path: /ai-yml/ai-cam06
|
||||
style:
|
||||
transform: initial
|
||||
top: 0px
|
||||
left: 0px
|
||||
width: 100%
|
||||
height: 100%
|
||||
opacity: 0%
|
||||
aspect_ratio_mode: static
|
||||
aspect_ratio: '16:9'
|
||||
elements:
|
||||
- type: image
|
||||
image: /local/title-dark-double.png
|
||||
style:
|
||||
transform: initial
|
||||
top: 90%
|
||||
left: 0px
|
||||
width: 100%
|
||||
height: 10%
|
||||
opacity: 70%
|
||||
- type: image
|
||||
entity: camera.frigate_cam06
|
||||
image: /local/title-dark-double.png
|
||||
aspect_ratio: 100%
|
||||
tap_action:
|
||||
action: navigate
|
||||
navigation_path: /ai-yml/ai-cam06
|
||||
style:
|
||||
transform: initial
|
||||
top: 0px
|
||||
left: 0px
|
||||
width: 100%
|
||||
height: 100%
|
||||
opacity: 0%
|
||||
|
||||
- type: state-icon
|
||||
entity: group.master_bedroom_motion
|
||||
style:
|
||||
left: 8%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: binary_sensor.frigate_cam06_speech_sound
|
||||
style:
|
||||
left: 30%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: sensor.master_bed_person_count
|
||||
style:
|
||||
left: 50%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: input_boolean.master_bedroom_occupied
|
||||
tap_action:
|
||||
action: toggle
|
||||
style:
|
||||
left: 70%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: binary_sensor.master_bedroom_occupied
|
||||
style:
|
||||
top: 95%
|
||||
left: 92%
|
||||
- type: state-icon
|
||||
entity: group.master_bedroom_motion
|
||||
style:
|
||||
left: 8%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: sensor.master_bed_person_count
|
||||
style:
|
||||
left: 50%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: input_boolean.master_bedroom_occupied
|
||||
tap_action:
|
||||
action: toggle
|
||||
style:
|
||||
left: 70%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: binary_sensor.master_bedroom_occupied
|
||||
style:
|
||||
top: 95%
|
||||
left: 92%
|
||||
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.master_bedroom_person_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.master_bedroom_person_occupancy
|
||||
style:
|
||||
top: 50%
|
||||
left: 10%
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.master_bed_person_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.master_bed_person_occupancy
|
||||
style:
|
||||
top: 50%
|
||||
left: 70%
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.master_bedroom_person_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.master_bedroom_person_occupancy
|
||||
style:
|
||||
top: 50%
|
||||
left: 10%
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.master_bed_person_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.master_bed_person_occupancy
|
||||
style:
|
||||
top: 50%
|
||||
left: 70%
|
||||
|
||||
@@ -1,112 +1,113 @@
|
||||
type: vertical-stack
|
||||
cards:
|
||||
- type: custom:advanced-camera-card
|
||||
cameras_global:
|
||||
type: conditional
|
||||
conditions:
|
||||
- condition: state
|
||||
entity: sensor.frigate_cam07_camera_fps
|
||||
state_not: "0"
|
||||
card:
|
||||
type: vertical-stack
|
||||
cards:
|
||||
- type: custom:advanced-camera-card
|
||||
cameras_global:
|
||||
dimensions:
|
||||
layout:
|
||||
fit: fill
|
||||
status_bar:
|
||||
style: none
|
||||
cameras:
|
||||
- camera_entity: camera.frigate_cam07
|
||||
live_provider: go2rtc
|
||||
go2rtc:
|
||||
modes:
|
||||
- webrtc
|
||||
stream: rtsp_cam07_sub
|
||||
live:
|
||||
preload: true
|
||||
draggable: true
|
||||
show_image_during_load: false
|
||||
lazy_load: false
|
||||
controls:
|
||||
title:
|
||||
mode: none
|
||||
timeline:
|
||||
mode: none
|
||||
thumbnails:
|
||||
mode: none
|
||||
menu:
|
||||
buttons:
|
||||
frigate:
|
||||
enabled: false
|
||||
style: none
|
||||
media_viewer:
|
||||
draggable: false
|
||||
lazy_load: false
|
||||
dimensions:
|
||||
layout:
|
||||
fit: fill
|
||||
status_bar:
|
||||
style: none
|
||||
cameras:
|
||||
- camera_entity: camera.frigate_cam07
|
||||
live_provider: go2rtc
|
||||
go2rtc:
|
||||
modes:
|
||||
- webrtc
|
||||
stream: rtsp_cam07_sub
|
||||
live:
|
||||
preload: true
|
||||
draggable: true
|
||||
show_image_during_load: false
|
||||
lazy_load: false
|
||||
controls:
|
||||
title:
|
||||
mode: none
|
||||
timeline:
|
||||
mode: none
|
||||
thumbnails:
|
||||
mode: none
|
||||
menu:
|
||||
buttons:
|
||||
frigate:
|
||||
enabled: false
|
||||
style: none
|
||||
media_viewer:
|
||||
draggable: false
|
||||
lazy_load: false
|
||||
dimensions:
|
||||
aspect_ratio_mode: static
|
||||
aspect_ratio: '16:9'
|
||||
elements:
|
||||
- type: image
|
||||
image: /local/title-dark-double.png
|
||||
style:
|
||||
transform: initial
|
||||
top: 90%
|
||||
left: 0px
|
||||
width: 100%
|
||||
height: 10%
|
||||
opacity: 70%
|
||||
- type: image
|
||||
entity: camera.frigate_cam07
|
||||
image: /local/title-dark-double.png
|
||||
aspect_ratio: 100%
|
||||
tap_action:
|
||||
action: navigate
|
||||
navigation_path: /ai-yml/ai-cam07
|
||||
style:
|
||||
transform: initial
|
||||
top: 0px
|
||||
left: 0px
|
||||
width: 100%
|
||||
height: 100%
|
||||
opacity: 0%
|
||||
aspect_ratio_mode: static
|
||||
aspect_ratio: '16:9'
|
||||
elements:
|
||||
- type: image
|
||||
image: /local/title-dark-double.png
|
||||
style:
|
||||
transform: initial
|
||||
top: 90%
|
||||
left: 0px
|
||||
width: 100%
|
||||
height: 10%
|
||||
opacity: 70%
|
||||
- type: image
|
||||
entity: camera.frigate_cam07
|
||||
image: /local/title-dark-double.png
|
||||
aspect_ratio: 100%
|
||||
tap_action:
|
||||
action: navigate
|
||||
navigation_path: /ai-yml/ai-cam07
|
||||
style:
|
||||
transform: initial
|
||||
top: 0px
|
||||
left: 0px
|
||||
width: 100%
|
||||
height: 100%
|
||||
opacity: 0%
|
||||
|
||||
- type: state-icon
|
||||
entity: group.master_bedroom_motion
|
||||
style:
|
||||
left: 8%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: binary_sensor.frigate_cam07_speech_sound
|
||||
style:
|
||||
left: 30%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: sensor.master_bed_person_count
|
||||
style:
|
||||
left: 50%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: input_boolean.master_bedroom_occupied
|
||||
tap_action:
|
||||
action: toggle
|
||||
style:
|
||||
left: 70%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: binary_sensor.master_bedroom_occupied
|
||||
style:
|
||||
top: 95%
|
||||
left: 92%
|
||||
- type: state-icon
|
||||
entity: group.master_bedroom_motion
|
||||
style:
|
||||
left: 8%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: sensor.master_bed_person_count
|
||||
style:
|
||||
left: 50%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: input_boolean.master_bedroom_occupied
|
||||
tap_action:
|
||||
action: toggle
|
||||
style:
|
||||
left: 70%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: binary_sensor.master_bedroom_occupied
|
||||
style:
|
||||
top: 95%
|
||||
left: 92%
|
||||
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.master_bedroom_person_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.master_bedroom_person_occupancy
|
||||
style:
|
||||
top: 22%
|
||||
left: 90%
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.master_bed_person_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.master_bed_person_occupancy
|
||||
style:
|
||||
top: 50%
|
||||
left: 30%
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.master_bedroom_person_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.master_bedroom_person_occupancy
|
||||
style:
|
||||
top: 22%
|
||||
left: 90%
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.master_bed_person_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.master_bed_person_occupancy
|
||||
style:
|
||||
top: 50%
|
||||
left: 30%
|
||||
|
||||
@@ -1,203 +1,204 @@
|
||||
type: vertical-stack
|
||||
cards:
|
||||
- type: custom:advanced-camera-card
|
||||
cameras_global:
|
||||
type: conditional
|
||||
conditions:
|
||||
- condition: state
|
||||
entity: sensor.frigate_cam08_camera_fps
|
||||
state_not: "0"
|
||||
card:
|
||||
type: vertical-stack
|
||||
cards:
|
||||
- type: custom:advanced-camera-card
|
||||
cameras_global:
|
||||
dimensions:
|
||||
layout:
|
||||
fit: fill
|
||||
status_bar:
|
||||
style: none
|
||||
cameras:
|
||||
- camera_entity: camera.frigate_cam08
|
||||
live_provider: go2rtc
|
||||
go2rtc:
|
||||
modes:
|
||||
- webrtc
|
||||
stream: rtsp_cam08_sub
|
||||
live:
|
||||
preload: true
|
||||
draggable: true
|
||||
show_image_during_load: false
|
||||
lazy_load: false
|
||||
controls:
|
||||
title:
|
||||
mode: none
|
||||
timeline:
|
||||
mode: none
|
||||
thumbnails:
|
||||
mode: none
|
||||
menu:
|
||||
buttons:
|
||||
frigate:
|
||||
enabled: false
|
||||
style: none
|
||||
media_viewer:
|
||||
draggable: false
|
||||
lazy_load: false
|
||||
dimensions:
|
||||
layout:
|
||||
fit: fill
|
||||
status_bar:
|
||||
style: none
|
||||
cameras:
|
||||
- camera_entity: camera.frigate_cam08
|
||||
live_provider: go2rtc
|
||||
go2rtc:
|
||||
modes:
|
||||
- webrtc
|
||||
stream: rtsp_cam08_sub
|
||||
live:
|
||||
preload: true
|
||||
draggable: true
|
||||
show_image_during_load: false
|
||||
lazy_load: false
|
||||
controls:
|
||||
title:
|
||||
mode: none
|
||||
timeline:
|
||||
mode: none
|
||||
thumbnails:
|
||||
mode: none
|
||||
menu:
|
||||
buttons:
|
||||
frigate:
|
||||
enabled: false
|
||||
style: none
|
||||
media_viewer:
|
||||
draggable: false
|
||||
lazy_load: false
|
||||
dimensions:
|
||||
aspect_ratio_mode: static
|
||||
aspect_ratio: '16:9'
|
||||
elements:
|
||||
- type: image
|
||||
image: /local/title-dark-double.png
|
||||
style:
|
||||
transform: initial
|
||||
top: 90%
|
||||
left: 0px
|
||||
width: 100%
|
||||
height: 10%
|
||||
opacity: 70%
|
||||
- type: image
|
||||
entity: camera.frigate_cam08
|
||||
image: /local/title-dark-double.png
|
||||
aspect_ratio: 100%
|
||||
# tap_action:
|
||||
# action: navigate
|
||||
# navigation_path: /ai-yml/ai-cam08
|
||||
style:
|
||||
transform: initial
|
||||
top: 0px
|
||||
left: 0px
|
||||
width: 100%
|
||||
height: 100%
|
||||
opacity: 0%
|
||||
aspect_ratio_mode: static
|
||||
aspect_ratio: '16:9'
|
||||
elements:
|
||||
- type: image
|
||||
image: /local/title-dark-double.png
|
||||
style:
|
||||
transform: initial
|
||||
top: 90%
|
||||
left: 0px
|
||||
width: 100%
|
||||
height: 10%
|
||||
opacity: 70%
|
||||
- type: image
|
||||
entity: camera.frigate_cam08
|
||||
image: /local/title-dark-double.png
|
||||
aspect_ratio: 100%
|
||||
# tap_action:
|
||||
# action: navigate
|
||||
# navigation_path: /ai-yml/ai-cam08
|
||||
style:
|
||||
transform: initial
|
||||
top: 0px
|
||||
left: 0px
|
||||
width: 100%
|
||||
height: 100%
|
||||
opacity: 0%
|
||||
|
||||
- type: state-icon
|
||||
entity: group.nursery_motion
|
||||
style:
|
||||
left: 8%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: binary_sensor.frigate_cam08_speech_sound
|
||||
style:
|
||||
left: 24%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: binary_sensor.black_bed_occupied
|
||||
style:
|
||||
left: 40%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: binary_sensor.white_bed_occupied
|
||||
style:
|
||||
left: 60%
|
||||
top: 95%
|
||||
transform: scaleX(-1) translate(50%, -50%)
|
||||
- type: state-icon
|
||||
entity: input_boolean.nursery_occupied
|
||||
tap_action:
|
||||
action: toggle
|
||||
style:
|
||||
left: 76%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: binary_sensor.nursery_occupied
|
||||
style:
|
||||
top: 95%
|
||||
left: 92%
|
||||
- type: state-icon
|
||||
entity: group.nursery_motion
|
||||
style:
|
||||
left: 8%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: binary_sensor.black_bed_occupied
|
||||
style:
|
||||
left: 40%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: binary_sensor.white_bed_occupied
|
||||
style:
|
||||
left: 60%
|
||||
top: 95%
|
||||
transform: scaleX(-1) translate(50%, -50%)
|
||||
- type: state-icon
|
||||
entity: input_boolean.nursery_occupied
|
||||
tap_action:
|
||||
action: toggle
|
||||
style:
|
||||
left: 76%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: binary_sensor.nursery_occupied
|
||||
style:
|
||||
top: 95%
|
||||
left: 92%
|
||||
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.black_bed_person_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.black_bed_person_occupancy
|
||||
style:
|
||||
top: 30%
|
||||
left: 23%
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.black_bed_occupied
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.black_bed_occupied
|
||||
style:
|
||||
top: 30%
|
||||
left: 18%
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.white_bed_person_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.white_bed_person_occupancy
|
||||
style:
|
||||
top: 65%
|
||||
left: 85%
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.white_bed_occupied
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.white_bed_occupied
|
||||
style:
|
||||
top: 65%
|
||||
left: 80%
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.nursery_person_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.nursery_person_occupancy
|
||||
style:
|
||||
top: 50%
|
||||
left: 50%
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.black_bed_person_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.black_bed_person_occupancy
|
||||
style:
|
||||
top: 30%
|
||||
left: 23%
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.black_bed_occupied
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.black_bed_occupied
|
||||
style:
|
||||
top: 30%
|
||||
left: 18%
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.white_bed_person_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.white_bed_person_occupancy
|
||||
style:
|
||||
top: 65%
|
||||
left: 85%
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.white_bed_occupied
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.white_bed_occupied
|
||||
style:
|
||||
top: 65%
|
||||
left: 80%
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.nursery_person_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.nursery_person_occupancy
|
||||
style:
|
||||
top: 50%
|
||||
left: 50%
|
||||
|
||||
- type: state-icon
|
||||
entity: media_player.nursery_hub
|
||||
style:
|
||||
left: 45%
|
||||
top: 16%
|
||||
- type: state-icon
|
||||
entity: media_player.nursery_hub
|
||||
style:
|
||||
left: 45%
|
||||
top: 16%
|
||||
|
||||
- type: state-icon
|
||||
entity: light.nursery_ceiling_hue
|
||||
style:
|
||||
left: 50%
|
||||
top: 3%
|
||||
tap_action:
|
||||
action: toggle
|
||||
hold_action:
|
||||
action: more-info
|
||||
- type: state-icon
|
||||
entity: light.nursery_ceiling_hue
|
||||
style:
|
||||
left: 50%
|
||||
top: 3%
|
||||
tap_action:
|
||||
action: toggle
|
||||
hold_action:
|
||||
action: more-info
|
||||
|
||||
- type: state-icon
|
||||
entity: light.nursery_closet
|
||||
style:
|
||||
left: 80%
|
||||
top: 7%
|
||||
tap_action:
|
||||
action: toggle
|
||||
hold_action:
|
||||
action: more-info
|
||||
- type: state-icon
|
||||
entity: light.nursery_closet
|
||||
style:
|
||||
left: 80%
|
||||
top: 7%
|
||||
tap_action:
|
||||
action: toggle
|
||||
hold_action:
|
||||
action: more-info
|
||||
|
||||
- type: state-icon
|
||||
entity: light.black_bed_wled
|
||||
style:
|
||||
left: 8%
|
||||
top: 7%
|
||||
- type: state-icon
|
||||
entity: light.black_bed_wled
|
||||
style:
|
||||
left: 8%
|
||||
top: 7%
|
||||
|
||||
- type: state-icon
|
||||
entity: select.black_bed_wled_preset
|
||||
style:
|
||||
left: 8%
|
||||
top: 12%
|
||||
- type: state-icon
|
||||
entity: select.black_bed_wled_preset
|
||||
style:
|
||||
left: 8%
|
||||
top: 12%
|
||||
|
||||
- type: state-icon
|
||||
entity: light.white_bed_wled
|
||||
style:
|
||||
left: 98%
|
||||
top: 65%
|
||||
- type: state-icon
|
||||
entity: select.white_bed_wled_preset
|
||||
style:
|
||||
left: 98%
|
||||
top: 70%
|
||||
- type: state-icon
|
||||
entity: light.white_bed_wled
|
||||
style:
|
||||
left: 98%
|
||||
top: 65%
|
||||
- type: state-icon
|
||||
entity: select.white_bed_wled_preset
|
||||
style:
|
||||
left: 98%
|
||||
top: 70%
|
||||
|
||||
- type: state-icon
|
||||
entity: binary_sensor.nursery_closet_motion_switch_home_security_motion_detection
|
||||
style:
|
||||
left: 84%
|
||||
top: 22%
|
||||
- type: state-icon
|
||||
entity: binary_sensor.nursery_closet_motion_switch_home_security_motion_detection
|
||||
style:
|
||||
left: 84%
|
||||
top: 22%
|
||||
|
||||
@@ -1,122 +1,123 @@
|
||||
type: vertical-stack
|
||||
cards:
|
||||
- type: custom:advanced-camera-card
|
||||
cameras_global:
|
||||
type: conditional
|
||||
conditions:
|
||||
- condition: state
|
||||
entity: sensor.frigate_cam12_camera_fps
|
||||
state_not: "0"
|
||||
card:
|
||||
type: vertical-stack
|
||||
cards:
|
||||
- type: custom:advanced-camera-card
|
||||
cameras_global:
|
||||
dimensions:
|
||||
layout:
|
||||
fit: fill
|
||||
status_bar:
|
||||
style: none
|
||||
cameras:
|
||||
- camera_entity: camera.frigate_cam12
|
||||
live_provider: go2rtc
|
||||
go2rtc:
|
||||
modes:
|
||||
- webrtc
|
||||
stream: rtsp_cam12_sub
|
||||
live:
|
||||
preload: true
|
||||
draggable: true
|
||||
show_image_during_load: false
|
||||
lazy_load: false
|
||||
controls:
|
||||
title:
|
||||
mode: none
|
||||
timeline:
|
||||
mode: none
|
||||
thumbnails:
|
||||
mode: none
|
||||
menu:
|
||||
buttons:
|
||||
frigate:
|
||||
enabled: false
|
||||
style: none
|
||||
media_viewer:
|
||||
draggable: false
|
||||
lazy_load: false
|
||||
dimensions:
|
||||
layout:
|
||||
fit: fill
|
||||
status_bar:
|
||||
style: none
|
||||
cameras:
|
||||
- camera_entity: camera.frigate_cam12
|
||||
live_provider: go2rtc
|
||||
go2rtc:
|
||||
modes:
|
||||
- webrtc
|
||||
stream: rtsp_cam12_sub
|
||||
live:
|
||||
preload: true
|
||||
draggable: true
|
||||
show_image_during_load: false
|
||||
lazy_load: false
|
||||
controls:
|
||||
title:
|
||||
mode: none
|
||||
timeline:
|
||||
mode: none
|
||||
thumbnails:
|
||||
mode: none
|
||||
menu:
|
||||
buttons:
|
||||
frigate:
|
||||
enabled: false
|
||||
style: none
|
||||
media_viewer:
|
||||
draggable: false
|
||||
lazy_load: false
|
||||
dimensions:
|
||||
aspect_ratio_mode: static
|
||||
aspect_ratio: '16:9'
|
||||
elements:
|
||||
- type: image
|
||||
image: /local/title-dark-double.png
|
||||
style:
|
||||
transform: initial
|
||||
top: 90%
|
||||
left: 0px
|
||||
width: 100%
|
||||
height: 10%
|
||||
opacity: 70%
|
||||
- type: image
|
||||
entity: camera.frigate_cam12
|
||||
image: /local/title-dark-double.png
|
||||
aspect_ratio: 100%
|
||||
tap_action:
|
||||
action: navigate
|
||||
navigation_path: /ai-yml/ai-cam12
|
||||
style:
|
||||
transform: initial
|
||||
top: 0px
|
||||
left: 0px
|
||||
width: 100%
|
||||
height: 100%
|
||||
opacity: 0%
|
||||
aspect_ratio_mode: static
|
||||
aspect_ratio: '16:9'
|
||||
elements:
|
||||
- type: image
|
||||
image: /local/title-dark-double.png
|
||||
style:
|
||||
transform: initial
|
||||
top: 90%
|
||||
left: 0px
|
||||
width: 100%
|
||||
height: 10%
|
||||
opacity: 70%
|
||||
- type: image
|
||||
entity: camera.frigate_cam12
|
||||
image: /local/title-dark-double.png
|
||||
aspect_ratio: 100%
|
||||
tap_action:
|
||||
action: navigate
|
||||
navigation_path: /ai-yml/ai-cam12
|
||||
style:
|
||||
transform: initial
|
||||
top: 0px
|
||||
left: 0px
|
||||
width: 100%
|
||||
height: 100%
|
||||
opacity: 0%
|
||||
|
||||
- type: state-icon
|
||||
entity: group.kitchen_motion
|
||||
style:
|
||||
left: 8%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: binary_sensor.frigate_cam12_speech_sound
|
||||
style:
|
||||
left: 30%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: input_boolean.kitchen_occupied
|
||||
tap_action:
|
||||
action: toggle
|
||||
style:
|
||||
left: 70%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: binary_sensor.kitchen_occupied
|
||||
style:
|
||||
top: 95%
|
||||
left: 92%
|
||||
- type: state-icon
|
||||
entity: group.kitchen_motion
|
||||
style:
|
||||
left: 8%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: input_boolean.kitchen_occupied
|
||||
tap_action:
|
||||
action: toggle
|
||||
style:
|
||||
left: 70%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: binary_sensor.kitchen_occupied
|
||||
style:
|
||||
top: 95%
|
||||
left: 92%
|
||||
|
||||
- type: state-icon
|
||||
entity: binary_sensor.pantry_door_contact
|
||||
style:
|
||||
top: 29%
|
||||
left: 4%
|
||||
- type: state-icon
|
||||
entity: binary_sensor.pantry_door_contact
|
||||
style:
|
||||
top: 29%
|
||||
left: 4%
|
||||
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.dishwasher
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.dishwasher
|
||||
style:
|
||||
top: 47%
|
||||
left: 41%
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.dishwasher
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.dishwasher
|
||||
style:
|
||||
top: 47%
|
||||
left: 41%
|
||||
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.kitchen_person_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.kitchen_person_occupancy
|
||||
style:
|
||||
top: 70%
|
||||
left: 41%
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.kitchen_person_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.kitchen_person_occupancy
|
||||
style:
|
||||
top: 70%
|
||||
left: 41%
|
||||
|
||||
- type: state-icon
|
||||
entity: switch.shelly_sliding_glass_door
|
||||
style:
|
||||
top: 3%
|
||||
left: 55%
|
||||
tap_action:
|
||||
action: toggle
|
||||
- type: state-icon
|
||||
entity: switch.shelly_sliding_glass_door
|
||||
style:
|
||||
top: 3%
|
||||
left: 55%
|
||||
tap_action:
|
||||
action: toggle
|
||||
|
||||
@@ -1,125 +1,126 @@
|
||||
type: vertical-stack
|
||||
cards:
|
||||
- type: custom:advanced-camera-card
|
||||
cameras_global:
|
||||
type: conditional
|
||||
conditions:
|
||||
- condition: state
|
||||
entity: sensor.frigate_cam13_camera_fps
|
||||
state_not: "0"
|
||||
card:
|
||||
type: vertical-stack
|
||||
cards:
|
||||
- type: custom:advanced-camera-card
|
||||
cameras_global:
|
||||
dimensions:
|
||||
layout:
|
||||
fit: fill
|
||||
status_bar:
|
||||
style: none
|
||||
cameras:
|
||||
- camera_entity: camera.frigate_cam13
|
||||
live_provider: go2rtc
|
||||
go2rtc:
|
||||
modes:
|
||||
- webrtc
|
||||
stream: rtsp_cam13_sub
|
||||
live:
|
||||
preload: true
|
||||
draggable: true
|
||||
show_image_during_load: false
|
||||
lazy_load: false
|
||||
controls:
|
||||
title:
|
||||
mode: none
|
||||
timeline:
|
||||
mode: none
|
||||
thumbnails:
|
||||
mode: none
|
||||
menu:
|
||||
buttons:
|
||||
frigate:
|
||||
enabled: false
|
||||
style: none
|
||||
media_viewer:
|
||||
draggable: false
|
||||
lazy_load: false
|
||||
dimensions:
|
||||
layout:
|
||||
fit: fill
|
||||
status_bar:
|
||||
style: none
|
||||
cameras:
|
||||
- camera_entity: camera.frigate_cam13
|
||||
live_provider: go2rtc
|
||||
go2rtc:
|
||||
modes:
|
||||
- webrtc
|
||||
stream: rtsp_cam13_sub
|
||||
live:
|
||||
preload: true
|
||||
draggable: true
|
||||
show_image_during_load: false
|
||||
lazy_load: false
|
||||
controls:
|
||||
title:
|
||||
mode: none
|
||||
timeline:
|
||||
mode: none
|
||||
thumbnails:
|
||||
mode: none
|
||||
menu:
|
||||
buttons:
|
||||
frigate:
|
||||
enabled: false
|
||||
style: none
|
||||
media_viewer:
|
||||
draggable: false
|
||||
lazy_load: false
|
||||
dimensions:
|
||||
aspect_ratio_mode: static
|
||||
aspect_ratio: '16:9'
|
||||
elements:
|
||||
- type: image
|
||||
image: /local/title-dark-double.png
|
||||
style:
|
||||
transform: initial
|
||||
top: 90%
|
||||
left: 0px
|
||||
width: 100%
|
||||
height: 10%
|
||||
opacity: 70%
|
||||
- type: image
|
||||
entity: camera.frigate_cam13
|
||||
image: /local/title-dark-double.png
|
||||
aspect_ratio: 100%
|
||||
tap_action:
|
||||
action: navigate
|
||||
navigation_path: /ai-yml/ai-cam13
|
||||
style:
|
||||
transform: initial
|
||||
top: 0px
|
||||
left: 0px
|
||||
width: 100%
|
||||
height: 100%
|
||||
opacity: 0%
|
||||
aspect_ratio_mode: static
|
||||
aspect_ratio: '16:9'
|
||||
elements:
|
||||
- type: image
|
||||
image: /local/title-dark-double.png
|
||||
style:
|
||||
transform: initial
|
||||
top: 90%
|
||||
left: 0px
|
||||
width: 100%
|
||||
height: 10%
|
||||
opacity: 70%
|
||||
- type: image
|
||||
entity: camera.frigate_cam13
|
||||
image: /local/title-dark-double.png
|
||||
aspect_ratio: 100%
|
||||
tap_action:
|
||||
action: navigate
|
||||
navigation_path: /ai-yml/ai-cam13
|
||||
style:
|
||||
transform: initial
|
||||
top: 0px
|
||||
left: 0px
|
||||
width: 100%
|
||||
height: 100%
|
||||
opacity: 0%
|
||||
|
||||
- type: state-icon
|
||||
entity: group.front_room_motion
|
||||
style:
|
||||
left: 8%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: binary_sensor.frigate_cam13_speech_sound
|
||||
style:
|
||||
left: 30%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: sensor.dining_room_person_count
|
||||
style:
|
||||
left: 50%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: input_boolean.front_room_occupied
|
||||
tap_action:
|
||||
action: toggle
|
||||
style:
|
||||
left: 70%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: binary_sensor.front_room_occupied
|
||||
style:
|
||||
top: 95%
|
||||
left: 92%
|
||||
- type: state-icon
|
||||
entity: group.front_room_motion
|
||||
style:
|
||||
left: 8%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: sensor.dining_room_person_count
|
||||
style:
|
||||
left: 50%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: input_boolean.front_room_occupied
|
||||
tap_action:
|
||||
action: toggle
|
||||
style:
|
||||
left: 70%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: binary_sensor.front_room_occupied
|
||||
style:
|
||||
top: 95%
|
||||
left: 92%
|
||||
|
||||
- type: state-icon
|
||||
entity: binary_sensor.patio_door_contact
|
||||
style:
|
||||
top: 29%
|
||||
left: 4%
|
||||
- type: state-icon
|
||||
entity: binary_sensor.patio_door_contact
|
||||
style:
|
||||
top: 29%
|
||||
left: 4%
|
||||
|
||||
- type: state-icon
|
||||
entity: switch.shelly_sliding_glass_door
|
||||
style:
|
||||
top: 34%
|
||||
left: 4%
|
||||
- type: state-icon
|
||||
entity: switch.shelly_sliding_glass_door
|
||||
style:
|
||||
top: 34%
|
||||
left: 4%
|
||||
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.front_room_person_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.front_room_person_occupancy
|
||||
style:
|
||||
top: 55%
|
||||
left: 55%
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.front_room_person_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.front_room_person_occupancy
|
||||
style:
|
||||
top: 55%
|
||||
left: 55%
|
||||
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.dining_room_person_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.dining_room_person_occupancy
|
||||
style:
|
||||
top: 33%
|
||||
left: 20%
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.dining_room_person_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.dining_room_person_occupancy
|
||||
style:
|
||||
top: 33%
|
||||
left: 20%
|
||||
|
||||
@@ -1,112 +1,113 @@
|
||||
type: vertical-stack
|
||||
cards:
|
||||
- type: custom:advanced-camera-card
|
||||
cameras_global:
|
||||
type: conditional
|
||||
conditions:
|
||||
- condition: state
|
||||
entity: sensor.frigate_cam14_camera_fps
|
||||
state_not: "0"
|
||||
card:
|
||||
type: vertical-stack
|
||||
cards:
|
||||
- type: custom:advanced-camera-card
|
||||
cameras_global:
|
||||
dimensions:
|
||||
layout:
|
||||
fit: fill
|
||||
status_bar:
|
||||
style: none
|
||||
cameras:
|
||||
- camera_entity: camera.frigate_cam14
|
||||
live_provider: go2rtc
|
||||
go2rtc:
|
||||
modes:
|
||||
- webrtc
|
||||
stream: rtsp_cam14_sub
|
||||
live:
|
||||
preload: true
|
||||
draggable: true
|
||||
show_image_during_load: false
|
||||
lazy_load: false
|
||||
controls:
|
||||
title:
|
||||
mode: none
|
||||
timeline:
|
||||
mode: none
|
||||
thumbnails:
|
||||
mode: none
|
||||
menu:
|
||||
buttons:
|
||||
frigate:
|
||||
enabled: false
|
||||
style: none
|
||||
media_viewer:
|
||||
draggable: false
|
||||
lazy_load: false
|
||||
dimensions:
|
||||
layout:
|
||||
fit: fill
|
||||
status_bar:
|
||||
style: none
|
||||
cameras:
|
||||
- camera_entity: camera.frigate_cam14
|
||||
live_provider: go2rtc
|
||||
go2rtc:
|
||||
modes:
|
||||
- webrtc
|
||||
stream: rtsp_cam14_sub
|
||||
live:
|
||||
preload: true
|
||||
draggable: true
|
||||
show_image_during_load: false
|
||||
lazy_load: false
|
||||
controls:
|
||||
title:
|
||||
mode: none
|
||||
timeline:
|
||||
mode: none
|
||||
thumbnails:
|
||||
mode: none
|
||||
menu:
|
||||
buttons:
|
||||
frigate:
|
||||
enabled: false
|
||||
style: none
|
||||
media_viewer:
|
||||
draggable: false
|
||||
lazy_load: false
|
||||
dimensions:
|
||||
aspect_ratio_mode: static
|
||||
aspect_ratio: '16:9'
|
||||
elements:
|
||||
- type: image
|
||||
image: /local/title-dark-double.png
|
||||
style:
|
||||
transform: initial
|
||||
top: 90%
|
||||
left: 0px
|
||||
width: 100%
|
||||
height: 10%
|
||||
opacity: 70%
|
||||
- type: image
|
||||
entity: camera.frigate_cam14
|
||||
image: /local/title-dark-double.png
|
||||
aspect_ratio: 100%
|
||||
tap_action:
|
||||
action: navigate
|
||||
navigation_path: /ai-yml/ai-cam14
|
||||
style:
|
||||
transform: initial
|
||||
top: 0px
|
||||
left: 0px
|
||||
width: 100%
|
||||
height: 100%
|
||||
opacity: 0%
|
||||
aspect_ratio_mode: static
|
||||
aspect_ratio: '16:9'
|
||||
elements:
|
||||
- type: image
|
||||
image: /local/title-dark-double.png
|
||||
style:
|
||||
transform: initial
|
||||
top: 90%
|
||||
left: 0px
|
||||
width: 100%
|
||||
height: 10%
|
||||
opacity: 70%
|
||||
- type: image
|
||||
entity: camera.frigate_cam14
|
||||
image: /local/title-dark-double.png
|
||||
aspect_ratio: 100%
|
||||
tap_action:
|
||||
action: navigate
|
||||
navigation_path: /ai-yml/ai-cam14
|
||||
style:
|
||||
transform: initial
|
||||
top: 0px
|
||||
left: 0px
|
||||
width: 100%
|
||||
height: 100%
|
||||
opacity: 0%
|
||||
|
||||
- type: state-icon
|
||||
entity: group.back_yard_motion
|
||||
style:
|
||||
left: 8%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: binary_sensor.frigate_cam14_speech_sound
|
||||
style:
|
||||
left: 30%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: sensor.back_yard_animal_count
|
||||
style:
|
||||
left: 50%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: input_boolean.back_yard_occupied
|
||||
tap_action:
|
||||
action: toggle
|
||||
style:
|
||||
left: 70%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: binary_sensor.back_yard_occupied
|
||||
style:
|
||||
top: 95%
|
||||
left: 92%
|
||||
- type: state-icon
|
||||
entity: group.back_yard_motion
|
||||
style:
|
||||
left: 8%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: sensor.back_yard_animal_count
|
||||
style:
|
||||
left: 50%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: input_boolean.back_yard_occupied
|
||||
tap_action:
|
||||
action: toggle
|
||||
style:
|
||||
left: 70%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: binary_sensor.back_yard_occupied
|
||||
style:
|
||||
top: 95%
|
||||
left: 92%
|
||||
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.back_yard_person_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.back_yard_person_occupancy
|
||||
style:
|
||||
top: 45%
|
||||
left: 45%
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.back_yard_animal_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.back_yard_animal_occupancy
|
||||
style:
|
||||
top: 45%
|
||||
left: 55%
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.back_yard_person_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.back_yard_person_occupancy
|
||||
style:
|
||||
top: 45%
|
||||
left: 45%
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.back_yard_animal_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.back_yard_animal_occupancy
|
||||
style:
|
||||
top: 45%
|
||||
left: 55%
|
||||
|
||||
@@ -1,207 +1,208 @@
|
||||
type: vertical-stack
|
||||
cards:
|
||||
- type: custom:advanced-camera-card
|
||||
cameras_global:
|
||||
type: conditional
|
||||
conditions:
|
||||
- condition: state
|
||||
entity: sensor.frigate_cam18_camera_fps
|
||||
state_not: "0"
|
||||
card:
|
||||
type: vertical-stack
|
||||
cards:
|
||||
- type: custom:advanced-camera-card
|
||||
cameras_global:
|
||||
dimensions:
|
||||
layout:
|
||||
fit: fill
|
||||
status_bar:
|
||||
style: none
|
||||
cameras:
|
||||
- camera_entity: camera.frigate_cam18
|
||||
live_provider: go2rtc
|
||||
go2rtc:
|
||||
modes:
|
||||
- webrtc
|
||||
stream: rtsp_cam18_sub
|
||||
live:
|
||||
preload: true
|
||||
draggable: true
|
||||
show_image_during_load: true
|
||||
lazy_load: false
|
||||
controls:
|
||||
title:
|
||||
mode: none
|
||||
timeline:
|
||||
mode: none
|
||||
thumbnails:
|
||||
mode: none
|
||||
menu:
|
||||
buttons:
|
||||
frigate:
|
||||
enabled: false
|
||||
style: none
|
||||
media_viewer:
|
||||
draggable: false
|
||||
lazy_load: false
|
||||
dimensions:
|
||||
layout:
|
||||
fit: fill
|
||||
status_bar:
|
||||
style: none
|
||||
cameras:
|
||||
- camera_entity: camera.frigate_cam18
|
||||
live_provider: go2rtc
|
||||
go2rtc:
|
||||
modes:
|
||||
- webrtc
|
||||
stream: rtsp_cam18_sub
|
||||
live:
|
||||
preload: true
|
||||
draggable: true
|
||||
show_image_during_load: true
|
||||
lazy_load: false
|
||||
controls:
|
||||
title:
|
||||
mode: none
|
||||
timeline:
|
||||
mode: none
|
||||
thumbnails:
|
||||
mode: none
|
||||
menu:
|
||||
buttons:
|
||||
frigate:
|
||||
enabled: false
|
||||
style: none
|
||||
media_viewer:
|
||||
draggable: false
|
||||
lazy_load: false
|
||||
dimensions:
|
||||
aspect_ratio_mode: static
|
||||
aspect_ratio: '16:9'
|
||||
elements:
|
||||
- type: image
|
||||
image: /local/title-dark-double.png
|
||||
style:
|
||||
transform: initial
|
||||
top: 90%
|
||||
left: 0px
|
||||
width: 100%
|
||||
height: 10%
|
||||
opacity: 70%
|
||||
- type: image
|
||||
entity: camera.frigate_cam18
|
||||
image: /local/title-dark-double.png
|
||||
aspect_ratio: 100%
|
||||
tap_action:
|
||||
action: navigate
|
||||
navigation_path: /ai-yml/ai-cam18
|
||||
style:
|
||||
transform: initial
|
||||
top: 0px
|
||||
left: 0px
|
||||
width: 100%
|
||||
height: 100%
|
||||
opacity: 0%
|
||||
aspect_ratio_mode: static
|
||||
aspect_ratio: '16:9'
|
||||
elements:
|
||||
- type: image
|
||||
image: /local/title-dark-double.png
|
||||
style:
|
||||
transform: initial
|
||||
top: 90%
|
||||
left: 0px
|
||||
width: 100%
|
||||
height: 10%
|
||||
opacity: 70%
|
||||
- type: image
|
||||
entity: camera.frigate_cam18
|
||||
image: /local/title-dark-double.png
|
||||
aspect_ratio: 100%
|
||||
tap_action:
|
||||
action: navigate
|
||||
navigation_path: /ai-yml/ai-cam18
|
||||
style:
|
||||
transform: initial
|
||||
top: 0px
|
||||
left: 0px
|
||||
width: 100%
|
||||
height: 100%
|
||||
opacity: 0%
|
||||
|
||||
- type: state-icon
|
||||
entity: binary_sensor.front_yard_person_occupancy
|
||||
style:
|
||||
left: 8%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: binary_sensor.frigate_cam18_speech_sound
|
||||
style:
|
||||
left: 30%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: binary_sensor.front_yard_person_occupancy
|
||||
style:
|
||||
left: 8%
|
||||
top: 95%
|
||||
|
||||
- type: state-icon
|
||||
entity: binary_sensor.frigate_cam18_vehicle_occupancy
|
||||
style:
|
||||
left: 50%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: input_boolean.front_yard_occupied
|
||||
tap_action:
|
||||
action: toggle
|
||||
style:
|
||||
left: 70%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: cover.garage_door
|
||||
style:
|
||||
top: 95%
|
||||
left: 92%
|
||||
- type: state-icon
|
||||
entity: binary_sensor.frigate_cam18_vehicle_occupancy
|
||||
style:
|
||||
left: 50%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: input_boolean.front_yard_occupied
|
||||
tap_action:
|
||||
action: toggle
|
||||
style:
|
||||
left: 70%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: cover.garage_door
|
||||
style:
|
||||
top: 95%
|
||||
left: 92%
|
||||
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.driveway_east_side_vehicle_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.driveway_east_side_vehicle_occupancy
|
||||
style:
|
||||
top: 35%
|
||||
left: 65%
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.driveway_east_side_vehicle_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.driveway_east_side_vehicle_occupancy
|
||||
style:
|
||||
top: 35%
|
||||
left: 65%
|
||||
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.driveway_center_vehicle_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.driveway_center_vehicle_occupancy
|
||||
style:
|
||||
top: 45%
|
||||
left: 55%
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.driveway_center_vehicle_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.driveway_center_vehicle_occupancy
|
||||
style:
|
||||
top: 45%
|
||||
left: 55%
|
||||
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.driveway_west_side_vehicle_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.driveway_west_side_vehicle_occupancy
|
||||
style:
|
||||
top: 55%
|
||||
left: 45%
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.driveway_west_side_vehicle_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.driveway_west_side_vehicle_occupancy
|
||||
style:
|
||||
top: 55%
|
||||
left: 45%
|
||||
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.parking_spot_vehicle_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.parking_spot_vehicle_occupancy
|
||||
style:
|
||||
top: 35%
|
||||
left: 2%
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.parking_spot_vehicle_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.parking_spot_vehicle_occupancy
|
||||
style:
|
||||
top: 35%
|
||||
left: 2%
|
||||
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.from_street_vehicle_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.from_street_vehicle_occupancy
|
||||
style:
|
||||
top: 17%
|
||||
left: 12%
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.from_street_vehicle_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.from_street_vehicle_occupancy
|
||||
style:
|
||||
top: 17%
|
||||
left: 12%
|
||||
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.from_street_person_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.from_street_person_occupancy
|
||||
style:
|
||||
top: 17%
|
||||
left: 17%
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.from_street_person_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.from_street_person_occupancy
|
||||
style:
|
||||
top: 17%
|
||||
left: 17%
|
||||
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.front_porch_person_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.front_porch_person_occupancy
|
||||
style:
|
||||
top: 32%
|
||||
left: 97%
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.front_porch_person_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.front_porch_person_occupancy
|
||||
style:
|
||||
top: 32%
|
||||
left: 97%
|
||||
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.front_yard_person_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.front_yard_person_occupancy
|
||||
style:
|
||||
top: 12%
|
||||
left: 76%
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.front_yard_person_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.front_yard_person_occupancy
|
||||
style:
|
||||
top: 12%
|
||||
left: 76%
|
||||
|
||||
# - type: conditional
|
||||
# conditions:
|
||||
# - entity: binary_sensor.front_yard_animal_occupancy
|
||||
# state: "on"
|
||||
# elements:
|
||||
# - type: state-icon
|
||||
# entity: binary_sensor.front_yard_animal_occupancy
|
||||
# style:
|
||||
# top: 12%
|
||||
# left: 71%
|
||||
# - type: conditional
|
||||
# conditions:
|
||||
# - entity: binary_sensor.front_yard_animal_occupancy
|
||||
# state: "on"
|
||||
# elements:
|
||||
# - type: state-icon
|
||||
# entity: binary_sensor.front_yard_animal_occupancy
|
||||
# style:
|
||||
# top: 12%
|
||||
# left: 71%
|
||||
|
||||
- type: state-icon
|
||||
entity: light.front_porch_overhead
|
||||
style:
|
||||
top: 12%
|
||||
left: 98%
|
||||
tap_action:
|
||||
action: toggle
|
||||
- type: state-icon
|
||||
entity: light.front_porch_overhead
|
||||
style:
|
||||
top: 12%
|
||||
left: 98%
|
||||
tap_action:
|
||||
action: toggle
|
||||
|
||||
- type: state-icon
|
||||
entity: light.driveway
|
||||
style:
|
||||
top: 80%
|
||||
left: 98%
|
||||
tap_action:
|
||||
action: toggle
|
||||
- type: state-icon
|
||||
entity: light.driveway
|
||||
style:
|
||||
top: 80%
|
||||
left: 98%
|
||||
tap_action:
|
||||
action: toggle
|
||||
@@ -1,188 +1,189 @@
|
||||
type: vertical-stack
|
||||
cards:
|
||||
- type: custom:advanced-camera-card
|
||||
cameras_global:
|
||||
type: conditional
|
||||
conditions:
|
||||
- condition: state
|
||||
entity: sensor.frigate_cam19_camera_fps
|
||||
state_not: "0"
|
||||
card:
|
||||
type: vertical-stack
|
||||
cards:
|
||||
- type: custom:advanced-camera-card
|
||||
cameras_global:
|
||||
dimensions:
|
||||
layout:
|
||||
fit: fill
|
||||
status_bar:
|
||||
style: none
|
||||
cameras:
|
||||
- camera_entity: camera.frigate_cam19
|
||||
live_provider: go2rtc
|
||||
go2rtc:
|
||||
modes:
|
||||
- webrtc
|
||||
stream: rtsp_cam19_sub
|
||||
live:
|
||||
preload: true
|
||||
draggable: true
|
||||
show_image_during_load: true
|
||||
lazy_load: false
|
||||
controls:
|
||||
title:
|
||||
mode: none
|
||||
timeline:
|
||||
mode: none
|
||||
thumbnails:
|
||||
mode: none
|
||||
menu:
|
||||
buttons:
|
||||
frigate:
|
||||
enabled: false
|
||||
style: none
|
||||
media_viewer:
|
||||
draggable: false
|
||||
lazy_load: false
|
||||
dimensions:
|
||||
layout:
|
||||
fit: fill
|
||||
status_bar:
|
||||
style: none
|
||||
cameras:
|
||||
- camera_entity: camera.frigate_cam19
|
||||
live_provider: go2rtc
|
||||
go2rtc:
|
||||
modes:
|
||||
- webrtc
|
||||
stream: rtsp_cam19_sub
|
||||
live:
|
||||
preload: true
|
||||
draggable: true
|
||||
show_image_during_load: true
|
||||
lazy_load: false
|
||||
controls:
|
||||
title:
|
||||
mode: none
|
||||
timeline:
|
||||
mode: none
|
||||
thumbnails:
|
||||
mode: none
|
||||
menu:
|
||||
buttons:
|
||||
frigate:
|
||||
enabled: false
|
||||
style: none
|
||||
media_viewer:
|
||||
draggable: false
|
||||
lazy_load: false
|
||||
dimensions:
|
||||
aspect_ratio_mode: static
|
||||
aspect_ratio: '16:9'
|
||||
elements:
|
||||
- type: image
|
||||
image: /local/title-dark-double.png
|
||||
style:
|
||||
transform: initial
|
||||
top: 90%
|
||||
left: 0px
|
||||
width: 100%
|
||||
height: 10%
|
||||
opacity: 70%
|
||||
- type: image
|
||||
entity: camera.frigate_cam19
|
||||
image: /local/title-dark-double.png
|
||||
aspect_ratio: 100%
|
||||
tap_action:
|
||||
action: navigate
|
||||
navigation_path: /ai-yml/ai-cam19
|
||||
style:
|
||||
transform: initial
|
||||
top: 0px
|
||||
left: 0px
|
||||
width: 100%
|
||||
height: 100%
|
||||
opacity: 0%
|
||||
aspect_ratio_mode: static
|
||||
aspect_ratio: '16:9'
|
||||
elements:
|
||||
- type: image
|
||||
image: /local/title-dark-double.png
|
||||
style:
|
||||
transform: initial
|
||||
top: 90%
|
||||
left: 0px
|
||||
width: 100%
|
||||
height: 10%
|
||||
opacity: 70%
|
||||
- type: image
|
||||
entity: camera.frigate_cam19
|
||||
image: /local/title-dark-double.png
|
||||
aspect_ratio: 100%
|
||||
tap_action:
|
||||
action: navigate
|
||||
navigation_path: /ai-yml/ai-cam19
|
||||
style:
|
||||
transform: initial
|
||||
top: 0px
|
||||
left: 0px
|
||||
width: 100%
|
||||
height: 100%
|
||||
opacity: 0%
|
||||
|
||||
- type: state-icon
|
||||
entity: binary_sensor.front_porch_person_occupancy
|
||||
style:
|
||||
left: 8%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: binary_sensor.frigate_cam19_speech_sound
|
||||
style:
|
||||
left: 30%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: binary_sensor.frigate_cam19_vehicle_occupancy
|
||||
style:
|
||||
left: 50%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: input_boolean.front_porch_occupied
|
||||
tap_action:
|
||||
action: toggle
|
||||
style:
|
||||
left: 70%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: input_boolean.doorbell
|
||||
style:
|
||||
top: 95%
|
||||
left: 92%
|
||||
- type: state-icon
|
||||
entity: binary_sensor.front_porch_person_occupancy
|
||||
style:
|
||||
left: 8%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: binary_sensor.frigate_cam19_vehicle_occupancy
|
||||
style:
|
||||
left: 50%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: input_boolean.front_porch_occupied
|
||||
tap_action:
|
||||
action: toggle
|
||||
style:
|
||||
left: 70%
|
||||
top: 95%
|
||||
- type: state-icon
|
||||
entity: input_boolean.doorbell
|
||||
style:
|
||||
top: 95%
|
||||
left: 92%
|
||||
|
||||
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.driveway_center_vehicle_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.driveway_center_vehicle_occupancy
|
||||
style:
|
||||
top: 60%
|
||||
left: 14%
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.driveway_center_vehicle_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.driveway_center_vehicle_occupancy
|
||||
style:
|
||||
top: 60%
|
||||
left: 14%
|
||||
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.driveway_east_side_vehicle_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.driveway_east_side_vehicle_occupancy
|
||||
style:
|
||||
top: 60%
|
||||
left: 20%
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.driveway_east_side_vehicle_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.driveway_east_side_vehicle_occupancy
|
||||
style:
|
||||
top: 60%
|
||||
left: 20%
|
||||
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.parking_spot_vehicle_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.parking_spot_vehicle_occupancy
|
||||
style:
|
||||
top: 52%
|
||||
left: 15%
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.parking_spot_vehicle_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.parking_spot_vehicle_occupancy
|
||||
style:
|
||||
top: 52%
|
||||
left: 15%
|
||||
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.from_street_vehicle_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.from_street_vehicle_occupancy
|
||||
style:
|
||||
top: 50%
|
||||
left: 40%
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.from_street_vehicle_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.from_street_vehicle_occupancy
|
||||
style:
|
||||
top: 50%
|
||||
left: 40%
|
||||
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.from_street_person_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.from_street_person_occupancy
|
||||
style:
|
||||
top: 53%
|
||||
left: 37%
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.from_street_person_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.from_street_person_occupancy
|
||||
style:
|
||||
top: 53%
|
||||
left: 37%
|
||||
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.front_porch_person_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.front_porch_person_occupancy
|
||||
style:
|
||||
top: 88%
|
||||
left: 37%
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.front_porch_person_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.front_porch_person_occupancy
|
||||
style:
|
||||
top: 88%
|
||||
left: 37%
|
||||
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.front_yard_person_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.front_yard_person_occupancy
|
||||
style:
|
||||
top: 60%
|
||||
left: 65%
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.front_yard_person_occupancy
|
||||
state: "on"
|
||||
elements:
|
||||
- type: state-icon
|
||||
entity: binary_sensor.front_yard_person_occupancy
|
||||
style:
|
||||
top: 60%
|
||||
left: 65%
|
||||
|
||||
# - type: conditional
|
||||
# conditions:
|
||||
# - entity: binary_sensor.front_yard_animal_occupancy
|
||||
# state: "on"
|
||||
# elements:
|
||||
# - type: state-icon
|
||||
# entity: binary_sensor.front_yard_animal_occupancy
|
||||
# style:
|
||||
# top: 60%
|
||||
# left: 70%
|
||||
# - type: conditional
|
||||
# conditions:
|
||||
# - entity: binary_sensor.front_yard_animal_occupancy
|
||||
# state: "on"
|
||||
# elements:
|
||||
# - type: state-icon
|
||||
# entity: binary_sensor.front_yard_animal_occupancy
|
||||
# style:
|
||||
# top: 60%
|
||||
# left: 70%
|
||||
|
||||
- type: state-icon
|
||||
entity: light.front_porch_overhead
|
||||
style:
|
||||
top: 3%
|
||||
left: 50%
|
||||
tap_action:
|
||||
action: toggle
|
||||
- type: state-icon
|
||||
entity: light.front_porch_overhead
|
||||
style:
|
||||
top: 3%
|
||||
left: 50%
|
||||
tap_action:
|
||||
action: toggle
|
||||
@@ -35,7 +35,7 @@ elements:
|
||||
# left: 60%
|
||||
# top: 9%
|
||||
- type: state-icon
|
||||
entity: group.traverse
|
||||
entity: device_tracker.chevrolet_traverse_location
|
||||
style:
|
||||
left: 68%
|
||||
top: 9%
|
||||
@@ -123,9 +123,8 @@ elements:
|
||||
action: toggle
|
||||
hold_action:
|
||||
action: more-info
|
||||
|
||||
# 12,31,50,69,88
|
||||
# 14,38,62,86
|
||||
# 25,50,75
|
||||
# 33,66
|
||||
# 50
|
||||
# 50
|
||||
|
||||
@@ -1182,10 +1182,6 @@ cards:
|
||||
action: toggle
|
||||
hold_action:
|
||||
action: more-info
|
||||
- entity: switch.deck_power_plug
|
||||
name: Deck Plug
|
||||
state_filter:
|
||||
- "off"
|
||||
- entity: switch.outdoor_power_monitor_plug
|
||||
name: Outdoor PM Plug
|
||||
state_filter:
|
||||
|
||||
Reference in New Issue
Block a user