ProJote est un plugin JEEDOM qui vous permet de récupérer automatiquement les informations de votre compte Pronote directement dans Jeedom. Consultez vos notes, emplois du temps, devoirs, absences et bien plus encore!
✅ Intégration Pronote complète
- Récupération des notes et moyennes
- Emploi du temps (EDT) du jour et du lendemain
- Liste des devoirs et travail à faire
- Absences et retards
- Punitions et sanctions
- Notifications
✅ Gestion multi-comptes
- Support des comptes élèves
- Support des comptes parents
- Gestion des enfants multiples
✅ Modes de connexion flexibles
- Connexion par QR code
- Connexion par identifiants (CAS, URL)
- Gestion sécurisée des tokens
✅ Automatisation
- Synchronisation périodique configurable
- Cron toutes les heures (horaire d'école)
- Commandes d'actualisation manuelles
- Webhooks pour intégrations externes
✅ Multi-plateforme
- Compatible Jeedom Smart, Luna, Atlas
- Support Raspberry Pi, Docker, DIY
- Interface mobile responsive
- Jeedom 4.3 minimum
- Python 3.7+ avec environnement virtuel
- PronotePy (installé automatiquement)
- PHP 7.4+
- Port réseau 55369 disponible (configurable)
- Compte Pronote actif (élève ou parent)
- Allez dans Plugins → Gestion des plugins
- Cliquez sur Ajouter → ProJote
- Cliquez sur Installer
- Attendez la fin de l'installation
# Cloner le repository
cd /var/www/html/plugins
git clone https://github.com/aldarande/ProJote.git ProJote
cd ProJote
# Installation des dépendances Python
python3 -m venv resources/python_venv
source resources/python_venv/bin/activate
pip install -r requirements.txt
# Permissions
sudo chown www-data:www-data -R /var/www/html/plugins/ProJote/- Allez dans Plugins → Organisation → ProJote
- Cliquez sur l'onglet Configuration
| Paramètre | Description | Par défaut |
|---|---|---|
| Port du Démon | Port socket pour communication | 55369 |
| Niveau de log | Niveau de verbosité (debug/info/warning) | info |
- Allez dans Plugins → Organisation → ProJote
- Cliquez sur Ajouter un équipement
- Remplissez :
- Nom : Ex. "Pronote Élève" ou "Pronote Parent"
- Objet parent : Sélectionnez une pièce
- Sélectionnez Connexion par QR Code
- Cliquez sur le bouton 📱 Scanner QR
- Scannez le QR code Pronote
- Sauvegardez
- Allez dans Plugins → Organisation → ProJote
- Cliquez sur Ajouter un équipement
- Remplissez :
- Nom : Ex. "Pronote Élève"
- Type de compte : "Élève" ou "Parent"
- Mode CAS : Choisissez le type CAS (ViaUrl par défaut)
- URL Pronote : URL de votre établissement (ex: https://pronote.example.com)
- Identifiants : Nom d'utilisateur et mot de passe
- Si parent, sélectionnez le nom de l'enfant
- Sauvegardez
Une fois l'équipement créé :
| Paramètre | Description |
|---|---|
| Horaire de récupération | Heure de début des syncs (ex: 6h du matin) |
| Intervalle de synchro | Fréquence de mise à jour (en minutes) |
| Actif | Cochez pour activer la synchronisation |
- Rafraîchir : Force une synchronisation immédiate
Identité
- 👤 Nom de l'élève
- 🏫 Nom de la classe
- 🏢 Établissement
- 📷 Photo de profil
- 🔗 URL iCal (abonnement calendrier)
Notes & Résultats
- 📝 Liste des notes (détail)
- 📋 Dernière note
- 📊 Moyennes par matière
Emploi du Temps
- 📅 EDT du jour
- 📆 EDT du prochain jour
- ⏰ Heure de début/fin
- ❌ Cours annulés
Travail à Faire
- 📚 Liste des devoirs
- 📚 Devoirs pour demain
- ✅ Devoirs faits
- ❌ Devoirs non faits
Comportement
- 📍 Absences (liste et dernière)
- ⏱️ Retards (liste et dernier)
⚠️ Punitions (liste et dernière)
Autres
- 🔔 Notifications
- 📈 Compétences travaillées
Si [Pronote].Dernière note change
Envoyer notification "Nouvelle note : [Pronote].Dernière note"
Si [Pronote].Devoirs pour demain > 0
Envoyer notification "Devoirs pour demain : [Pronote].Nombre de devoir Demain"
Si [Pronote].Nombre d'absence augmente
Envoyer alerte "Nouvelle absence détectée"
- Tokens stockés localement dans
/data/[equipmentId]/(non synchronisés cloud) - Mot de passe chiffré (AES-256) en configuration
- HTTPS recommandé pour accéder à Jeedom
- Port socket (55369) en localhost uniquement
- Logs sensibles à vérifier en cas de problème
- Interface Jeedom → Administration → Logs
- Sélectionnez ProJote dans la liste
- Augmentez le niveau de debug si besoin
ProJote : Lancement démon ProJote
ProJote : Envoie au demon Python des infos Pronotes : {...}
ProJote : Création de la commande : refresh
| Erreur | Solution |
|---|---|
| "Le démon n'est pas démarré" | Relancez le démon (Plugins → ProJote → Démon) |
| "Impossible de lancer le démon" | Vérifiez Python, vérifiez le port 55369 |
| "Port déjà utilisé" | Changez le port dans Configuration (55370 par ex.) |
| "Authentification échouée" | Vérifiez les identifiants, testez sur pronote.net |
| "Timeout socket" | Relancez le démon, vérifiez la connectivité réseau |
Les mises à jour sont automatiques si activées dans les paramètres Jeedom.
cd /var/www/html/plugins/ProJote
git pull origin masterVérifiez les nouveautés : Changelog
Pour une documentation détaillée :
Les contributions sont bienvenues ! Pour participer :
- Fork le projet
- Créez une branche feature (
git checkout -b feature/AmazingFeature) - Commit vos changements (
git commit -m 'Add AmazingFeature') - Push vers la branche (
git push origin feature/AmazingFeature) - Ouvrez une Pull Request
Ce projet est sous licence AGPL v3.0 - voir LICENSE pour détails.
Aldarande - GitHub
Q: Puis-je utiliser ce plugin en compte parent?
R: Oui! Sélectionnez "Parent" lors de la configuration et choisissez l'enfant.
Q: Comment changer le mot de passe stocké?
R: Modifiez l'équipement et sauvegardez - les nouveaux identifiants remplacent les anciens.
Q: Les données sont-elles envoyées à l'auteur?
R: Non. Tout reste en local sur votre Jeedom. Aucune télémétrie.
Q: Puis-je utiliser plusieurs comptes?
R: Oui! Créez plusieurs équipements ProJote (parent + enfants, par exemple).
Q: Quel est l'intervalle de synchro minimum?
R: 1 minute par défaut, mais recommandé 5-10 minutes pour limiter les appels Pronote.
Version: 0.8
Dernière mise à jour: 2024-02
Support: Jeedom 4.3+