# RESUMÉ FINAL - Smart City Digital Twin (06 Mai 2026 - 18h15) ## ✅ RÉALISÉ (en parallèle) ### 1. Pipelines complètes **Pipeline 1 : Orion-LD** - 3 IoT-Agents (EMQX:4041, Mosquitto:4042, BunkerM:4043) ✅ - Orion-LD (port 1026) ✅ - QuantumLeap-Orion (port 8668) ✅ - CrateDB-Orion (port 5432/4200) ✅ **Contient des données** (`quantumleap.etairqualityobserved`) **Pipeline 2 : Stellio** - Stellio (port 8080) ✅ - QuantumLeap-Stellio (port 8669) ✅ - CrateDB-Stellio (port 5433/4201) ✅ **Vide (à tester)** ### 2. Grafana ✅ - URL: https://grafana.digitribe.fr - **2 Datasources CrateDB** ajoutées : - `CrateDB-SmartCity` (ID: 23) → smart-city-cratedb:5432, DB: quantumleap - `CrateDB-Stellio` (ID: 24) → smart-city-cratedb-stellio:5432, DB: quantumleap_stellio ### 3. Documentation (Gitea) ✅ - ✅ `architecture-multi-cb.md` → Architecture 2 pipelines (corrigée) - ✅ `data-flow-diagram.md` → Mermaid (3 IoT-Agents) - ✅ `data-flow-diagram.html` → Version web - ✅ `session_resume_2026-05-06.md` → Résumé complet - ✅ `docker-compose.quantumleap-stellio.yml` → Nouveau fichier - ✅ Tout commité et pushé sur Gitea ### 4. Problèmes résolus - ✅ Variables QuantumLeap (`CRATE_HOST/PORT` au lieu de `QL_*`) - ✅ Images Docker (`fiware/quantum-leap:latest` avec tiret) - ✅ Alias réseau Orion-LD (`orion-ld` + `smart-city-orion-ld`) - ✅ Datasources Grafana (2 CrateDB connectées) ## ⚠️ EN COURS / PROBLÈMES 1. **Stellio Subscription** : Échoue en 405 (API NGSI-LD) - Cause probable : Endpoint ou format de requête incorrect - Action : Rechercher la bonne API Stellio 2. **Orion-LD Subscriptions** : Retourne HTTP 000 (Timeout) - Cause probable : Problème réseau interne (Orion → QuantumLeap) - Action : Vérifier les logs Orion-LD 3. **Simulateur** : Doit publier sur `json/smartcity-api-key/{id}/attrs` - Action : Modifier `simulator.py` si nécessaire ## 🎯 PROCHAINES ÉTAPES 1. **Tester Stellio** : Trouver la bonne API pour les subscriptions NGSI-LD 2. **Finaliser le flux** : Valider Stellio → QuantumLeap-Stellio → CrateDB-Stellio 3. **Créer les dashboards Grafana** : Utiliser les 2 sources CrateDB 4. **Simulateur** : S'assurer qu'il publie correctement sur les 3 brokers ## 📊 BILAN SERVICES | Service | Container | Port | Statut | Datasource Grafana | |---------|-----------|------|--------|-------------------| | **Orion-LD** | smart-city-orion-ld | 1026 | ✅ Up | - | | **QuantumLeap-Orion** | smart-city-quantumleap | 8668 | ✅ Up | - | | **CrateDB-Orion** | smart-city-cratedb | 5432/4200 | ✅ Up | `CrateDB-SmartCity` (23) ✅ | | **Stellio** | stellio-api-gateway | 8080 | ✅ Up | - | | **QuantumLeap-Stellio** | smart-city-quantumleap-stellio | 8669 | ✅ Up | - | | **CrateDB-Stellio** | smart-city-cratedb-stellio | 5433/4201 | ✅ Up | `CrateDB-Stellio` (24) ✅ | | **3 IoT-Agents** | smart-city-iot-agent-* | 4041-4043 | ✅ Up | - | | **Grafana** | smart-city-grafana | 3001 | ✅ Up | 2 sources ✅ | ## 📡 COMMANDES DE TEST (Flux complet) ```bash # 1. Publier sur EMQX (avec préfixe json/) mosquitto_pub -h localhost -p 11883 \ -t "json/smartcity-api-key/airquality_001/attrs" \ -m '{"NO2": 80.5, "temperature": 33.0, "humidity": 95.0}' # 2. Vérifier Orion-LD sleep 10 && curl -s http://localhost:1026/v2/entities # 3. Vérifier CrateDB-Orion docker exec smart-city-cratedb crash -c "SELECT * FROM quantumleap.etairqualityobserved LIMIT 5;" # 4. Vérifier Grafana curl -s http://localhost:3001/api/dashboards/home -u admin:Digitribe972 ``` --- *Dernière mise à jour : 06 Mai 2026, 18h15 - 2 Pipelines isolées, Grafana prêt*