104 lines
2.8 KiB
Markdown
104 lines
2.8 KiB
Markdown
# 📡 Gestion des sondes de température - Domo91
|
||
|
||
Application de supervision multi-sites pour chambres froides industrielles.
|
||
|
||
## 🧩 Structure du projet
|
||
|
||
- `Streamlit.py` : Interface Web (authentification, affichage des relevés, alertes)
|
||
- `Monitor.py` : Script de fond qui vérifie les seuils et envoie les alertes email
|
||
- `logs_monitor.csv` : Journal des températures (généré par Monitor)
|
||
- `Telegram_sondes.py` : (optionnel) Envoi des alertes sur Telegram
|
||
- `Chambres_froides` (MySQL) : Table de référence pour les seuils/états des sondes
|
||
|
||
## ⚙️ Fonctionnalités principales
|
||
|
||
- Authentification par rôle (utilisateur / superviseur)
|
||
- Visualisation interactive des relevés
|
||
- Détection automatique des dépassements prolongés
|
||
- Envoi d’alertes email automatisé
|
||
- Analyse graphique des relevés
|
||
- Admin : modification des seuils et activation/désactivation des sondes
|
||
|
||
## 🗺️ Schéma d'architecture
|
||
|
||

|
||
|
||
## 🚀 Installation locale (PyCharm)
|
||
|
||
1. Cloner le dépôt :
|
||
```bash
|
||
git clone http://192.168.1.250:3000/nom_du_repo.git
|
||
```
|
||
|
||
2. Créer l’environnement virtuel Python :
|
||
```bash
|
||
python3 -m venv .venv
|
||
source .venv/bin/activate
|
||
pip install -r requirements.txt
|
||
```
|
||
|
||
3. Lancer l'interface Streamlit :
|
||
```bash
|
||
streamlit run Streamlit.py
|
||
```
|
||
|
||
4. Lancer le script de fond manuellement :
|
||
```bash
|
||
python Monitor.py
|
||
```
|
||
|
||
## 🖥️ Installation sur le VPS
|
||
|
||
1. Cloner le dépôt dans `/home/debian/travail` :
|
||
```bash
|
||
git clone <url-du-repo> /home/debian/travail
|
||
```
|
||
|
||
2. Créer l’environnement virtuel :
|
||
```bash
|
||
cd /home/debian/travail
|
||
python3 -m venv venv
|
||
source venv/bin/activate
|
||
pip install -r requirements.txt
|
||
```
|
||
|
||
## 🛠️ Supervisor
|
||
|
||
Les services sont gérés par Supervisor :
|
||
|
||
- `monitor` → `/home/debian/travail/Monitor.py`
|
||
- `streamlit` → `/home/debian/travail/Streamlit.py`
|
||
|
||
Fichier exemple : `/etc/supervisor/conf.d/monitor.conf`
|
||
```ini
|
||
[program:monitor]
|
||
command=/home/debian/travail/venv/bin/python /home/debian/travail/Monitor.py
|
||
directory=/home/debian/travail
|
||
autostart=true
|
||
autorestart=true
|
||
stderr_logfile=/var/log/monitor.err.log
|
||
stdout_logfile=/var/log/monitor.out.log
|
||
```
|
||
|
||
Commandes utiles :
|
||
```bash
|
||
sudo supervisorctl status
|
||
sudo supervisorctl restart monitor
|
||
```
|
||
|
||
## 🧪 Vérification / Test
|
||
|
||
- Tester MQTT : `mosquitto_pub -t test -m "message"`
|
||
- Simuler une alerte : forcer une température > seuil pendant 30 minutes
|
||
- Vérifier les emails : vérifier logs ou boîte de réception
|
||
- Tester Streamlit : se connecter avec différents rôles utilisateur
|
||
|
||
## 🔒 Accès
|
||
|
||
- Interface Web : [https://app.domo91.fr](https://app.domo91.fr)
|
||
- Administration Git : [http://192.168.1.250:3000](http://192.168.1.250:3000)
|
||
|
||
## 👤 Auteur
|
||
|
||
Michel — [michel@domo91.fr](mailto:michel@domo91.fr)
|