00 CloudGate Mission 2 — Documentation
Pierre Dulac · White Box × IoT Valley × Terega · livraison technique 2026-04-25
Le projet en une image
┌───────────────┐ ┌──────────────────────────┐ ┌─────────────────────┐
Balise ─┤ LoRa class A ├────────▶│ CloudGate CG8102 │────────▶│ IoBase (Indaba) │
Asystom │ Sentinel │ │ LuvitRED canvas + flows │ │ Auth Bearer DAP │
└───────────────┘ │ │ └─────────────────────┘
│ ┌─────────────────┐ │ ┌─────────────────────┐
│ │ 4 flux + DAP ├────┼────────▶│ Asystom Advisor │
│ │ + audit local │ │ │ Auth Basic │
│ │ + queue 15 j │ │◀────────┤ /getPendingMsgs │
│ └─────────────────┘ │ └─────────────────────┘
└──────────────────────────┘
Sommaire
CHAPITRE 01
Architecture & 4 flux de données
Vue topologique. Flux 01 IoBase uplink, Flux 02 Asystom uplink, Flux 03 Asystom downlink polling, Flux 04 health. Chaînes du canvas LuvitRED node par node.
CHAPITRE 02
Auth DAP IoBase
Enrôlement register → Token → refresh. Single-use protégé par mutex. Persistance flash. Retry 401 automatique. Refresh préventif au retour de WAN.
CHAPITRE 03
API IoBase v1.0
Spec PDF Holmes 2026-04-16. URL
/api/v1/cloudgate/payloads, headers X-CloudGate-Id + X-Device-Id, body 6 champs requis + ISO 8601 timestamp.CHAPITRE 04
API Asystom Advisor
Spec PDF Patrick Duc 2026-04-24. Uplink Loriot-like, Basic auth + header
X-Network. Downlink polling GET /getPendingMsgs?client=<id>.CHAPITRE 05
Procédure création capteurs
Enrôlement OTAA d'une nouvelle balise Asystom.
msg.app.add, séquence magnet, vérif Join, FPort de référence, troubleshooting.CHAPITRE 06
Déploiement
Golden Sample CloudGate Universe, clonage multi-CG via export/import config.tar.gz, accès distant frp (frpc + frps).
CHAPITRE 07
Runbook ops
Que faire en cas de coupure WAN, token expiré, balise bloquée, rotation audit, recovery DAP. Indaba Alerting.
ANNEXE A
Cockpit mock
Serveur Python local
mock_cockpit.py qui simule IoBase + DAP + Asystom. Dashboard live sur localhost:9000/dashboard.ANNEXE B
Globals reference
Variables
global.* du canvas LuvitRED, qui les lit, qui les écrit, valeur par défaut, à set par Terega.Périmètre Mission 2
Devis FAC-2026-0110 émis le 2026-04-15, 12 lignes regroupées en 4 catégories :
| Catégorie | Lignes | Statut |
|---|---|---|
| CloudGate × Asystom | Uplink push, Downlink polling | livré |
| CloudGate → IoBase | Payload, Health, DAP auth, Historisation 15 j | livré |
| Configuration & Opérationnel | Cadrage, workflow, procédure capteurs, doc | livré |
| Déploiement & Accès | frp, multi-CloudGate | en cours |
Validation interne par Mock Cockpit
L'ensemble des chaînes a été validé end-to-end contre un mock IoBase + DAP + Asystom local
(voir Annexe A). Au moment du déploiement chez Terega, il suffit
de modifier global.iobase_host, global.dap_host, global.asystom_url
et les credentials Basic associés pour basculer sur les vrais endpoints.