[Carte] Mise en forme de room-card avec mushroom et tutos

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 :

  1. je click sur une icone
  2. ça active un input.boolean
  3. j’asservis la visibilté a l’etat du boolean
  4. 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