Code Monkey home page Code Monkey logo

pronote2homeassistant's Introduction

Pronote dans Homeassistant

Ceci est un tutoriel pour intégrer Pronote dans Home assistant !

Lovelace

Rappel : Pronote est une application en ligne déployée dans plusieurs milliers de collèges et lycées français. Elle permet aux élèves de voir leurs emploi du temps, leurs notes et leurs devoirs. Vous pouvez voir une démo de l'application à l'adresse suivante : https://demo.index-education.net/pronote/eleve.html?login=true utlisateur : demonstration mot de passe : pronotevs

L'idée consiste donc à remonter ces informations (emploi du temps, note, devoirs...) dans HA pour créer des automatisations comme :

  • Régler l'heure de son réveil avec l'heure de début des cours du lendemain
  • Envoyer une notification (mobile, sms ou autre) si l'élève a une nouvelle note
  • Envoyer une notification si un cours est annulé (voir décaler l'heure du réveil)

Pré-requis :

  • Connaitre un minimum HomeAssistant
  • Avoir quelques bases en Python

Principe de base :

  • Un script python qui se connecte avec la lib pronotepy à Pronote et récupère les données dans un fichier JSON
  • Plusieurs sensor REST dans la configuration de HA qui se connectent en local au fichier JSON récupéré
  • Des Card Markdown dans Lovelace pour afficher les données

1. Installation du script python

Je mets donc à disposition un script python pronote.py Ce script permet de se connecter à Pronote et récupère toutes les informations dans un JSON Il est initialisé avec le compte de demo de Pronote > reste à l'adapter à vos identifiants en changeant les variables au début du script. Il faut donc installer ce script dans un dossier (nommé par exemple "python_script") dans le dossier /config de votre HA. Ce script quand il est lancé génère un fichier pronote_AAAA.json qu'il dépose dans /config/www/ de votre HA NB : AAAA est le nom de l'élève à paramétré dans le script

Il doit ensuite être lancé de façon régulière - toute les 5 ou 10 minutes - via la crontab par exemple Exemple : */10 * * * * /usr/bin/python3 /usr/share/hassio/homeassistant/python_scripts/pronote_demo.py > /tmp/pronote_demo.log 2>&1

2. Configuration YAML pour récupérer l'emploi du temps dans un sensor

Je fourni donc un fichier configuration.yaml configuration.yaml à copier à l'intérieur de celui de votre HA. Attention : N'oubliez pas de mettre la bonne adresse IP interne de votre HA (ne pas laisser 192.168.XX.XX) Et renommer pour changer "demo" avec le nom qu vous voulez (votre enfant)

3. Test des sensors avec le Developper Tools de HA

Tester les sensors qui commencent par "pronote" avec le Developer Tools de Home assistant

devtools

3. Affichage dans les cartes Lovelace

Il suffit de créer un nouvel onglet dans HA et ensuite de copier coller le contenu du fichier lovelace.yaml lovelace.yaml

ça doit donner ça : Lovelace

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.