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

Bonjour,

J’ai 2 enfants lycéens dans 2 établissements différents.

Connexion avec id et mot de passe du 1er coup pour ma fille, par contre je rencontre un mur pour mon garçon, ou je dois passer par Educonnect pour me connecter. Id et mot de passe ne fonctionne pas et impossible de trouver le QR code sur Pronote.

Si quelqu’un avait une solution ce serait génial.

Salut,

Le qr code ne se trouve que sur le version pc :woozy_face:. Il faut le générer depuis données > comptes

Hello,

L’evenement protone concernant les nouvelles note renvoi une liste de nouvelles note ou la dernière nouvelle note?
Ayant mis une alerte sms j’aimerai ne pas en rater :slight_smile:
y a t’il des événements sur d’autres sensors? exemple absences, cours annulé etc…?
merci :slight_smile:

Hello,

Effectivement, ça peut être faisable si c’est utile. :+1:

@Anas92600, il y a un évènement par nouvelle note en effet :wink:
Pour le moment, il y a des évènements :

  • les notes
  • les absences
  • les retards
    Je vois qu’en effet ce n’est pas documenté, je vais le rajouté !

Sinon je viens sortir une nouvelle version pour les cartes, la version 2.4.0 (et un peu avant la version 2.3.1).
Du coup :

  • Un correctif sur les configurateurs de cartes où la config ne se mettait pas correctement à jour
  • Une nouvelle option sur la carte d’emploi du temps pour passer automatiquement au jour suivant si les cours du jour sont finis !
1 « J'aime »

Hello @delphiki

Voici la carte de mon dashboard :

type: panel
title: Cantine
path: cantine
icon: mdi:food-fork-drink
cards:
  - type: markdown
    content: |-

      <table>
          <tbody>
      {% set items = state_attr('sensor.pronote_enfant_menus','menus') %}
        <tr>
        <td><h4> </td>
        <td><h4>Entrée</td>
        <td><h4>Plat principal</td>
        <td><h4>Accompagnement</td>
        <td><h4>Fromage</td>
        <td><h4>Dessert</td>
        </tr>
      {% for i in range(0, items | count, 1) %}
        {% if items[i].is_lunch == True %}
        <tr>
        <td>      
        <mark>  
        {{ items[i].date | as_datetime | as_timestamp | timestamp_custom('%d/%m') }}
        </mark>
        </td>
        <td> 
          {% for entry in items[i].first_meal %}
           {{ entry.name }}
          {% endfor %}
        </td>
        <td> 
          {% for main in items[i].main_meal %}
            {{ main.name }}
          {% endfor %}
        </td>
        <td>
          {% if items[i].side_meal %}
            {% for side in items[i].side_meal %}
              {{ side.name }}
            {% endfor %}
          {% else %}
            PAS_DISPO
          {% endif %}
        </td>
        <td>
          {% for cheese in items[i].cheese %}
            {{ cheese.name }}
          {% endfor %}
        </td>
        <td>
          {% for dessert in items[i].dessert %}
            {{ dessert.name }}
          {% endfor %}
        </td>
          {% endif %}
      {% endfor %}
        </tbody>
      </table>
    card_mod:
      style:
        .: |
          ha-card ha-markdown {
            padding:0px
          }
          ha-card ha-markdown.no-header {
            padding:10px
          }
        ha-markdown$: |
          div {
              background-color:rgb(100, 100, 100);
              padding: 12px 12px;
              color:white;
              font-weight:normal;
              font-size:1.2em;
              border-top-left-radius: 5px; 
              border-top-right-radius: 5px; 
          }
          table{
            border-collapse: collapse;
            font-family: Roboto;
            width: 100%;
            outline: 0px solid #393c3d;
            margin-top:5px;
          } caption {
              text-align: center;
              font-weight: bold;
              font-size: 1.2em;
          } td {
              padding: 5px 10px 5px 10px;
              text-align: left;
              border-bottom: 0px solid #1c2020;
          }
          tr {
              border-bottom: 0px solid #1c2020;
          }

          tr:nth-of-type(even) {
              background-color: rgb(54, 54, 54, 0.3);
          }
          tr:last-of-type {
              border-bottom: transparent;          }*
          mark {
              background: #009767;
              color: #222627;
              border-radius: 5px;
              padding: 5px;
          }
          span {
              background: #EC4B34;
              color: #222627;
              border-radius: 5px;
              padding: 5px;
          }
          span {
              padding: 5px;
          }
          tr:nth-child(n+2) > td:nth-child(2) {
            text-align: left;
          }
theme: noctis
1 « J'aime »

impossible de trouver le QR code sur Pronote.

Comprends pas, si tu te rend sur pronote, via le site web, t’as l ‘option de céer le qr code, non?

Pour mon fils, sur ENT atrium_sud… ça ne marche plus par user/mdp donc forcé par QR

Merci pour ton retour rapide :slight_smile:

pour les notes j’ai remarqué que je ne recevais pas l’ensemble des notes mais je vais verifier et documenterai si nécessaire.

oui pour les cours annulés cela permet d’anticiper une sortie anticipée de l’établissement :-p

+++

2 « J'aime »

Allez, tant qu’on y est, nouvelle version 2.5.0 pour les cartes avec l’ajout de la carte des menus de la cantine :

1 « J'aime »

Hello, @delphiki tu as pu voir le bug du state des éval ?

C’est en cours d’investigation parce que ce n’est pas le seul sensor à être affecté, certains timetable ont le cas (mais pas toujours).

2 « J'aime »

Hello,

une autre remarque tu penses qu’il est possible de faire un évennement lié a une modification de note? Dans mon cas, le prof a corrigé une note. je ne m’attendais pas à une nouvelle alerte, mais tu penses qu’ajouter un evt sur update pourrait être intéressant?Bon j’avoue que c’est moins prioritaire que le reste :-p

+++

Bonjour à tous,

Merci encore à Delphiki pour ce super taff, et à tous en général pour le partage de vos codes et autres :slight_smile:

De mon côté, outre les cartes Pronotes qui sont sur une page dédiée de mon home assistant, j’ai mis ce petit résumé sur la page d’accueil de mon dashboard, j’aimerais y ajouter la moyenne générale (qui remonte bien dans les cartes de moyennes) après la classe par exemple, y a une astuce ?

Un clic sur le lien bleu renvoi vers la partie complète des infos Pronote de l’enfant en question, avec toutes les Pronote Cards :slight_smile: , classique.

Le “Statut actuel” est dynamique : si l’enfant est en cours, cela affiche par exemple “En SVT avec nom_du_prof”, ou bien “en pause déjeuner”, ou encore “en Weekend !” si samedi / dimanche.

Le DuoLingo est hors sujet ici (Pronote :smiley: ) mais il indique si l’enfant à fait sa “session du jour sur DuoLingo avec l’intégration.

Si vous avez d’autres idées, je suis preneur :slight_smile: (ça doit rester un résumé succinct pour la page d’accueil, toutes les infos sont dans la page complète ensuite).

Merci pour la réponse, mais je dois être idiot..

Impossible de trouver ce qr code. Quand tu dis version PC, tu parles de la version en ligne ?

Le seul lien que j’ai se termine par parent-mobile.html et je me retrouve devant la même interface que sur mon smartphone.

Salut

Enlève parent-mobile.html quand tu es sur pc.

Ça donne https://xxxxxxx.index-education.net/pronote/

Hello,

Tu as un sensor qui s’appelle sensor.pronote_XXX_YYY_overall_average pour la moyenne générale :wink:

Il faut vraiment que je mette la doc à jour :sweat_smile:

En carte récap perso j’ai ça sur mon dashboard principal :

4 « J'aime »

Installation fini !

Merci beaucoup

2 « J'aime »

Oh le nul, je l’ai même pas vu… merci !

J’aime beaucoup ta présentation du recap ! Partage du code possible ? :blush:

Voici le code : hass-pronote - Carte custom horaires des enfants · GitHub :slight_smile:

1 « J'aime »

J’ai fait différemment pour un gain de place, mais l’idée est la même.

3 « J'aime »

Bonsoir,

Comment est-ce que vous gérez l’affiche de “Information and surveys”?