Files
aircarto-protocols/formats/mqtt.md

1.2 KiB

MQTT — conventions

Statut : squelette. À compléter au premier déploiement MQTT AirCarto.

Broker

  • À définir : URL, port (1883 / 8883 TLS), credentials.

Topics

Convention proposée :

aircarto/<projet>/<token>/<canal>
  • projet : nebuleair, moduleair, mobileair, …
  • token : identifiant unique du capteur.
  • canal :
    • telemetry : mesures périodiques (publish capteur → broker), payload JSON conforme à json-payload.md.
    • status : en ligne / hors ligne, version firmware (retain, LWT).
    • cmd : commandes broker → capteur (ex. reboot, changer la fréquence).
    • ack : accusés capteur → broker.

Exemple : aircarto/nebuleair/001/telemetry.

QoS et retain

  • telemetry : QoS 0 (fire-and-forget, InfluxDB tolère les pertes occasionnelles).
  • status : QoS 1 + retain = true + LWT pour détecter les déconnexions.
  • cmd : QoS 1, pas de retain.

À faire

  • Nommer le broker de référence (Mosquitto ? HiveMQ ? EMQX ?).
  • Documenter l'authentification (username+password, certificats ?).
  • Schéma exact des payloads status et cmd.
  • Exemple de wildcard subscription côté backend.