Projects - OpenWeek/data-logger GitHub Wiki
Avancement du projet
Il est possible de suivre en temps réel l'avancement du projet via les projets github listés sur cette page.
Pour bien comprendre le contenu de cette page, il est préférable d'être familiarisé avec les données utilisées en interne.
Syntaxe :
Item
: entité dans la base de donnée- item : propriété dans la base de donnée
Front-End
Ce projet reprend l'avancement de la partie Front-End de la WebApp. Il est divisé en différentes parties :
-
Gestion des
User
-
Overview desUser
Liste (visible par les admin seulement) reprenant tous les
User
.Chaque entrée de la liste renvoie vers le profil concerné.
-
Profil d'unUser
Page reprenant les données du
User
concerné. Si admin, possibilité desupprimer le User oumodifier les droits admin (ex : tab Danger Zone). -
Ajout d'unUser
Page de création de compte pour les nouveaux
User
(seulement accessible aux admin)
-
-
Gestion des
Project
Règle de lecture : le
User
est admin ou est membre duProject
Règle d'écriture : le
User
est admin ou est membre duProject
et a le droit writable sur ceProjet
. Dans le cas de l'ajout d'unProject
, leUser
doit être creator.-
Overview desProject
Liste de tous les
Project
connu du data-logger.Son contenu varie avec les droits du
User
qui la consulte selon la règle de lecture définie ci-dessus.Chaque entrée de la liste renvoie vers le profil concerné.
-
Ajout d'unProject
Page permettant l'ajout d'un
Project
.Accessible seulement selon la règle d'écriture définie ci-dessus
Doit être validée par un admin.
-
Ajout d'un plan de stockage
Sous-page (Template à inclure dans la page de création d'un
Project
) permettant d'ajouter un plan de stockage des données récoltées par lesSensorItem
concernés. (cfr syntaxe de RRDTool)Chaque
SensorItem
faisant partie duProject
(par l'intermédiare desClients
appartenant auProject
) représente une Data Source (au sens de RRD) à ajouter dans le data-plan. -
Profil d'unProject
Page reprenant les données du
Project
sélectionné.Accessible selon la règle de lecture et la règle d'écriture définie ci-dessus.
Toute modification sur cette page doit être validée par un admin (place le
Project
concerné en state 'pending' et tous lesClients
liés à ceProject
en enable=false; cfr diagramme d'état des Projets).
-
-
Gestion des
SensorItem
Règle de lecture : le
User
est admin ou est membre d'unProjet
auquel leClient
(contenant leSensorItem
) appartient / est attachéRègle d'écriture : le
User
est admin ou est membre duProjet
auquel appartient leClient
contenant leSensorItem
et a le droit writable sur ceProjet
-
Overview desSensorItem
Liste de tous les
SensorItem
connu du data-logger.Son contenu varie avec les droits du
User
qui la consulte selon la règle de lecture définie ci-dessus.Chaque item renvoie vers le profil concerné.
-
Ajout d'unSensorItem
Page permettant l'ajout d'un
SensorItem
. Accessible seulement selon la règle d'écriture définie ci-dessus. -
Profil d'unSensorItem
Page reprenant les données du
SensorItem
sélectionné. Accessible selon la règle de lecture et la règle d'écriture définie ci-dessus.Toute modification sur cette page (suivant la règle d'écriture) doit être validée par un admin (place le
Client
concerné en state 'pending' et enabled=false; cfr diagramme d'état des Clients).
-
-
Gestion des Clients
-
Overview des Clients
Liste globale de tous les Clients connus du data-logger. Son contenu varie avec les droits du User qui la consulte :
-
Un User ne peut consulter que les Clients qu'il a créé ou les Clients qui appartiennent à un Projet sur lequel il a les droits d'écriture.
-
Un Admin a accès à tous les clients connus du data-logger
Chaque item renvoie vers le profil concerné.
-
-
Ajout de Client
Page permettant l'ajout et la configuration d'un Client. Accessible seulement si les droits du User sont suffisants.
-
Profil du Client
Page reprenant les données du Client sélectionné. Accessible seulement si les droits du User sont suffisants.
Toute modification sur cette page doit être validée par un Admin (place le Client concerné en état 'Pending' et 'Enabled'=false; cfr diagramme d'état des Clients).
-
Backend
Ce projet reprend l'avancement de la partie Back-End de la WebApp. Il est composé des même parties que le Front-End auxquelles on peut ajouter :
-
Gestion de la configuration des sous-services
-
Hostapd
-
Dnsmasq
-
Mosquitto
-
SFTP server
-
Clients managment
Ce projet reprend tout ce qui concerne la manipulation des clients, à savoir :
-
Manipulation du Firmware
-
Build du Firmware
-
Flash du Firmware sur le Client
-
-
Manipulation du code Client
-
Génération du code Client
-
Flash du code Client
-