Traduit de English par IA ·
Pas besoin de topics par appareil. Les 300 publient tous sur le même v1/telemetry. Hermetry sait qui parle grâce aux identifiants avec lesquels l’appareil s’est connecté, donc le token fait office d’adresse. L’unité 17 ne peut pas écrire en tant que 18 car elle n’a pas les identifiants de 18, et un appareil ne peut s’abonner qu’à ses propres topics de downlink (v1/attributes/set, v1/rpc/req/+ et ainsi de suite), donc il ne voit jamais non plus les messages d’un autre appareil. Aucun fichier ACL à maintenir.Kevin n’a pas tort de dire que les topics Custom existent, mais ils sont destinés aux firmwares que l’on ne peut pas modifier : le profil considère alors tout topic en dehors de v1/ comme de la télémétrie de cet appareil. Les limites sont une profondeur de topic de 8, une longueur de 128 et 50 topics distincts par appareil, et avec « Prefix keys with the topic », grid/s12/temp devient une clé du type grid.s12.temp. Comme vous écrivez un nouveau firmware, ignorez tout cela.Pour l’identifiant du site, je en ferais plutôt un attribut de l’appareil qu’une partie du topic. Il ne change pas à chaque minute, donc il n’a pas sa place dans la télémétrie.Référence avec le tableau complet des topics : MQTT topics and payload reference. Un point pratique tiré de mon propre passage à cette architecture : donnez à chaque unité ses propres identifiants. Deux appareils partageant un même token ne cessent de se déconnecter mutuellement.
No per-device topics needed. All 300 publish to the same v1/telemetry. Hermetry knows who’s talking from the credential the device logged in with, so the token is effectively the address. Unit 17 can’t write as unit 18 because it doesn’t have 18’s credential, and a device can only subscribe to its own downlink topics (v1/attributes/set, v1/rpc/req/+ and so on), so it never sees another device’s messages either. No ACL file to keep.
Kevin’s not wrong that Custom topics exist, but they’re for firmware you can’t change: the profile then takes any topic outside v1/ as telemetry of that device. Limits there are topic depth 8, length 128 and 50 distinct topics per device, and with « Prefix keys with the topic » grid/s12/temp becomes a key like grid.s12.temp. Since you’re writing new firmware, skip all of that.
For the site id I’d make it an attribute of the device instead of part of the topic. It doesn’t change every minute so it doesn’t belong in telemetry.
Reference with the full topic table: MQTT topics and payload reference. One practical thing from when I moved my own stuff: give every unit its own credential. Two devices sharing one token keep kicking each other off.

