# Administration système, déploiement et surveillance de logiciels dans un réseau de capteurs

Dans le cadre de recherches dans le domaine des réseaux de capteurs et des objets connectés, notre projet consiste à développer une solution de maintenance et de reconfiguration à distance d'un ensemble de nœuds déployés dans un environnement réel. Afin de faciliter la vie de ces chercheurs sur le test de leurs hypothèses, ils pourront facilement et rapidement déployer leurs créations sur tout les nœuds souhaités grâce à un système de sélection ou au téléchargement du nouveau code sur tous les nœuds du réseau.

L'objectif principal de notre projet est de créer une interface permettant de tester des programmes ou logiciels en les déployant sur le vaste réseau de capteurs. Nous devons rendre accessible chaque nœud indépendamment des autres, tout en permettant un lien entre tous, afin d'envoyer le contenu vers tout ou une partie des nœuds disponibles. 

## Pour commencer

Vous trouverez tous les fichiers et dossiers liés à ce projet sur ce dépôt git.

## Démarrage

- _Etape 1_ : Rendez-vous sur le site : **http://projet-p10.plil.fr/IMA3_P10/site/index.html** ;
- _Etape 2_ : Connectez-vous ;
- _Etape 3_ : Utilisez le site pour envoyer des codes aux capteurs et pour récupérer des valeurs ou un historique.

## Fonctionnalités

### Equipe 1

- Uploader les codes reçu sur la bonne carte (i.e. le bon capteur) ;
- Récupérer les valeurs de retour des capteurs et les envoyer sur le serveur.

### Equipe 2

- Script Ansible permettant l'initialisation et la mise à jour des données présentes sur les Raspberry Pi.

### Equipe 3

Site web permettant différentes choses :
- Ajouter raspberrys et capteurs;
- Envoyer un code à un ensemble de capteurs ;
- Observer les valeurs des capteurs ;
- Récupérer un historique des valeurs des capteurs ;
- Afficher l'évolution des valeurs sous forme de graphe.

## Avancée du projet

### Equipe 1

- Travail sur la correspondance entre un port USB et un adresse fixe.

### Equipe 2

- Travail sur Cron pour automatiser de manière régulière l'exécution des codes sans attente active.

### Equipe 3

- Le site est terminé.

## Fabriqué avec

* **emacs** - Editeur de textes

## Auteurs

* **Guillaume Rouillé**
* **Eymeric Capronnier**
* **Loris Ahouassou**
* **Thomas Mertz**
