pas pour tous les boutons, juste certains ou j’ai besoin d’afficher de l’info complementaire ou par exemple un webrtc de camera sans que ça bouffe tout mon dashobard.
L’obectif c’est que tout le dashobard tienne sur une seule page
voila un exemple :
- je click sur une icone
- ça active un input.boolean
- j’asservis la visibilté a l’etat du boolean
- je lance un timer qui referme le bolean au bout de 30 secondes => le dashboard revient a l’intial
type: custom:stack-in-card
mode: vertical
keep:
margin: true
cards:
- type: custom:mushroom-chips-card
chips:
- type: template
entity: lock.serrure_entree
icon: >-
{{ (is_state('binary_sensor.serrure_entree_door_sensor','on'))
|iif('mdi:door-open','mdi:door-closed') }}
icon_color: >-
{{ (is_state('lock.serrure_entree','locked'))
|iif('green','red') }}
tap_action:
action: more-info
hold_action:
action: none
double_tap_action:
action: none
- type: entity
entity: sensor.capteur_temperature_salon_temperature
icon_color: deep-orange
tap_action:
action: more-info
hold_action:
action: none
double_tap_action:
action: none
- type: entity
entity: sensor.capteur_temperature_salon_humidity
icon_color: light-blue
tap_action:
action: more-info
hold_action:
action: none
double_tap_action:
action: none
- type: entity
entity: sensor.prise_b_o_power
icon_color: yellow
icon: mdi:speaker
tap_action:
action: more-info
hold_action:
action: none
double_tap_action:
action: none
- type: entity
entity: sensor.prise_poele_power
icon_color: yellow
icon: mdi:fireplace
tap_action:
action: more-info
hold_action:
action: none
double_tap_action:
action: none
- type: custom:mushroom-chips-card
chips:
- type: template
icon: mdi:fireplace
entity: climate.poele
icon_color: >-
{{ (states('sensor.prise_poele_power')|int(0) > 0) |
iif('deep-orange', 'lightgrey') }}
tap_action:
action: perform-action
perform_action: input_boolean.toggle
target:
entity_id: input_boolean.toggle_lovelace_salon_poele
hold_action:
action: navigate
navigation_path: poele
double_tap_action:
action: none
- type: template
entity: fan.ventilateur_salon
tap_action:
action: more-info
icon: >-
{{ (states('fan.ventilateur_salon') == 'on')
|iif('mdi:fan','mdi:fan-off') }}
icon_color: >-
{{ (states('light.ventilateur_salon') == 'on')
|iif('yellow','lightgrey') }}
hold_action:
action: perform-action
perform_action: light.toggle
target:
entity_id: light.ventilateur_salon
double_tap_action:
action: none
- type: template
tap_action:
action: more-info
hold_action:
action: none
double_tap_action:
action: none
entity: cover.bso_salon
icon: >-
{{ (states('cover.bso_salon') == 'open') |
iif('mdi:blinds-horizontal', 'mdi:blinds-horizontal-closed') }}
content: ""
icon_color: "{{ (states('cover.bso_salon') == 'open') | iif('blue', 'lightgrey') }}"
- type: template
tap_action:
action: more-info
hold_action:
action: none
double_tap_action:
action: none
entity: cover.vr_tele
icon: >-
{{ (states('cover.vr_tele') == 'open') |
iif('mdi:window-shutter-open', 'mdi:window-shutter') }}
content: ""
icon_color: "{{ (states('cover.vr_tele') == 'open') | iif('blue', 'lightgrey') }}"
- type: template
tap_action:
action: more-info
hold_action:
action: none
double_tap_action:
action: none
entity: cover.vr_bibliotheque
icon: >-
{{ (states('cover.vr_bibliotheque') == 'open') |
iif('mdi:window-shutter-open', 'mdi:window-shutter') }}
content: ""
icon_color: >-
{{ (states('cover.vr_bibliotheque') == 'open') | iif('blue',
'lightgrey') }}
- type: light
entity: light.grande_lampe_salon
tap_action:
action: more-info
hold_action:
action: toggle
double_tap_action:
action: none
use_light_color: true
content_info: none
- type: light
entity: light.petite_lampe_salon
tap_action:
action: more-info
hold_action:
action: toggle
double_tap_action:
action: none
use_light_color: true
content_info: none
alignment: end
card_mod:
style: |
ha-card {
position: relative;
overflow: hidden;
}
ha-card::before {
content: "";
position: absolute;
inset: 0;
z-index: 0;
background-image: url('/api/image/serve/b30a9a5a8a6547da1d17dc1689525d3d/512x512');
background-size: 100%;
background-position: center;
background-repeat: no-repeat;
opacity: 0.5;
pointer-events: none;
}
ha-card > * {
position: relative;
z-index: 1;
opacity: 0.9;
}
et les sous-cartes :
type: custom:bubble-card
card_type: climate
entity: climate.poele
sub_button:
main:
- name: HVAC modes menu
select_attribute: hvac_modes
state_background: true
show_arrow: false
sub_button_type: select
- entity: climate.poele
select_attribute: preset_modes
state_background: false
show_background: true
sub_button_type: select
bottom: []
show_last_changed: false
show_state: false
state_color: false
show_name: true
card_layout: normal
show_icon: true
scrolling_effect: false
show_attribute: true
attribute: current_temperature
visibility:
- condition: state
entity: input_boolean.toggle_lovelace_salon_poele
state: "on"
double_tap_action:
action: none
hold_action:
action: more-info
tap_action:
action: none
type: entities
entities:
- entity: timer.minuteur_poele_mode_continu
type: custom:timer-bar-card
state_color: true
name: Mode Continu
icon: mdi:fire-alert
- type: buttons
entities:
- entity: automation.destratification_chauffage
show_name: true
name: Destrat.
icon: mdi:ceiling-fan
- entity: switch.schedule_planning_temperatures
show_name: true
name: Prog.
icon: mdi:calendar-text
- entity: switch.poele_mode_chauffe_continue_2
show_name: true
name: Continu
icon: mdi:fire-alert
visibility:
- condition: state
entity: input_boolean.toggle_lovelace_salon_poele
state: "on"
et le bout d’autom :
trigger: state
entity_id:
- input_boolean.toggle_lovelace_salon_poele
to: "on"
for:
hours: 0
minutes: 0
seconds: "{{states('input_number.visibilite_cartes')|int(30)}}"
id: salon poele
actions:
- choose:
- conditions:
- condition: trigger
id:
- salon poele
sequence:
- action: input_boolean.turn_off
metadata: {}
data: {}
target:
entity_id:
- input_boolean.toggle_lovelace_salon_poele