je dois dorénavant sortit mes poubelles. comme beaucoup.
c’est le lundi à l’aube, semaines paires pour les ordures ménagères et jaunes impaire (et passent ?) pour les emballages.
bien sur, la semaine dernière, on s’est planté car il faut la sortir le dimanche, et le dimanche, c’est pas la même semaine que le lundi qui suit… donc on a sorti la poubelle jaune et il fallait sortir l’autre…
en plus, si un jour férié tombe en semaine (lundi-vendredi) la collecte est reportée le lendemain.
Pour ma part, comme les choses sont un peu compliquées pour les différentes poubelles, je me suis fait un sensor de type template :
{# Liste des différentes poubelles à sortir #}
{% set poubelles = namespace(liste=[]) %}
{# Date du jour #}
{% set cur_date = now() %}
{#% set cur_date = strptime("2024-01-30", '%Y-%m-%d') %}
{# Demain #}
{% set tomorrow = cur_date + timedelta(days=1) %}
{# Demain + 7 jours #}
{% set tomorrow_plus_7_days = tomorrow + timedelta(days=7) %}
{# Numéro du jour de l'année (le 1°, le 364°, ..) #}
{% set day_of_year = tomorrow.strftime('%j') | int %}
{# Date du jour au format AAAAMMJJ #}
{# set year_month_day = tomorrow.strftime('%Y%m%d') #}
{# Date du jour au format MMJJ #}
{% set month_day = tomorrow.strftime('%m%d') %}
{# ------------------------------------------------------------------------ #}
{# Les poubelles sont toujours à sortir la veille => on regarde demain #}
{# ------------------------------------------------------------------------ #}
{# ------------------------------------------------------------------------ #}
{# Poubelles grises #}
{# Tous les mardis et vendredis #}
{# ------------------------------------------------------------------------ #}
{% if (
(tomorrow.isoweekday() == 2)
or (tomorrow.isoweekday() == 5)
) %}
{% set poubelles.liste = poubelles.liste + ['Poubelle grise'] %}
{% endif %}
{# ------------------------------------------------------------------------ #}
{# Déchets verts #}
{# Tous les lundis entre le 04/03/2024 et le 25/11/2024 #}
{# ------------------------------------------------------------------------ #}
{% if (
(tomorrow.isoweekday() == 1)
and (month_day >= '0303')
and (month_day <= '1124')
) %}
{% set poubelles.liste = poubelles.liste + ['Déchets verts'] %}
{% endif %}
{# ------------------------------------------------------------------------ #}
{# Poubelle jaunes (carton) #}
{# Tous les mercredis #}
{# ------------------------------------------------------------------------ #}
{%
if (tomorrow.isoweekday() == 3)
%}
{% set poubelles.liste = poubelles.liste + ['Poubelle jaune'] %}
{% endif %}
{# ------------------------------------------------------------------------ #}
{# Poubelle vertes (verre) #}
{# 1 mercredi / 2 à partir du premier mercredi de l'année #}
{# ------------------------------------------------------------------------ #}
{% if (
(tomorrow.isoweekday() == 3)
and (((day_of_year / 7) | round(0, 'ceil')) % 2 == 1)
) %}
{% set poubelles.liste = poubelles.liste + ['Poubelle verte'] %}
{% endif %}
{# ------------------------------------------------------------------------ #}
{# Encombrants #}
{# Le dernier mercredi du mois #}
{# ie : La semaine prochaine n est plus le même mois #}
{# ------------------------------------------------------------------------ #}
{% if (
(tomorrow.isoweekday() == 3)
and (tomorrow.month != tomorrow_plus_7_days.month)
) %}
{% set poubelles.liste = poubelles.liste + ['Encombrants'] %}
{% endif %}
{% if ((poubelles.liste | count) > 0) %}
{% set poubelles.liste = ['Il faut sortir les poubelles suivantes : '] + poubelles.liste %}
{% endif %}
{{ poubelles.liste | join("\r\n - ") }}
Merci à tous.
j’ai finalement opté pour la solution Trashcard.
j’ai juste une fois par an à déplacer le jour de collecte si ca tombe sur un jour férié.
Il reste des exceptions à gérer à la main, comme l’indiquait @bentou au début de son sujet. Dans tous les cas, mettre à jour le calendrier (Google ou HA) ne prend pas un temps fou, et c’est ensuite fait pour un moment. Chez moi par exemple, certaines collectes ne se font qu’à une certaine période de l’année, et les dates changent tous les ans (déchets végétaux). Quand je reçois le nouveau calendier annuel de ma mairie, je mets à jour le calendrier pour l’année à venir.