@ -1,13 +1,13 @@
# pySonnerie Backend
# pySonnerie Backend
Backend Python avec API REST HTTPS authentifiee pour piloter la lecture audio a partir de triggers serie (ESP32) .
Backend Python avec API REST HTTPS authentifiée pour piloter la lecture audio à partir de différent types de triggers .
## Fonctions implementees
## Fonctions implementees
- API REST securisee par authentification HTTP Basic
- API REST securisée
- HTTPS avec generation auto d'un certificat autosigne si absent
- HTTPS avec generation auto d'un certificat autosigne si absent
- Gestion des triggers via `data/conf.json`
- Gestion des triggers via `data/conf.json` (trigger type GPIO uniquement pour l'instant)
- Lecture audio par trigger serie (`GPIOX`) ou via API de forgage manuel
- Lecture audio par trigger ou via API
- Arret de la sortie audio via API
- Arret de la sortie audio via API
## Arborescence
## Arborescence
@ -20,6 +20,7 @@ backend/
musiques/
musiques/
certs/ # cree au premier lancement
certs/ # cree au premier lancement
run.py
run.py
init.py
requirements.txt
requirements.txt
```
```
@ -27,6 +28,7 @@ backend/
- Python 3.11+
- Python 3.11+
- `ffplay` installe (paquet ffmpeg)
- `ffplay` installe (paquet ffmpeg)
- Un serveur son installé et configuré (exemple: `alsa` sur debian avec alsa-utils et configuration de la carte son)
- acces au port serie (exemple: `/dev/ttyUSB0` )
- acces au port serie (exemple: `/dev/ttyUSB0` )
## Installation
## Installation
@ -65,7 +67,8 @@ Exemple d'entree trigger:
"type": "GPIO23",
"type": "GPIO23",
"music_file": "bell.mp3",
"music_file": "bell.mp3",
"start_seconds": 2.5,
"start_seconds": 2.5,
"end_seconds": 10.0
"end_seconds": 10.0,
"volume": 0.8
}
}
```
```