[Calendrier] Next Event (anniversaire)

Mon problème

Renseigner votre problème

Ma configuration


System Health

version core-2021.8.8
installation_type Home Assistant OS
dev false
hassio true
docker true
user root
virtualenv false
python_version 3.9.6
os_name Linux
os_version 5.10.53
arch x86_64
timezone Europe/Paris
Home Assistant Community Store
GitHub API ok
Github API Calls Remaining 4799
Installed Version 1.15.0
Stage startup
Available Repositories 889
Installed Repositories 35
Home Assistant Supervisor
host_os Home Assistant OS 6.2
update_channel stable
supervisor_version supervisor-2021.06.8
docker_version 20.10.6
disk_total 30.8 GB
disk_used 15.4 GB
healthy true
supported true
board ova
supervisor_api ok
version_api ok
installed_addons Samba share (9.5.1), File editor (5.2.0), Log Viewer (0.9.1), Visual Studio Code (3.6.2), Samba Backup (4.5.0)
Lovelace
dashboards 1
resources 32
views 7
mode yaml
___

Bonjour à tous,

Je suis à la recherche d’une astuce, d’un moyen pour anticiper les prochains anniversaires à partir d’un calendrier en CalDav sur mon synology.

Le calendrier est déjà connecté mais je souhaite qu’un sensor recherche parmi les événements futur tout ceux qui contient le mot « anniversaire ».

J’ai trouver cela:
https://www.home-assistant.io/integrations/calendar.google/

image

Je souhaite éviter l’utilisation d’un énième intégration.

Merci d’avance

J’ai un peu avancé :slight_smile:

Dans le fichier cong.yaml

  - platform: caldav
    username: !secret IDcalendar_caldav_syno
    password: !secret Passcalendar_caldav_syno
    url: !secret URLcalendar_Caldav_syno
    #calendars:
    #   - 'AgendaMQ'
    days: 30
    custom_calendars:
      - name: "Anniversaire"
        calendar: "AgendaMQ"
        search: ".+Anniversaire"
      - name: "AgendaMQ"
        calendar: "AgendaMQ"
        search: ".*"

Ce qui permet d’avoir 2 sensor:
le 1er c’est l’agenda qui ne contient que les événement utilisant le mot « Anniversaire »
le 2eme l’agenda intégrale sans restriction.

ce qui donne en interrogeant le sensor dans outils:
anniversaire

Comment puis-je faire pour cela s’affiche sous forme d’entity
(exemple: Anniversaire de François pérusse Dans 10J)

Merci d’avance

J’avance a mon rythme voila le template:

- platform: template
  sensors:
    next_anniversary:
        friendly_name: >-
            {{ (states.calendar.agendamq_anniversaire.attributes.message) }}
        value_template: >-
            dans {{((as_timestamp(states.calendar.agendamq_anniversaire.attributes.start_time) - as_timestamp(now())) /86400+1) | int }} jours
        #  {{ strptime(states.calendar.agendamq_anniversaire.attributes.start_time, "%Y-%m-%d %H:%M:%S").strftime("%A %d %B") }}:
        #  {{ states.calendar.agendamq_anniversaire.attributes.message }}
        #  {%- if states.calendar.agendamq_anniversaire.attributes.location %} at {{ states.calendar.agendamq_anniversaire.attributes.location -}}
        #  {% endif %}
        icon_template: >-
          {% if is_state('calendar.agendamq_anniversaire', 'on') %}
            mdi:crown
          {% else %}
            mdi:calendar-clock
          {% endif %}

Maintenant je cherche :

  • à faire défiler le texte pour les double anniversaire style : Anniv de Tante kelly et oncle Charles et Philippe.
  • mettre l’icon de l’entities en couleur quand c’est le jour J

:slight_smile:
Ce qui donne:
anniversaire

Merci de continuer de partager même si personne n’intervient :heart:

:+1:

https://forum.hacf.fr/t/comment-colorer-ses-icones-pour-les-debutants-tuto-debutant-n-1/308/2?u=clemalex

Quand c’est le cas, tu as une seule entité ou plusieurs ?

Dans mon Cas actuelle je n’ai qu’une entité mais si tu sais faire avec 2 de façon auto sa m’intéresse aussi :slight_smile:

Ma question est quand tu as plusieurs anniversaires le même jour, comment tu le sais côté HA ?
C’est dans l’entité ?

Ah :slight_smile: oui c’est la même entité sauf que le message est assez long et le faire défiler permettrai de voir le nom de tous.

Je pense que le message ne devrait contenir que le nom de la personne et rien d’autre.
L’icone + Prenom + Temps restant suffit à mon sens et permettrait de loger plus de personne je pense.

Si tu as la main, sur le texte je pense que c’est le plus simple dans un premier temps.

Je pense aussi, c’est que certain son née a 2 ou 3 la même date :sweat:

C’est pas un soucis si tu as un modèle…

Par exemple, si tu mets :

Julien, Sarah, Marie-France

Il sera possible de découper (à l’aide du caractère , et récupérer chaque prénom individuellement afin ensuite de réfléchir à l’affichage.

Il est mieux d’y aller étape par étape…

J’ai mis sur mon dashboard 3 entité (pour le moment)

  • meteo
  • bourse
  • prochain anniversaire

Sous cette forme également visible en haut du topic
info du jour

Je me demander si sur 1 seule ligne je pouvais intégrer un timing ou les 3 entité apparaitrai (5 secondes) chacune.

En faisant un roulement tout les X seconde ( ce qui permet d’ergonomiser le dashboard (gain de place)

Salut @Felix62 !
Super boulot ! Je viens de lire tes posts et cela m’intéresse !
J’ai également un calendrier sur mon synology. Mais as-tu trouvé une astuce pour mettre toutes tes dates d’anniversaires dans un calendrier spécifique ou tu l’as fait à la main ?

Merci @Hankey71

Sur le synology calandar j’ai creer un calendrier « AgendaMQ » dans lequel j’ai remplie manuellement chaque date d’anniversaire simplement tu ne le remplie qu’une seul et unique fois car avec synology tu as une option " répéter l’événement chaque année" ainsi les anniversaires sont répétés année après année sans devoir remplir de nouveau.

et enfin,

    custom_calendars:
      - name: "Anniversaire"
        calendar: "AgendaMQ"
        search: ".+Anniversaire"

tu demandes a home assistant d’aller rechercher un point commun soit: search: « .+Anniversaire » le mot Anniversaire. dans ton calendrier, ce qui aura pour conséquence d’avoir dans home assistant un agenda dédié aux anniversaires

Ok ! Merci pour les infos !
Mais je pensais trouver une astuce pour récupérer les dates d’anniversaires que j’ai indiqué dans les contacts (j’ai également Synology contact). Google Agenda propose d’aller récupérer les dates dans Google Contact. J’ai ce calendrier dans Google Agenda mais c’est le seul qu’on ne peut pas exporter ou sauvegarder (pour ensuite pouvoir l’importer dans synology calendar).
Je vais retaper mes anniversaires petit à petit !
Bonne journée

@Felix62 Petite question sur l’URL que tu as utilisé pour atteindre ton calendrier : Quel format as-tu utilisé ? Depuis tout à l’heure j’essaye, mais impossible de trouver le bon lien !

Ah c’est bon, pour info j’ai utilisé :
https://[url externe]/caldav.php/[user synology]

Donc rien à voir avec ce que propose Synology Calendar dans son menu « CalDav »…

Pour l’url externe : il faut bien indiquer votre reverse proxy si vous en avez un.
Possibilité de mettre verify_ssl: false dans config.yaml si problème avec vos certificats.
Pour le user synology : il faut bien les majuscules si vous avez.

Très très intéressant !
Bravo et merci @Felix62. Sûr qu’un jour j’utiliserai ton tuto !

Bonjour,

Ah :slight_smile: oui c’est la même entité sauf que le message est assez long et le faire défiler permettrai de voir le nom de tous.

Lorsqu’il y a plusieurs personnes sur le calendrier le même jour vous arrivez a tout récupérer? Parce que moi ça m’affiche uniquement le premier…

image

image

Est-ce que vous avez aussi ce comportement?

Dans l’agenda je rentre événement:
Anniversaire de Marie, Christophe
Et non plusieurs événement en fonction du nombre d’anniversaire.
Mais il est vrai que si l’on pourrait voir plusieurs événement/anniversaire il suffirait de faire un input number /x seconde qui changerai automatiquement pour faire défiler les différent anniversaire :smiling_face_with_three_hearts:

Ah d’accord, moi c’est le calendrier des anniversaires des contacts de nextcloud. L’ajout est automatique dans le calendrier. Mais home assistant ne semble pas gérer le multi event il faut croire…

Si quelqu’un a une solution pour pouvoir lire les différents events je suis preneur.