✨ Develop in the cloud: Want to contribute or customize this integration? Open it directly in GitHub Codespaces - no local setup required!
-
Easy Setup: Simple configuration through the UI - no YAML required
-
Reconfigurable: Change credentials anytime without removing the integration
-
Options Flow: Adjust settings like update interval after setup
-
Custom Services: Advanced control with built-in service calls
- Cliquez sur ce lien : HACS: Ecole Directe
- Cliquez sur le bouton
Open link. - Cliquez sur le bouton
Téléchargeren bas à droite, puis une deuxième fois surTélécharger. - Il faut ensuite redémarrer Home Assistant.
Copier le répertoire ecole_directe de la dernière release dans le répertoire custom_components de votre répertoire config. Redémarrer Home Assistant
Ou aller dans : Paramètres > Appareils et services > Intégrations > Ajouter une intégration, et chercher "Ecole Directe"
Utiliser votre identifiant et mot de passe :
Le fichier qcm permet de sauvegarder les questions et respectives réponses pour la double authentification requise par Ecole Directe. Il est créé automatiquement dans le répertoire Config de Home Assistant. L'option "Envoi de notifications" permet d'envoyer une notification lorsqu'il y a une nouvelle question dans le fichier qcm. Il est aussi possible de créer une automatisation à partir de l'événement "ecole_directe_event" de type "new_qcm. Exemple:
alias: Ecole Directe - notification nouvelle question QCM
description: Notification en cas de nouvelle question QCM dans le fichier qcm
trigger:
- platform: event
event_type: ecole_directe_event
event_data:
type: new_qcm
action:
- service: notify.persistent_notification
data:
message: >
Nouvelle question : {{ trigger.event.data.question }} Il faut vérifier
le fichier qcm
title: Nouvelle question qcm Ecole Directe
mode: queued
max: 10
Cette intégration fournit plusieurs entités, toujours préfixées avec ed_PRENOM_NOM (où PRENOM et NOM sont remplacé).
Les entités sont mises à jour toutes les 30 minutes.
Dans vos dashboards, vous pouvez utiliser les cartes EcoleDirecteHACards.
| Entité | Description |
|---|---|
sensor.ed_PRENOM_NOM |
informations basique de l'enfant |
[...]_devoirs |
devoirs |
[...]_devoirs_aujourd_hui |
devoirs du jour |
[...]_devoirs_demain |
devoirs du lendemain |
[...]_devoirs_jour_suivant |
devoirs du jour ouvré suivant (ex: si on consulte le vendredi, il doit y avoir les devoirs du lundi ) |
[...]_devoirs_semaine_en_cours |
devoirs de la semaine en cours |
[...]_devoirs_semaine_suivante |
devoirs de la semaine suivante |
[...]_devoirs_semaine_apres_suivante |
devoirs de la semaine suivante suivante :D |
[...]_notes |
notes |
[...]_evaluations |
evaluations |
[...]_emploi_du_temps_aujourd_hui |
emploi du temps du jour |
[...]_emploi_du_temps_demain |
emploi du temps du lendemain |
[...]_emploi_du_temps_jour_suivant |
emploi du temps du jour ouvré suivant (ex: si on consulte le vendredi, il doit y avoir l'emploi du temps du lundi ) |
[...]_emploi_du_temps_semaine_en_cours |
emploi du temps de la semaine en cours |
[...]_emploi_du_temps_semaine_suivante |
emploi du temps de la semaine suivante |
[...]_emploi_du_temps_semaine_apres_suivante |
emploi du temps de la semaine suivante suivante :D |
[...]_absences |
absences |
[...]_retards |
retards |
[...]_sanctions |
sanctions |
[...]_encouragements |
encouragements |
Il y a des événements qui sont déclenché sous certaines conditions. Ils peuvent être utiliser comme déclencheur dans des automatisations.
| Evénement | Description |
|---|---|
new_formulaire |
nouveau formulaire |
new_devoir |
nouveau devoir |
new_note |
nouvelle note |
new_evaluation |
nouvelle evaluation |
new_absence |
nouvelle absence |
new_retard |
nouveau retard |
new_sanction |
nouvelle sanction |
new_encouragement |
nouvel encouragement |
new_qcm |
nouveau qcm |
To enable debug logging for this integration, add the following to your configuration.yaml:
logger:
default: info
logs:
custom_components.ecole_directe: debugThe integration provides services for advanced automation:
Perform a custom action (customize this for your needs).
Example:
service: ecole_directe.example_action
data:
# Add your parameters hereManually refresh data from the API without waiting for the update interval.
Example:
service: ecole_directe.reload_dataUse these services in automations or scripts for more control.
| Name | Required | Description |
|---|---|---|
| Username | Yes | Your account username |
| Password | Yes | Your account password |
You can change these anytime by clicking Configure:
| Name | Default | Description |
|---|---|---|
| Update Interval | 1 hour | How often to refresh data |
| Enable Debugging | Off | Enable extra debug logging |
If your credentials expire or change, Home Assistant will automatically prompt you to reauthenticate:
- Go to Settings → Devices & Services
- Look for "Action Required" or "Configuration Required" message on the integration
- Click "Reconfigure" or follow the prompt
- Enter your updated credentials
- Click Submit
The integration will automatically resume normal operation with the new credentials.
You can also update credentials at any time without waiting for an error:
- Go to Settings → Devices & Services
- Find Ecole Directe
- Click the 3 dots menu → Reconfigure
- Enter new username/password
- Click Submit
Monitor your connection status with the API Connection binary sensor:
- On (Connected): Integration is receiving data normally
- Off (Disconnected): Connection lost or authentication failed
- Check the binary sensor attributes for diagnostic information
- Verify credentials if authentication failed
- Check network connectivity
To enable debug logging for this integration, add the following to your configuration.yaml:
logger:
default: info
logs:
custom_components.ecole_directe: debugIf you receive authentication errors:
- Verify your username and password are correct
- Check that your account has the necessary permissions
- Wait for the automatic reauthentication prompt, or manually reconfigure
- Check the API Connection binary sensor for status
If your device is not responding:
- Check the API Connection binary sensor - it should be "On"
- Check your network connection
- Verify the device is powered on
- Check the integration diagnostics (Settings → Devices & Services → Ecole Directe → 3 dots → Download diagnostics)
Contributions are welcome! Please open an issue or pull request if you have suggestions or improvements.
Want to contribute or customize this integration? You have two options:
The easiest way to get started - develop directly in your browser with GitHub Codespaces:
- ✅ Zero local setup required
- ✅ Pre-configured development environment
- ✅ Home Assistant included for testing
- ✅ 60 hours/month free for personal accounts
Prefer working on your machine? You'll need:
- Docker Desktop
- VS Code with the Dev Containers extension
Then:
- Clone this repository
- Open in VS Code
- Click "Reopen in Container" when prompted
Both options give you the same fully-configured development environment with Home Assistant, Python 3.13, and all necessary tools.
ℹ️ Transparency Notice
This integration was developed with assistance from AI coding agents (GitHub Copilot, Claude, and others). While the codebase follows Home Assistant Core standards, AI-generated code may not be reviewed or tested to the same extent as manually written code.
AI tools were used to:
- Generate boilerplate code following Home Assistant patterns
- Implement standard integration features (config flow, coordinator, entities)
- Ensure code quality and type safety
- Write documentation and comments
Please be aware that AI-assisted development may result in unexpected behavior or edge cases that haven't been thoroughly tested. If you encounter any issues, please open an issue on GitHub.
Note: This section can be removed or modified if AI assistance was not used in your integration's development.
This project is licensed under the MIT License - see the LICENSE file for details.
Made with ❤️ by @Giga77
