first commit
🚀 Deploy — JH Photomaton / 🔍 Vérification (push) Has been cancelled
🚀 Deploy — JH Photomaton / 🍓 Deploy sur le Pi (push) Has been cancelled

This commit is contained in:
2026-07-16 00:55:29 +02:00
commit 209f81aa3d
100 changed files with 17682 additions and 0 deletions
+105
View File
@@ -0,0 +1,105 @@
# Migration Node-RED → JH Photomaton
## Ce que remplace JH Photomaton
| Fonctionnalité | Node-RED (avant) | JH Photomaton (après) |
|---|---|---|
| Bouton GPIO23 multi-clic | `button-events` node | `ButtonService` (gpiozero) |
| Relay GPIO12 | Nœud GPIO | `ButtonService.relay_on/off()` |
| NeoPixels GPIO18 | `rpi-neopixels` node | `LEDService` (rpi_ws281x) |
| Webhooks photobooth-app | `/api/photobooth/` | `/api/webhook/photobooth` |
| File d'attente impression | SQLite Node-RED | SQLite via `PrinterService` |
| Dashboard admin | Node-RED Dashboard | `/admin` — FastAPI + HTML |
| RAM consommée | ~150300 Mo | ~3080 Mo (objectif) |
## Étapes de migration
### 1. Installer JH Photomaton
```bash
cd /home/pi/jh-photomaton
sudo bash scripts/install.sh
```
### 2. Mettre à jour plugin_commander.json
Remplacer `~/.config/photobooth-app/plugin_commander.json` par notre version :
```bash
cp /home/pi/jh-photomaton/photobooth-app/config/plugin_commander_jh.json \
~/.config/photobooth-app/plugin_commander.json
```
Redémarrer photobooth-app :
```bash
sudo systemctl restart photobooth-app
```
### 3. Mettre à jour le share_command "Demande d'impression"
Dans `~/.config/photobooth-app/config.json`, modifier l'action de partage :
```json
{
"name": "Demande d'impression",
"processing": {
"share_command": "curl 'http://127.0.0.1:8090/api/print/request?filename={filename}'"
}
}
```
Ou utiliser la page `/admin/actions` de JH Photomaton pour éditer directement.
### 4. Désactiver Node-RED
```bash
sudo systemctl stop nodered
sudo systemctl disable nodered
```
Gain RAM : ~150-300 Mo libérés.
### 5. Mettre à jour Zoraxy (optionnel)
Changer le sous-domaine `photomaton-nodered.lessapinsduweb.com` pour pointer vers `:8090` au lieu de `:1880`.
### 6. Démarrer JH Photomaton
```bash
sudo systemctl start jh-photomaton
sudo systemctl status jh-photomaton
```
Accès admin : `http://photomaton-nodered.lessapinsduweb.com/admin`
(ou `http://10.3.141.1:8090/admin` depuis le WiFi Photomaton)
## Vérification
```bash
# Logs
sudo journalctl -u jh-photomaton -f
# Test bouton (simulation)
curl -X POST http://localhost:8090/api/system/button/simulate?clicks=1
# Test LED
curl -X POST http://localhost:8090/api/leds/effect?effect=countdown
# Test webhook
curl "http://localhost:8090/api/webhook/photobooth?event_key=counting&mediaitem_type=image"
# Statut système
curl http://localhost:8090/api/system/stats
```
## Rollback (retour Node-RED)
```bash
sudo systemctl stop jh-photomaton
sudo systemctl disable jh-photomaton
sudo systemctl start nodered
sudo systemctl enable nodered
# Restaurer plugin_commander.json original
cp ~/.config/photobooth-app/plugin_commander.json_backup-* ~/.config/photobooth-app/plugin_commander.json
sudo systemctl restart photobooth-app
```