[Article] Pronote pour Home Assistant : cours, devoirs, notes, etc

Voici mon automatisation pour recevoir les notifs des notes:
(Remplacer les valeurs NOM et PRENOM dans le yaml)

alias: Note Pronote PRENOM
description: ""
triggers:
  - event_type: pronote_event
    event_data:
      type: new_grade
      child_name: NOM PRENOM
    trigger: event
conditions: []
actions:
  - data:
      title: Pronote
      message: >-
        Tu as eu un {{trigger.event.data.data.grade_out_of }} en
        {{trigger.event.data.data.subject }}. La moyenne de classe est de {{
        trigger.event.data.data.class_average }}.
        ({{trigger.event.data.data.comment }})
    action: notify.mobile_app_iphone
mode: single

merci mais je ne reçois aucune notif lorsque je l’exécute manuellement (j’ai bien modifié action: notify.mobile_app_iphone)

ca ne fonctionne que si l’évènement existe.

1 « J'aime »

du coup tu sais si l’évènement comporte l’ensemble des nouvelles notes ou seulement la dernière note? j’ai posé la question plus haut.
+++

ça ne fonctionne pas comme ça, l’automatisation se déclenche une fois que l’évènement se déclenche.

Tu peux tester manuellement en déclenchant un évènement de test

development tools → events
event type: pronote_event

coller ceci :

child_name: NOM Prenom
child_nickname: Prenom
type: new_grade
data:
  date: "2023-09-01"
  subject: Mathématiques
  comment: "Pythagore"
  grade: 19
  out_of: "20"
  default_out_of: "20"
  grade_out_of: 19/20
  coefficient: "1"
  class_average: 16.78
  max: ""
  min: ""
  is_bonus: false
  is_optionnal: false
  is_out_of_20: false
1 « J'aime »

Bonsoir à tous,
Désolé si la question à déjà était posée mais j’ai un problème avec les notes, les moyennes, les éval, les absences qui dans l’intégration remonte bien, mais dans les cartes rien !
Pourtant l’emploi du temps et les devoirs fonctionne bien…
j’ai cherché, recharger les cartes (versions etc) l’intégration rien n’y fait !
Je ne comprend pas…
merci de votre aide

Salut,
Comment changer le texte de header, car c’est le même pour aujourd’hui et demain:


merci de la réponse mais ca n’a pas l’air de fonctionner je dois passer a coté de quelque chose

Bonjour à tous.
J’ai 3 enfants concernés par Pronote et j’aimerais faire une carte dans mon tableau de bord dont je n’ai pas trouvé d’infos.
afin de ne pas avoir 3 cartes pour les notes, 3pour l’emploi du temps, 3 pour… quelqun pourrait-il me dire s’il est possible de faire une carte avec les notes des 3 enfants mais qui s’afficherait à tour de rôle. les notes de l’enfant 1 pendant 30s, notes de l’enfant 2 30s puis les notes de l’enfant 3 30s puis la boucle recommence.
L’idée est de faire de même avec les emplois de temps et les devoirs.
Merci à tous.

Bonjour a tous,

Je rencontre un soucis sur les cartes d’affichage des notes et d’evaluation, la carte n’affiche rien, meme pas l’header.

Lorsque je regarde le sensor, les notes sont bien présente


version pronote : 2.1.0
version carte : 2.3.0

Bonjour,
depuis quelques jours, je ne parviens à extraire les heures de la journée et du lendemain., pourtant les heures de début et de fin de journée sont bien récupérées depuis ProNote.

variables créées :

    - name: "Journée de cours de mathis - Aujourd'hui"
      unique_id: sensor.journée_de_cours_de_mathis_aujourd_hui
      icon: "mdi:clock-time-five-outline"
      state: >-
        {% if state_attr('sensor.pronote_XXXX_mathis_today_s_timetable', 'lessons')[0] is defined %}
          {{state_attr('sensor.pronote_XXXX_mathis_today_s_timetable', 'start_time').strftime('%H:%M')}} - {{state_attr('sensor.pronote_XXXX_mathis_today_s_timetable', 'end_time').strftime('%H:%M')}}
        {% else %}
          Pas cours
        {% endif %}

et aucun résultats :

Quelqu’un aurait un exemple fonctionnel svp ?
Merci,
Fabrice

Voici l’ensemble de mes sensors

- sensor:

      - name: Pronote  Nombre Devoir pour Demain
        unique_id: pronote__nbr_devoir_demain
        state: >-
            {% set tomorrow = (now() + timedelta(days=1)).date() %}
            {% set homeworks = state_attr('sensor.pronote_period_s_homework', 'homework')  %}
            {{ homeworks | selectattr('date', 'eq', tomorrow)| selectattr('done', 'eq', false) | list | count }}


      - name: Pronote  Dernière mise à jour
        unique_id: pronote_derniere_mise_a_jour
        icon: "mdi:update"
        state: >-
          {% if state_attr('sensor.pronote_class','updated_at') %}
            {{ state_attr('sensor.pronote_class','updated_at').strftime('%A %d-%m-%Y à %H:%M') }}
          {% endif %}

      - name: Pronote debut et fin des cours - Aujourd'hui
        unique_id: pronote_debut_fin_des_cours_aujourd_hui
        icon: "mdi:clock-time-five-outline"
        state: >-
          {% if state_attr('sensor.pronote_today_s_timetable', 'lessons')[0] is defined %}
              {{state_attr('sensor.pronote_today_s_timetable', 'day_start_at').strftime("%H:%M")}} - {{state_attr('sensor.pronote_today_s_timetable', 'day_end_at').strftime("%H:%M")}}
          {% else %}
              Pas cours
          {% endif %}

      - name: Pronote  debut et fin des cours- Demain
        unique_id: pronote_debut_fin_des_cours_demain
        icon: "mdi:clock-time-five-outline"
        state: >-
          {% if state_attr('sensor.pronote_next_day_s_timetable', 'lessons')[0] is defined %}
              {{state_attr('sensor.pronote_next_day_s_timetable', 'day_start_at').strftime("%H:%M")}} - {{state_attr('sensor.pronote_next_day_s_timetable', 'day_end_at').strftime("%H:%M")}}
          {% else %}
              Pas cours
          {% endif %}
      
      - name: Pronote perso texte Cours annulés - aujourd_hui
        unique_id: pronote_perso_texte_cours_annules_aujourd_hui
        icon: "mdi:clock-time-five-outline"
        state: >-
          {% set nb = namespace(counter=0) %}
          {% if state_attr('sensor.pronote_today_s_timetable', 'lessons')[0] is defined %}                
            {% set items = state_attr('sensor.pronote_today_s_timetable','lessons') %}
            {% for i in range(0, items | count, 1) %}
              {%- if items[i].canceled == True -%} 
                {% set nb.counter = nb.counter + 1 %}
              {%- endif -%}
            {% endfor %}
          {% endif %}
          {%- if nb.counter == 0 %}
            {%- elif  nb.counter == 1 %}{{nb.counter}} cours annulé/modifié
            {%- elif  nb.counter >= 2 %}{{nb.counter}} cours annulés/modifiés
          {%- endif %}       
      
      - name: Pronote perso  Cours annulés - aujourd_hui
        unique_id: pronote_perso_cours_annules_aujourd_hui
        icon: "mdi:clock-time-five-outline"
        state: >-
          {% set nb = namespace(counter=0) %}
          {% if state_attr('sensor.pronote_today_s_timetable', 'lessons')[0] is defined %}                
            {% set items = state_attr('sensor.pronote_today_s_timetable','lessons') %}
            {% for i in range(0, items | count, 1) %}
              {%- if items[i].canceled == True -%} 
                {% set nb.counter = nb.counter + 1 %}
              {%- endif -%}
            {% endfor %}
          {% endif %}
          {{nb.counter}}   

      - name: Pronote perso Texte Cours annulés - prochain
        unique_id: pronote_perso_texte_cours_annules_prochain
        icon: "mdi:clock-time-five-outline"
        state: >-
          {% set nb = namespace(counter=0) %}
          {% if state_attr('sensor.pronote_next_day_s_timetable', 'lessons')[0] is defined %}    
            {% set items = state_attr('sensor.pronote_next_day_s_timetable','lessons') %}
            {% for i in range(0, items | count, 1) %}
              {%- if items[i].canceled == True -%} 
                {% set nb.counter = nb.counter + 1 %}
              {%- endif -%}
            {%- endfor %}
          {% endif %}
          {%- if nb.counter == 0 %}
            {%- elif  nb.counter == 1 %}{{nb.counter}}  cours annulé/modifié 
            {%- elif  nb.counter >= 2 %}{{nb.counter}} cours annulés/modifiés
          {%- endif %}  

      - name: Pronote perso  Cours annulés - prochain
        unique_id: pronote_perso_cours_annules_prochain
        icon: "mdi:clock-time-five-outline"
        state: >-
          {% set nb = namespace(counter=0) %}
          {% if state_attr('sensor.pronote_next_day_s_timetable', 'lessons')[0] is defined %}    
            {% set items = state_attr('sensor.pronote_next_day_s_timetable','lessons') %}
            {% for i in range(0, items | count, 1) %}
              {%- if items[i].canceled == True -%} 
                {% set nb.counter = nb.counter + 1 %}
              {%- endif -%}
            {%- endfor %}
          {% endif %}
          {{nb.counter}}      
            


Voir tes attributes :slight_smile: …start_at

{{state_attr('sensor.pronote_xxx_today_s_timetable', 'lessons')[0].start_at.strftime('%H:%M')}}

Bonjour,
J’ai le même problème avec le sensor grades_2 : lorsque je vais dans les paramètres de HA dans la partie entités, je vois bien les notes du 3ème trimestre de mes enfants, mais dans la carte grades, je n’ai pas les notes du troisième trimestre (qui est pourtant marqué comme « current » dans l’entité… J’ai le même problème pour les absences et les retards (et pour mes 2 enfants). Est-ce que quelqu’un sait d’où ça peut provenir ? Par avance merci !

Hello,

Désolé je n’ai pas été très présent dernièrement car pas mal occupé.
Je vois que la connexion login/mdp n’a plus l’air fonctionnelle, je vais essayer de regarder pourquoi.

J’essaye de rattraper mon retard de réponse à vos interrogations asap !

Salut,
J’ai une petite demande d’évolution. Dans les moyennes, le tri dans chaque trimestre n’est pas identique.c’est.moins facile pour comparer. Est-ce que tu pourrais harmoniser cela? Merci d’avance

Oui, je dois pouvoir trier par ordre alphabétique :slight_smile:

Bonjour
J’ai envoyé ce message sur github ce matin, mais je me dis que ça a plus se place ici avant d’éventuellement ouvrir une issue :

Ce matin, en première heure, mon fils avait permanence donc il avait prévu de dormir.
Pas de chance, le réveil s’est tout de même déclenché pour qu’il soit prêt pour la première heure prévue (l’heure de permanence et pas l’espagnol) selon le temps indiqué dans la configuration. (7h15 au lieu de 8h05)

Image

Image

Est-ce que c’est normal que « permanence » soit considéré comme un cours ?

Merci