Skip to content
This repository has been archived by the owner on Aug 23, 2021. It is now read-only.

Générateur de planning (ICS) depuis l'emploi du temps INSA Lyon - Dept IF

License

Notifications You must be signed in to change notification settings

Embraser01/INSA-Planning-generator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

87 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

⚠️Ce projet n'est plus maintenu puisque j'ai fini mes études. Hésitez pas à le fork si vous voulez. ⚠️


Générateur d'emplois du temps - INSA Lyon

license David David Travis Codecov branch

Presentation

Serveur NodeJS qui génère les emplois du temps du département INFO de l'INSA Lyon sous la forme de fichier .ics, compatible avec la majorité des calendriers.

L'application actualise l'ensemble des emplois du temps toutes les heures.

Serveur de demo

Un serveur est actuellement en route sur cete adresse : https://calendar.insa.finch4.xyz/. Il n'y a aucune garantie que le serveur fonctionne en permanence !

Utilisation avec Google calendar

L'application est totalement compatible avec Google calendar (mis à jour tous les jours). Pour avoir le calendrier sur Google :

N.B. : Si le serveur est éteint, l'emploi du temps restera visible mais ne sera plus mis à jour.

Example

Donc par exemple pour récupérer l'emplois du temps du groupe 2 des 3IF il suffit de rajouter ce lien là : https://calendar.insa.finch4.xyz/export/3/2

Flux RSS

Un flux rss est disponible sur cette URL https://calendar.example.com/rss/:année/:groupe. Il détecte les différents changements d'emplois du temps à 3 semaines:

  • Ajout d'un cours
  • Suppression d'un cours
  • Remplacement d'un cours
  • Modification d'un cours (enseignants, durée, salle)

Mise en ligne

Dépendance

Téléchargement et installation des dépendances

Cloner le repo avec Git :

git clone https://github.com/Embraser01/INSA-Planning-generator.git

Installer les dépendances

cd INSA-Planning-generator/
yarn #npm install

Configuration

  • Pour configurer le serveur :
yarn run build #npm run build

Le fichier de configuration ressemble à ceci :

  • ENCRYPTION_KEY: (String) Encryption key used to crypt the password (aes-256-cbc with IV), must be a 32 characters string
  • WEB: (Object) Contains the configuration of the web part :
    • ssl: (Boolean) Activate the HTTPS server.
    • sslCert: (String) Path to the SSL certificate file.
    • sslKey: (String) Path to the SSL key file.
  • UPDATER: (Object) Contains the configuration of the updater part (it's where the magic happens):
    • password: (String) Password used to access plannings (encrypted).
    • login: (String) Login name used to access plannings.
    • interval: (Number) Time between intervals (in hours)

Lancer le serveur

yarn start #npm start

Pour le lancer avec screen :

#!/bin/bash
echo "(Re)démarrage du serveur calendrier INSA"
if screen -list | grep -q "calendrier_insa"; then
  screen -S calendrier_insa -X quit
fi
cd /path/to/INSA-Planning-generator
screen -dmS calendrier_insa npm start

Licence

Copyright (C) 2017 Marc-Antoine FERNANDES