met le logging vers debug et voire les retours
custom_components.pronote: debug
EDIT: je voix que c’est par ‹ parent ›… jamais testé ça (j’ai même pas une idée que sont mes coordonnees comme parent )
met le logging vers debug et voire les retours
custom_components.pronote: debug
EDIT: je voix que c’est par ‹ parent ›… jamais testé ça (j’ai même pas une idée que sont mes coordonnees comme parent )
je vais demander les codes à ma fille pour voir
edit : ajouté, j’attends de voir si quelque chose arrive…
J’ai donc deux comptes depuis hier :
@delphiki Rien de plus n’est arrivé (aucune entitée) , j’ai cherché dans les logs d’éventuelles erreurs :
14:54
2023-06-17 14:54:53.145 ERROR (MainThread) [homeassistant.components.sensor] Error while setting up pronote platform for sensor
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 320, in _async_setup_platform
await asyncio.shield(task)
File "/config/custom_components/pronote/sensor.py", line 117, in async_setup_entry
lessons_period = await hass.async_add_executor_job(client.lessons, date.today(), date.today() + timedelta(days=LESSON_MAX_DAYS))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/concurrent/futures/thread.py", line 58, in run
result = self.fn(*self.args, **self.kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/pronotepy/clients.py", line 401, in lessons
l_list = response["donneesSec"]["donnees"]["ListeCours"]
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^
KeyError: 'ListeCours'
puis 14:59
2023-06-17 14:59:03.503 INFO (SyncWorker_7) [pronotepy.pronoteAPI] INIT
2023-06-17 14:59:03.504 DEBUG (SyncWorker_7) [pronotepy.ent.generic_func] [ENT https://www.atrium-sud.fr/connexion/login] Logging in with coralie.XXX
2023-06-17 14:59:04.927 INFO (SyncWorker_7) [pronotepy.pronoteAPI] successfully logged in as 04F4B931D8EE
2023-06-17 14:59:05.019 INFO (SyncWorker_7) [pronotepy.pronoteAPI] got onglets data.
2023-06-17 14:59:05.019 INFO (SyncWorker_7) [custom_components.pronote.config_flow] XXX Coralie
2023-06-17 14:59:05.025 INFO (MainThread) [homeassistant.components.sensor] Setting up sensor.pronote
2023-06-17 14:59:05.027 INFO (SyncWorker_9) [pronotepy.pronoteAPI] INIT
2023-06-17 14:59:05.027 DEBUG (SyncWorker_9) [pronotepy.ent.generic_func] [ENT https://www.atrium-sud.fr/connexion/login] Logging in with coralie.XXX
2023-06-17 14:59:06.203 INFO (SyncWorker_9) [pronotepy.pronoteAPI] successfully logged in as 1BB80FE960BB
2023-06-17 14:59:06.299 INFO (SyncWorker_9) [pronotepy.pronoteAPI] got onglets data.
2023-06-17 14:59:06.300 INFO (SyncWorker_9) [custom_components.pronote.sensor] Client name: XXX Coralie
2023-06-17 14:59:06.677 ERROR (MainThread) [homeassistant.components.sensor] Error while setting up pronote platform for sensor
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 320, in _async_setup_platform
await asyncio.shield(task)
File "/config/custom_components/pronote/sensor.py", line 117, in async_setup_entry
lessons_period = await hass.async_add_executor_job(client.lessons, date.today(), date.today() + timedelta(days=LESSON_MAX_DAYS))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/concurrent/futures/thread.py", line 58, in run
result = self.fn(*self.args, **self.kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/pronotepy/clients.py", line 401, in lessons
l_list = response["donneesSec"]["donnees"]["ListeCours"]
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^
KeyError: 'ListeCours'
Finalement que 2 fois depuis hier une erreur.
J’ai peur que ça soit une erreur liée à la lib pronotepy, on doit pouvoir le gérer côté intégration cela dit.
Je ne suis pas chez moi mais j’essaye de voir ça ce soir.
dans const.py essayer de changer
LESSON_MAX_DAYS = 15
vers
LESSON_MAX_DAYS = 2
Coralie a combien de jours de leçons restants dans pronote?
ça sont des devoirs, je cherche le # jours edt
c’est bon ça fonctionne, c’était bien ça qui était bloquant
info @delphiki
Je t’ai envoyé la solution, tu peux remettre les jours vers 15 aussi.
PR changé…en attendant publication de @delphiki
Tout est impec, je travaille sur les cartes maintenant, je vais faire un mix de celles de @vingerha et celles de @dathosim
Edit 23:02 c’est ok, un superbe écran pronote avec l’intégration toute neuve. :
@delphiki pour ton info, j’ai ajouté quelques sensors-template pour avoir :
Les horaires de cours vont me permettre de caler l’heure de levée et l’alarme Alexa.
Voici les codes :
- sensor:
- name: Dernière mise à jour de Pronote
unique_id: sensor.derniere_mise_a_jour_de_pronote
icon: "mdi:update"
state: "{{ state_attr('sensor.pronote_xx_coralie','updated_at').strftime('%d-%m-%Y à %H:%M') }}"
- sensor:
- name: Début des cours de Coralie - Demain
unique_id: sensor.debut_des_cours_de_coralie_demain
icon: "mdi:clock-time-five-outline"
state: >-
{% if state_attr('sensor.pronote_xx_coralie_timetable_tomorrow', 'lessons')[0] is defined %}
{{state_attr('sensor.pronote_xx_coralie_timetable_tomorrow', 'lessons')[0]['start_at'].strftime('%H:%M')}}
{% else %}
Pas cours
{% endif %}
- sensor:
- name: Début des cours de Coralie - Aujourd'hui
unique_id: sensor.debut_des_cours_de_coralie_aujourd_hui
icon: "mdi:clock-time-five-outline"
state: >-
{% if state_attr('sensor.pronote_xx_coralie_timetable_today', 'lessons')[0] is defined %}
{{state_attr('sensor.pronote_xx_coralie_timetable_today', 'lessons')[0]['start_at'].strftime('%H:%M')}}
{% else %}
Pas cours
{% endif %}
Je ne sais pas si tu veux l’intégrer à ton intégration, sinon on fera en template, cela fonctionne facilement.
Il n’y a pas de nécessité pour des sensors, on peut le faire dans les cartes directement en utilisant des template (card-templater peut aider), même pour les automations.
Mais c’est bien pour ajouter ces idées dans la liste des exemples cartes/solutions
Je veux bien vous mettre le code de mes cartes, mais je suis désolé, ce ne doit pas être super propre.
C’est du bidouillage de débutant en prenant exemple sur les autres…
Et honnêtement vous vous êtes déjà mieux débrouillé que moi.
A la rigueur si un point particulier vous intéresse ?
lol et tu crois que nous nous avons un diplôme de polytechnique ??
Visiblement on est pas loin les uns des autres, c’est cool et complémentaire.
Je ne sais pas si l’intégration peut aller chercher ce qui manque, par exemple (pris sur pronote) :
Non, mais vous avez l’air de savoir ce que vous faites, moi je copie/colle le code des autres et je vois ce que ça fait
Oui, mais ne sert à rien
J’ai pas encore utilisé les trucs de VS. Pronotepy l’offre mais jamais testé comment ça marche. Il y a un accès spécififque pareil comme eleve ou parent, sais pas si besoin d’autres coordonnees… a voir (moi:
pas de temps cette semaine)
Clients - pronotepy documentation
EDIT: oui…des comptes specials sont nécessaire
ha ? c’est nouveau cette API !!!
Pas du tout, c’est la base ou avec sont crées les taffs de Dathosim, Delphiki et la mienne
ha ok, j’avais pas vu.
Et on peut aller chercher d’autres infos du coup ?