# Automatisation - Mise du couvert

**URL:** <https://forum.hacf.fr/t/automatisation-mise-du-couvert/72057>\
**Category:** Automatisation / Scène / Script / BluePrint\
**Tags:** automatisation-automation\
**Created:** [Décembre 13, 2025, 2:02 UTC](https://forum.hacf.fr/t/automatisation-mise-du-couvert/72057 "2025-12-13T14:02:07Z")\
**Posts on this page:** 11\
**Page:** 1

<div class="post-metadata">

**Author:** ![bartounet](https://forum.hacf.fr/user_avatar/forum.hacf.fr/bartounet/32/119246_2.png) [@bartounet](https://forum.hacf.fr/u/bartounet)\
**Post date:** [Décembre 13, 2025, 2:02 UTC](https://forum.hacf.fr/t/automatisation-mise-du-couvert/72057/1 "2025-12-13T14:02:07Z")

</div>

Bonjour,  
Je partage mon automatisation pour l’annonce de qui doit mettre le couvert à la maison  
Attention ce n’est pas de l’esclavage, mais avec ça pas de discution 🙂

J’avoue avoir un peu transcrit mon scénario Jeedom, en HA  
Et je me suis aidé des premières automatisations faites avec @Pulpy-Luke merci à lui  
A voir si il y a plus efficace 🙂

```auto
alias: ENFANT-COUVERT
description: >-
  Annonce vocale qui dit qui doit mettre le couvert Vacances, week-end ou
  mercredi : Lisa à midi, Adam le soir. Hors vacances (jours normaux) : Lisa le
  lundi et jeudi, Adam le mardi et vendredi (uniquement le soir).
triggers:
  - at:
      - "12:00:00"
      - "19:00:00"
    trigger: time
actions:
  - variables:
      is_vacances: "{{ is_state('sensor.vacances_scolaires_aujourd_hui_zone_a', 'on') }}"
      is_weekend: "{{ now().weekday() in [5,6] }}"
      is_mercredi: "{{ now().weekday() == 2 }}"
      heure: "{{ now().strftime('%H:%M') }}"
      jour: "{{ now().weekday() }}"
  - choose:
      - conditions:
          - condition: template
            value_template: |
              {{ is_vacances or is_weekend or is_mercredi }}
        sequence:
          - choose:
              - conditions:
                  - condition: template
                    value_template: "{{ heure <= '14:00' }}"
                sequence:
                  - alias: Midi-lisa
                    action: tts.speak
                    target:
                      entity_id: tts.google_translate_fr_fr
                    data:
                      cache: true
                      media_player_entity_id: media_player.googlehome5583
                      message: Bonjour, ce midi Lisa doit mettre le couvert
              - conditions:
                  - condition: template
                    value_template: "{{ heure >= '14:00' }}"
                sequence:
                  - alias: Soir-Adam
                    action: tts.speak
                    target:
                      entity_id: tts.google_translate_fr_fr
                    data:
                      cache: true
                      media_player_entity_id: media_player.googlehome5583
                      message: Bonsoir, ce soir Adam doit mettre le couvert
      - conditions:
          - condition: template
            value_template: |
              {{ not is_vacances and not is_weekend and not is_mercredi }}
        sequence:
          - choose:
              - conditions:
                  - condition: template
                    value_template: "{{ jour == 0 }}"
                sequence:
                  - alias: Soir-Lisa
                    action: tts.speak
                    target:
                      entity_id: tts.google_translate_fr_fr
                    data:
                      cache: true
                      media_player_entity_id: media_player.googlehome5583
                      message: Bonsoir , Ce soir LISA doit mettre le couvert
              - conditions:
                  - condition: template
                    value_template: "{{ jour == 1 }}"
                sequence:
                  - alias: Soir-Adam
                    action: tts.speak
                    target:
                      entity_id: tts.google_translate_fr_fr
                    data:
                      cache: true
                      media_player_entity_id: media_player.googlehome5583
                      message: Bonsoir , Ce soir Adam doit mettre le couvert
              - conditions:
                  - condition: template
                    value_template: "{{ jour == 3 }}"
                sequence:
                  - alias: Soir-Lisa
                    action: tts.speak
                    target:
                      entity_id: tts.google_translate_fr_fr
                    data:
                      cache: true
                      media_player_entity_id: media_player.googlehome5583
                      message: Bonsoir , Ce soir LISA doit mettre le couvert
              - conditions:
                  - condition: template
                    value_template: "{{ jour == 4 }}"
                sequence:
                  - alias: Soir-Adam
                    action: tts.speak
                    target:
                      entity_id: tts.google_translate_fr_fr
                    data:
                      cache: true
                      media_player_entity_id: media_player.googlehome5583
                      message: Bonsoir , Ce soir Adam doit mettre le couvert
mode: single

```

---

<div class="post-metadata">

**Author:** ![Pulpy-Luke](https://forum.hacf.fr/user_avatar/forum.hacf.fr/pulpy-luke/32/137426_2.png) [@Pulpy-Luke](https://forum.hacf.fr/u/Pulpy-Luke)\
**Post date:** [Décembre 13, 2025, 2:17 UTC](https://forum.hacf.fr/t/automatisation-mise-du-couvert/72057/2 "2025-12-13T14:17:23Z")

</div>

Salut,

Tu peux poursuivre la logique.

- Une variable qui détermine si midi ou soir
- Une variable qui determine qui
- Et un seul message qui réexploite les variables pour ne faire qu’une annonce parfaitement adaptée  
=\> Tu gagnes 6 blocs d’appels TTS

---

<div class="post-metadata">

**Author:** ![herveaurel](https://forum.hacf.fr/user_avatar/forum.hacf.fr/herveaurel/32/134147_2.png) [@herveaurel](https://forum.hacf.fr/u/herveaurel)\
**Post date:** [Décembre 13, 2025, 2:19 UTC](https://forum.hacf.fr/t/automatisation-mise-du-couvert/72057/3 "2025-12-13T14:19:47Z")

</div>

Les grands ont quitté le nid.

Y’a plus que la petite de 13 ans. Beaucoup plus simple a gérer.

”va mettre la table !” Fin de l’auto. 🤣

---

<div class="post-metadata">

**Author:** ![Pulpy-Luke](https://forum.hacf.fr/user_avatar/forum.hacf.fr/pulpy-luke/32/137426_2.png) [@Pulpy-Luke](https://forum.hacf.fr/u/Pulpy-Luke)\
**Post date:** [Décembre 13, 2025, 2:36 UTC](https://forum.hacf.fr/t/automatisation-mise-du-couvert/72057/4 "2025-12-13T14:36:34Z")

</div>

Une idée

> **Résumé**
>
> ```auto
> alias: ENFANT-COUVERT
> description: >-
> Annonce vocale qui dit qui doit mettre le couvert. Vacances, week-end ou
> mercredi : Lisa à midi, Adam le soir. Hors vacances (jours normaux) : Lisa le
> lundi et jeudi, Adam le mardi et vendredi (uniquement le soir).
> triggers:
> - at:
> - "12:00:00"
> trigger: time
> id: midi
> - at:
> - "19:00:00"
> trigger: time
> id: soir
> actions:
> - variables:
> is_vacances: "{{ is_state('sensor.vacances_scolaires_aujourd_hui_zone_a', 'on') }}"
> is_weekend: "{{ now().weekday() in [5, 6] }}"
> is_mercredi: "{{ now().weekday() == 2 }}"
> jour: "{{ now().weekday() }}"
> periode: "{{ trigger.id }}"
> enfant: >
> {% set est_vacances_ou_mercredi_ou_weekend = is_vacances or is_weekend
> or is_mercredi %}
> 
> {% if est_vacances_ou_mercredi_ou_weekend %}
> {# Cas 1 : Vacances, Week-end ou Mercredi : Lisa (midi), Adam (soir) #}
> {% if trigger.id == 'midi' %}
> Lisa
> {% elif trigger.id == 'soir' %}
> Adam
> {% else %}
> aucun
> {% endif %}
> {% else %}
> {# Cas 2 : Jours normaux (Lundi, Mardi, Jeudi, Vendredi) #}
> {% if trigger.id == 'midi' %}
> aucun # Pas d'annonce à midi les jours d'école normaux
> {% elif trigger.id == 'soir' %}
> {# Lundi (0) et Jeudi (3): Lisa | Mardi (1) et Vendredi (4): Adam #}
> {% if jour in [0, 3] %}
> Lisa
> {% elif jour in [1, 4] %}
> Adam
> {% else %}
> aucun
> {% endif %}
> {% else %}
> aucun
> {% endif %}
> {% endif %}
> salutation: |
> {% if trigger.id == 'midi' %}
> Bonjour
> {% else %}
> Bonsoir
> {% endif %}
> - if:
> - condition: template
> value_template: "{{ enfant != 'aucun' }}"
> then:
> - alias: Annonce vocale unique (Lisa ou Adam)
> data:
> cache: true
> media_player_entity_id: media_player.googlehome5583
> message: >-
> {{ salutation }}, ce {{ periode }} {{ enfant }} doit mettre le
> couvert.
> target:
> entity_id: tts.google_translate_fr_fr
> action: tts.speak
> mode: single
> 
> ```

Tu va finir par aimer le jinja

Sinon, avec moins de jinja

> **Résumé**
>
> ```auto
> alias: ENFANT-COUVERT_BLOCS_CHOICE
> description: >-
> Annonce vocale qui dit qui doit mettre le couvert. Logique traduite en blocs
> 'choose' pour la lisibilité dans l'interface graphique.
> triggers:
> - at:
> - "12:00:00"
> trigger: time
> id: midi
> - at:
> - "19:00:00"
> trigger: time
> id: soir
> actions:
> - alias: Définir Variables de Contexte
> variables:
> is_vacances: "{{ is_state('sensor.vacances_scolaires_aujourd_hui_zone_a', 'on') }}"
> is_weekend: "{{ now().weekday() in [5, 6] }}"
> is_mercredi: "{{ now().weekday() == 2 }}"
> jour: "{{ now().weekday() }}"
> periode: "{{ trigger.id }}"
> enfant: aucun
> salutation: |
> {% if trigger.id == 'midi' %}
> Bonjour
> {% else %}
> Bonsoir
> {% endif %}
> - alias: Déterminer l'Enfant Responsable
> choose:
> - alias: Cas 1 pour Vacances WE Mercredi
> conditions:
> - condition: template
> value_template: "{{ is_vacances or is_weekend or is_mercredi }}"
> sequence:
> - choose:
> - conditions:
> - condition: trigger
> id: midi
> sequence:
> - alias: Lisa à Midi
> variables:
> enfant: Lisa
> - conditions:
> - condition: trigger
> id: soir
> sequence:
> - alias: Adam le Soir
> variables:
> enfant: Adam
> - alias: Cas 2 pour Jours Normaux (Uniquement le Soir)
> conditions:
> - condition: template
> value_template: "{{ not (is_vacances or is_weekend or is_mercredi) }}"
> - condition: trigger
> id: soir
> sequence:
> - choose:
> - conditions:
> - condition: template
> value_template: "{{ jour in [0, 3] }}"
> sequence:
> - alias: Lisa le Soir (Lun/Jeu)
> variables:
> enfant: Lisa
> - conditions:
> - condition: template
> value_template: "{{ jour in [1, 4] }}"
> sequence:
> - alias: Adam le Soir (Mar/Ven)
> variables:
> enfant: Adam
> - if:
> - condition: template
> value_template: "{{ enfant != 'aucun' }}"
> then:
> - alias: Annonce vocale unique (Lisa ou Adam)
> data:
> cache: true
> media_player_entity_id: media_player.googlehome5583
> message: >-
> {{ salutation }}, ce {{ periode }} {{ enfant }} doit mettre le
> couvert.
> target:
> entity_id: tts.google_translate_fr_fr
> action: tts.speak
> mode: single
> 
> ```

---

<div class="post-metadata">

**Author:** ![Bob](https://forum.hacf.fr/user_avatar/forum.hacf.fr/bob/32/64908_2.png) [@Bob](https://forum.hacf.fr/u/Bob)\
**Post date:** [Décembre 13, 2025, 2:56 UTC](https://forum.hacf.fr/t/automatisation-mise-du-couvert/72057/5 "2025-12-13T14:56:26Z")

</div>

Bonjour,  
je viendrai le soir où Lisa mets le couvert, j’aurai aimé avoir le menu (de qui ?) mais c’est la prochaine étape 😉  
Bob

---

<div class="post-metadata">

**Author:** ![bartounet](https://forum.hacf.fr/user_avatar/forum.hacf.fr/bartounet/32/119246_2.png) [@bartounet](https://forum.hacf.fr/u/bartounet)\
**Post date:** [Décembre 13, 2025, 4:45 UTC](https://forum.hacf.fr/t/automatisation-mise-du-couvert/72057/6 "2025-12-13T16:45:31Z")

</div>

Oula la… mais c’est dingo.  
J’essaie de tout piger

---

<div class="post-metadata">

**Author:** ![Xris](https://forum.hacf.fr/user_avatar/forum.hacf.fr/xris/32/40087_2.png) [@Xris](https://forum.hacf.fr/u/Xris)\
**Post date:** [Décembre 23, 2025, 11:08 UTC](https://forum.hacf.fr/t/automatisation-mise-du-couvert/72057/7 "2025-12-23T23:08:13Z")

</div>

Et du coup ça peut être prononcé sur une mini nest pas exemple ?

J’ai fait ce genre de chose depuis Google home avec un déclencheur 30 minutes après le coucher du soleil mais j’aimerais bien reproduire sur HA.

---

<div class="post-metadata">

**Author:** ![bartounet](https://forum.hacf.fr/user_avatar/forum.hacf.fr/bartounet/32/119246_2.png) [@bartounet](https://forum.hacf.fr/u/bartounet)\
**Post date:** [Décembre 23, 2025, 11:43 UTC](https://forum.hacf.fr/t/automatisation-mise-du-couvert/72057/8 "2025-12-23T23:43:05Z")

</div>

Oui tout est possible.  
Moi se sont mes 2 Google home qui diffusent le message

---

<div class="post-metadata">

**Author:** ![Xris](https://forum.hacf.fr/user_avatar/forum.hacf.fr/xris/32/40087_2.png) [@Xris](https://forum.hacf.fr/u/Xris)\
**Post date:** [Décembre 24, 2025, 8:03 UTC](https://forum.hacf.fr/t/automatisation-mise-du-couvert/72057/9 "2025-12-24T08:03:28Z")

</div>

Juste en cast ou tu as réussi à intégrer les enceintes directement dans HA ?

Merci

---

<div class="post-metadata">

**Author:** ![bartounet](https://forum.hacf.fr/user_avatar/forum.hacf.fr/bartounet/32/119246_2.png) [@bartounet](https://forum.hacf.fr/u/bartounet)\
**Post date:** [Décembre 24, 2025, 8:07 UTC](https://forum.hacf.fr/t/automatisation-mise-du-couvert/72057/10 "2025-12-24T08:07:26Z")

</div>

Comment ça ?  
Bien sur c’est natifs, tes google Home sont reconnues direct dans HA  
Pour ma part il a installé Google Cast tout seul et détecté mes 2 Google Home

> **[Google Cast](https://www.home-assistant.io/integrations/cast/)**
>
> Instructions on how to integrate Google Cast into Home Assistant.

---

<div class="post-metadata">

**Author:** ![system](https://forum.hacf.fr/uploads/default/original/1X/f21bfb78c8ffe5e68d8964c0a162197808faff17.png) [@system](https://forum.hacf.fr/u/system)\
**Post date:** [Février 22, 2026, 8:07 UTC](https://forum.hacf.fr/t/automatisation-mise-du-couvert/72057/11 "2026-02-22T08:07:28Z")

</div>

Ce sujet a été automatiquement fermé après 60 jours. Aucune réponse n’est permise dorénavant.
