Décodage des charges utiles et clés de connecteur
Découvrez quels champs votre appareil transmet et quelles valeurs ils contiennent, et comment ces noms de champ deviennent les métriques que vous voyez dans Kilo IoT Server.
Un appareil transmet une charge utile compacte — quelques octets, ou un petit message JSON. Un décodeur transforme cette charge utile en champs nommés, et ce sont ces champs que le reste de la plateforme utilise. Lorsque vous écrivez une règle, créez un widget de tableau de bord ou indiquez à une commande quel capteur vérifier, vous travaillez avec des valeurs issues du décodeur.
Deux noms sont en jeu, et ils ne sont généralement pas les mêmes :
Un clé de connecteur est le nom de champ produit par votre décodeur —
t,socket_status,humidity_pct. Il provient du firmware de l'appareil et de son codec.Un métrique est le nom que vous avez donné à ce champ lors du mappage — Température, État de la prise. C'est le nom affiché sur les tableaux de bord, dans les règles et dans l'éditeur de commandes.
Savoir quelle clé de connecteur se cache derrière quelle métrique — et quelles valeurs elle transporte réellement — est ce qui vous permet d'écrire dès la première fois une condition ou une vérification qui fonctionne.
Voir ce que votre appareil rapporte
Ouvrez l'appareil et allez à son onglet Métriques (Mappage pour les appareils MQTT). Le tableau des clés de connecteur répertorie chaque champ effectivement envoyé par l'appareil, avec :
la nom du champ exactement comme l'appareil l'envoie
sa valeur actuelle
la dernière mise à jour heure
Il s'agit de données en direct provenant de l'appareil, actualisées à mesure que de nouveaux messages arrivent, et c'est le moyen le plus rapide de répondre à « que rapporte cet appareil, et sous quelle forme ? ». Copiez la valeur d'ici lorsque vous devez la faire correspondre ailleurs — une condition de règle, une condition de tableau de bord ou la valeur attendue pour une commande.
Un appareil qui n'a encore rien transmis n'affiche rien. Attendez son prochain message planifié, ou déclenchez-en un depuis l'appareil lui-même.

Où se trouve le décodeur
Le décodeur est le Fonctions de code champ sur l'onglet Connexion de l'appareil. La sélection d'un modèle de profil d'appareil le renseigne pour vous ; la configuration manuelle d'un appareil le laisse vide, et vous collez alors le codec tiré de la documentation du fabricant ou d'un dépôt de codecs communautaire.
Vous pouvez le modifier à tout moment. Si la sortie décodée manque de champs, produit de mauvaises valeurs ou utilise des noms qui ne correspondent pas à la documentation du fabricant, modifiez le code et enregistrez — le prochain message envoyé par l'appareil sera décodé avec votre version.
Pour le guide complet de configuration de l'appareil, voir Enregistrer des appareils.
Associer des clés à des métriques
Le mappage est ce qui relie une clé de connecteur à un modèle de métrique, en donnant au champ brut un nom lisible, une unité et un type. Une fois mappé, cette mesure apparaît sous son nom de métrique partout dans la plateforme.
À faire depuis le même onglet Métriques ou Mappage — voir Enregistrer des appareils pour le pas à pas, et Métriques pour créer un modèle qui n'existe pas encore.
Une clé de connecteur qui n'est jamais mappée continue d'arriver mais n'a nulle part où aller : elle n'apparaîtra pas dans les règles, les tableaux de bord ni la vérification des commandes.
Les valeurs conservent la forme envoyée par l'appareil
La plateforme stocke la valeur produite par le décodeur, inchangée. Si votre décodeur renvoie le texte on, la métrique conserve le texte on — pas vraioff 1, et pas 1. S'il renvoie le nombre
Cela compte partout où vous comparez une valeur :
Dans une règle, une condition comparant du texte doit comparer à du texte :
vars.socket_status == "on".Dans une commande, la valeur attendue que vous saisissez doit correspondre à la forme rapportée par le capteur. Voir Confirmation des commandes.
Dans une condition de tableau de bord, la même règle s'applique.
Lorsqu'une comparaison ne correspond jamais, lisez la valeur actuelle dans le tableau des clés de connecteur et écrivez votre comparaison pour qu'elle corresponde à ce qui s'y trouve.
Tester un décodeur mioty avant de vous y fier
Les appareils MIOTY décodent via un blueprint plutôt que via une fonction de code, et les blueprints sont livrés avec Aperçu du décodage — exécutez le décodeur sur une charge utile d'exemple et inspectez les champs qu'il produit avant de l'attacher à de vrais appareils. Voir Blueprints MIOTY.
Pour les appareils LoRaWAN et MQTT, le tableau des clés de connecteur est l'endroit où vérifier le résultat : enregistrez le codec, attendez le prochain message et lisez les champs qu'il a produits.
Lorsque les champs ne sont pas ceux que vous attendiez
Des clés arrivent, mais rien n'apparaît dans les règles ni dans les tableaux de bord. Les clés n'ont pas encore été mappées à des métriques. Ouvrez l'onglet Métriques ou Mappage et mappez celles que vous voulez utiliser.
Les clés ne sont pas celles que vous attendiez. Le décodeur produit des noms de champs différents de ceux que recherchent les capteurs de l'appareil — résultat courant d'un codec écrit pour une autre version du firmware ou du matériel. Comparez les noms du tableau des clés de connecteur avec vos mappages, puis mettez à jour les mappages ou remplacez le codec.
Rien n'est décodé du tout. Vérifiez que l'appareil transmet, puis vérifiez le codec lui-même. Diagnostic de l’appareil indique combien de clés ont été décodées à partir des messages les plus récents.
Associé
Enregistrer des appareils — configuration de l'appareil, codecs et flux de mappage
Métriques — Noms normalisés, unités et types de valeur
Diagnostic de l’appareil — Ce que l'appareil a envoyé en dernier et s'il a été décodé
Confirmation des commandes — Utiliser une métrique et sa valeur pour vérifier une commande
Mis à jour