Mushroom ramassage poubelle + calendrier

condition évènement calendrier

Bonjour à tous, je suis bloqué :face_with_peeking_eye: sur une simple carte conditionnelle. J’ai créé un calendrier local pour le ramassage des poubelles (jaunes), et je souhaite simplement afficher une mushroom chip carte lorsque l’évènement est à ‹ on › mais au moins 2 jours avant. Actuellement elle s’affiche bien mais uniquement le jour même. Je ne vois pas comment ajouter une simple condition qui dirait start time - 2 jours … ? Suis-je obligatoirement obligé de passer par une automatisation ?

Actuellement j’ai cela :

type: conditional
conditions:
  - condition: state
    entity: calendar.poubelle_jaune
    state: 'on'
card:
  type: custom:mushroom-chips-card
  chips:
    - type: entity
      entity: calendar.poubelle_jaune
      tap_action:
        action: more-info
      icon: mdi:trash-can-outline
      icon_color: yellow
      content_info: name
      use_entity_picture: false
  alignment: center

Merci à vous

Perso, j’ai créé un calendrier local par type de poubelles.

J’ai ensuite fait des sensor template pour récupérer les infos au format voulu, et je fais uun custom button card pour afficher comme ca dans ma carte Activité :

Il y a une pastille de la couleur de la poubelle qui se met a coté de l’icon le jour J.

J’ai du creer un sensor template pour avoir le decompte des jours, peut etre ca qu’il te manque ?

      - name: Calendrier Déchets ménagers
        unique_id: sensor.calendrier_dechets_menagers
        icon: " mdi:trash-can"
        state: >-
            {% set now = as_timestamp(now()) %}
            {% set prochain_evenement = as_timestamp(state_attr('calendar.dechets_menagers', 'start_time')) %}
            {% set jours_restants = ((prochain_evenement - now) / 86400) + 0.5 %}
            {% if states.calendar.dechets_menagers.state == "on" %}
              0
            {% elif states.calendar.dechets_menagers.state == "off" and jours_restants  < 1 %}
              1
            {% else -%}  
              {{ jours_restants | round(0)  }}     
            {% endif -%} 
1 « J'aime »

Bonjour et merci beaucoup pour ta réponse rapide, effectivement je crois que cela me permet de résoudre mon problème, je viens de le mettre en place ça semble fonctionner je vais voir ces jours-ci si c’est réellement le cas.
J’en profite pour te dire Bravo :clap: pour ton dashboard il est magnifique, je me suis permis d’aller voir ton github c’est juste :star_struck:

1 « J'aime »

Salut,
il y a un post pour les poubelles avec quelques cartes partager, dont une que j’avais faite.

poubelle button card4

1 « J'aime »

Heureux si je t’ai aidé.
Merci pour les compliments :wink:

bonjour @herveaurel,

J’ai des soucis pour créer le Template sensor dans le sensors.yaml.
Voici ce que j’ai mis mais il ne fonctionne pas :

>-
            {% set now = as_timestamp(now()) %}
            {% set prochain_evenement = as_timestamp(state_attr('calendar.dechets_menagers', 'start_time')) %}
            {% set jours_restants = ((prochain_evenement - now) / 86400) + 0.5 %}
            {% if states.calendar.dechets_menagers.state == "on" %}
              0
            {% elif states.calendar.dechets_menagers.state == "off" and jours_restants  < 1 %}
              1
            {% else -%}  
              {{ jours_restants | round(0)  }}     
            {% endif -%} 

est ce que tu pourrais m’aider.

Merci

      - name: Calendrier Déchets ménagers
        unique_id: sensor.calendrier_dechets_menagers
        icon: >
            {% set now = as_timestamp(now()) %}
            {% set prochain_evenement = as_timestamp(state_attr('calendar.dechets_menagers', 'start_time')) %}
            {% set jours_restants = ((prochain_evenement - now) / 86400) + 0.5 %}
            {% if states.calendar.dechets_menagers.state == "on" %}
              mdi:delete-empty
            {% elif states.calendar.dechets_menagers.state == "off" and jours_restants  < 1 %}
              mdi:trash-can
            {% else -%}  
              mdi:trash-can  
            {% endif -%}      
        state: >-
            {% set now = as_timestamp(now()) %}
            {% set prochain_evenement = as_timestamp(state_attr('calendar.dechets_menagers', 'start_time')) %}
            {% set jours_restants = ((prochain_evenement - now) / 86400) + 0.5 %}
            {% if states.calendar.dechets_menagers.state == "on" %}
              on
            {% elif states.calendar.dechets_menagers.state == "off" and jours_restants  < 1 %}
              off
            {% else -%}  
              off     
            {% endif -%}   
        attributes: 
          compteur: >
            {% set now = as_timestamp(now()) %}
            {% set prochain_evenement = as_timestamp(state_attr('calendar.dechets_menagers', 'start_time')) %}
            {% set jours_restants = ((prochain_evenement - now) / 86400) + 0.5 %}
            {% if states.calendar.dechets_menagers.state == "on" %}
              0
            {% elif states.calendar.dechets_menagers.state == "off" and jours_restants  < 1 %}
              1
            {% else -%}  
              {{ jours_restants | round(0)  }}     
            {% endif -%} 
          date: > 
            {% set prochain_evenement = state_attr('calendar.dechets_menagers', 'start_time') | as_timestamp | timestamp_custom('%a %d/%m') 
                | replace('Mon', 'Lun.')
                | replace('Tue', 'Mar.')
                | replace('Wed', 'Mer.')
                | replace('Thu', 'Jeu.')
                | replace('Fri', 'Ven.')
                | replace('Sat', 'Sam.')
                | replace('Sun', 'Dim.') %}         
            {{ prochain_evenement }}
          message: > 
            Sortir à 19h

Se colorisent que si l’entité est ON :

Bonjour @herveaurel
Je ne comprend pas les erreurs que je retrouve :
J’ai dans mon configuration.yaml une ligne :

sensor: !include sensors.yaml

Puis dans mon fichier sensors.yaml j’ai intégrer ton code dans lequel j’ai encore des erreurs :frowning:

##############################
#Sensor Templates
##############################

- platform: template
  sensors:
    name: Calendrier déchets ménagers
    unique_id: sensor.calendrier_dechets_menagers
    icon: >
      {% set now = as_timestamp(now()) %}
      {% set prochain_evenement = as_timestamp(state_attr('calendar.dechets_menagers', 'start_time')) %}
      {% set jours_restants = ((prochain_evenement - now) / 86400) + 0.5 %}
      {% if states.calendar.dechets_menagers.state == "on" %}
        mdi:delete-empty
      {% elif states.calendar.dechets_menagers.state == "off" and jours_restants  < 1 %}
        mdi:trash-can
      {% else -%}  
        mdi:trash-can  
      {% endif -%}
    state: >-
      {% set now = as_timestamp(now()) %}
      {% set prochain_evenement = as_timestamp(state_attr('calendar.dechets_menagers', 'start_time')) %}
      {% set jours_restants = ((prochain_evenement - now) / 86400) + 0.5 %}
      {% if states.calendar.dechets_menagers.state == "on" %}
        on
      {% elif states.calendar.dechets_menagers.state == "off" and jours_restants  < 1 %}
        off
      {% else -%}  
        off     
      {% endif -%}
    attributes:
      compteur: >
        {% set now = as_timestamp(now()) %}
        {% set prochain_evenement = as_timestamp(state_attr('calendar.dechets_menagers', 'start_time')) %}
        {% set jours_restants = ((prochain_evenement - now) / 86400) + 0.5 %}
        {% if states.calendar.dechets_menagers.state == "on" %}
          0
        {% elif states.calendar.dechets_menagers.state == "off" and jours_restants  < 1 %}
          1
        {% else -%}  
          {{ jours_restants | round(0)  }}     
        {% endif -%}
      date: >
        {% set prochain_evenement = state_attr('calendar.dechets_menagers', 'start_time') | as_timestamp | timestamp_custom('%a %d/%m') 
            | replace('Mon', 'Lun.')
            | replace('Tue', 'Mar.')
            | replace('Wed', 'Mer.')
            | replace('Thu', 'Jeu.')
            | replace('Fri', 'Ven.')
            | replace('Sat', 'Sam.')
            | replace('Sun', 'Dim.') %}         
        {{ prochain_evenement }}
      message: >
        Sortir à 19h


je sui un peu perdu dans les nouvelles configuration des sensors

Merci pour ton aide

Mon fichier est dans : template: !include template.yaml, puis sous " - sensor:"

Effectivement c’est beaucoup mieux :slight_smile:

Merci pour ton partage.

Est ce que tu aurais le code de la button card ? stp :wink:

Je n’utilise aucun button card.
Je suis fan de la carte native TILE.
L’interet d’un sensor template complet, est que tu affiches les attributs du sensor dans la carte, et non l’état.
J’affiche donc l’attribut « message » (Sortir à 19h).
L’état c’est du ON - OFF, qui permet à la carte de se colorisé automatiquement.
Tout ceci sans rien de hacs…

type: tile
entity: sensor.calendrier_dechets_menagers
name: Déchets
color: light-green
state_content: message
1 « J'aime »

Effectivement tellement plus simple :slight_smile:

Merci pour tout tes conseils avisés.

Pas de quoi. Nous sommes là pour ca.