[Article] Un beau dashboard, tout simplement

100% d’accord.

  • J’attend de voir comment ça évolue pour supprimer card/mod et stack-in-card dans mes room cards comme dit plus haut.
  • J’attends les prochaines évolutions de la tuile pour essayer de virer définitivement bar-card
  • Je me force de plus en plus à utiliser des cartes core partout où ce n’est pas indispensable de passer par du custom (et souvent c’est largement possible)
  • Je regarde ce qui se fait du coté des dashboards automatiques et j’essaie de les utiliser, au final il me manque quelques trucs que j’ai sur mon dashboard perso: Pronote, la gestion des updates, mon interface perso pour la gestion de la PAC, les devices trackers pour voir qui est connecté au wifi, la localisation des gens.
    Des trucs qui au final pourraient être traités via un dashboard parallèle à un dashboard par défaut si on est un peu malin et qu’on joue avec quelques entités templates bien placées…

J’aimerai à terme ne garder que Mushroom (pour des tuiles « template ») et être ~100% core sur le reste, je n’en suis pas si loin…

On peut faire des trucs jolis avec cette carte tuile si on s’applique un peu, un exemple marrant (avec custom features donc pas 100% core non plus, mais 100% compatible du look core): une carte pour envoyer de la musique sur un groupe d’enceinte (sans commande vocale sinon c’est pas drôle !)

image

Code de la carte
type: tile
features_position: bottom
vertical: false
entity: input_text.alexa_text_input
grid_options:
  columns: 12
  rows: 1
icon: mdi:play
icon_tap_action:
  action: perform-action
  perform_action: script.toggle
  target:
    entity_id: script.play_music_on_group
name: Quelle musique ?
features:
  - type: custom:service-call
    entries:
      - type: selector
        entity_id: input_select.groupes_d_enceintes
        options:
          - entity_id: input_select.groupes_d_enceintes
            option: Partout
            tap_action:
              action: perform-action
              perform_action: input_select.select_option
              data:
                option: Partout
              target:
                entity_id: input_select.groupes_d_enceintes
            label: Partout
            icon: ""
          - entity_id: input_select.groupes_d_enceintes
            option: Salon et cuisine
            tap_action:
              action: perform-action
              perform_action: input_select.select_option
              data:
                option: Salon et cuisine
              target:
                entity_id: input_select.groupes_d_enceintes
            label: Salon et cuisine
          - entity_id: input_select.groupes_d_enceintes
            option: Rez de chaussée
            tap_action:
              action: perform-action
              perform_action: input_select.select_option
              data:
                option: Rez de chaussée
              target:
                entity_id: input_select.groupes_d_enceintes
            label: Rez de Chaussée
          - entity_id: input_select.groupes_d_enceintes
            option: Etage
            tap_action:
              action: perform-action
              perform_action: input_select.select_option
              data:
                option: Etage
              target:
                entity_id: input_select.groupes_d_enceintes
            label: Etage

J’utilise un input text (via le pop up more info pour le modifier en cliquant sur la carte en dehors de l’icone et des groupes).
J’ai aussi un input-select qui permet de choisir le bon groupe d’enceinte (via une custom-feature pour un look tout en un)

On l’utilise en 3 clics: 1 clic pour modifier l’input-text, puis 1 clic de selection du groupe, puis 1 clic sur l’icone “play”.
Ca lance un script script.play_music_on_group qui lance la commande custom à Alexa: “Joue (input_text) sur le groupe (input_select)”.

code du script
alias: play music on group
sequence:
  - action: media_player.play_media
    data:
      media:
        media_content_id: >-
          joue {{ states('input_text.alexa_text_input')}} sur le groupe {{
          states('input_select.groupes_d_enceintes')}}
        media_content_type: custom
        metadata: {}
    target:
      entity_id: media_player.echo_jeanne
mode: single
icon: mdi:music