Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Dans AWS IoT Core, vous pouvez enrichir les messages MQTT des appareils en ajoutant des attributs de propagation, qui sont des métadonnées contextuelles issues d'attributs d'objets ou de détails de connexion. Ce processus, connu sous le nom d'enrichissement des messages, peut être utile dans divers scénarios. Par exemple, vous pouvez enrichir les messages pour chaque opération de publication entrante sans apporter de modifications côté appareil ni utiliser de règles. En tirant parti des attributs de propagation, vous pouvez bénéficier d'un moyen plus efficace et plus rentable d'enrichir vos données IoT sans les complexités liées à la configuration des règles ou à la gestion des configurations de republication.
La fonctionnalité d'enrichissement des messages est disponible pour AWS IoT Core les clients qui utilisent Basic Ingest et Message Broker. Il est important de noter que même si les appareils de publication peuvent utiliser n'importe quelle version de MQTT, les abonnés (applications ou services consommant des messages) doivent prendre en charge MQTT 5
Dans AWS IoT Core, vous pouvez ajouter des attributs de propagation lorsque vous créez ou mettez à jour un type d'objet, en utilisant le AWS Management Console ou le AWS CLI.
Important
Lorsque vous ajoutez des attributs de propagation, vous devez vous assurer que le client qui publie le message a été authentifié par un certificat. Pour de plus amples informations, veuillez consulter Authentification client.
Note
Si vous essayez de tester cette fonctionnalité à l'aide du client de test MQTT dans la console, elle risque de ne pas fonctionner car cette fonctionnalité nécessite que les clients MQTT soient authentifiés avec un certificat associé.
AWS Management Console
Pour ajouter des attributs de propagation destinés à enrichir les messages à l'aide du AWS Management Console
-
Ouvrez la page d'AWS IoT accueil
dans la AWS IoT console. Dans le volet de navigation de gauche, dans Gérer, sélectionnez Tous les appareils. Choisissez ensuite les types d'objets. -
Sur la page Types d'objets, choisissez Créer un type d'objet.
Pour configurer l'enrichissement des messages en mettant à jour un type d'objet, choisissez-en un. Ensuite, sur la page de détails du type d'objet, choisissez Mettre à jour.
-
Sur la page Créer un type d'objet, choisissez ou entrez les informations relatives au type d'objet dans les propriétés du type d'objet.
Si vous choisissez de mettre à jour un type d'objet, les propriétés du type d'objet apparaîtront une fois que vous aurez sélectionné Mettre à jour à l'étape précédente.
-
Dans Configuration supplémentaire, développez les attributs de propagation. Choisissez ensuite Attribut d'objet et entrez l'attribut d'objet que vous souhaitez renseigner dans les MQTT5 messages publiés. À l'aide de la console, vous pouvez ajouter jusqu'à trois attributs d'objets.
Dans la section Attributs de propagation, choisissez Attribut de connexion et entrez le type d'attribut et éventuellement le nom de l'attribut.
-
Ajoutez éventuellement des balises. Choisissez ensuite Créer un type d'objet.
Si vous choisissez de mettre à jour un type d'objet, choisissez Mettre à jour le type d'objet.
AWS CLI
-
Pour ajouter des attributs de propagation destinés à enrichir les messages en créant un nouveau type d'objet à l'aide de AWS CLI, exécutez la create-thing-type
commande. Voici un exemple de commande. aws iot create-thing-type \ --thing-type-name "LightBulb" \ --thing-type-properties "{\"mqtt5Configuration\":{\"propagatingAttributes\":[{\"userPropertyKey\":\"iot:ClientId\", \"connectionAttribute\":\"iot:ClientId\"}, {\"userPropertyKey\":\"test\", \"thingAttribute\":\"A\"}]}}" \
Le résultat de la commande peut ressembler à ce qui suit.
{ "thingTypeName": "LightBulb", "thingTypeArn": "arn:aws:iot:us-west-2:123456789012:thingtype/LightBulb", "thingTypeId": "ce3573b0-0a3c-45a7-ac93-4e0ce14cd190" }
-
Pour configurer l'enrichissement des messages en mettant à jour un type d'objet à l'aide de AWS CLI, exécutez la update-thing-type
commande. Notez que vous ne pouvez effectuer la mise à jour que mqtt5Configuration
lorsque vous exécutez cette commande. Voici un exemple de commande.aws iot update-thing-type \ --thing-type-name "MyThingType" \ --thing-type-properties "{\"mqtt5Configuration\":{\"propagatingAttributes\":[{\"userPropertyKey\":\"iot:ClientId\", \"connectionAttribute\":\"iot:ClientId\"}, {\"userPropertyKey\":\"test\", \"thingAttribute\":\"A\"}]}}" \
Cette commande ne produit aucune sortie.
-
Pour décrire un type d'objet, exécutez la
describe-thing-type
commande. Cette commande produira une sortie contenant des informations de configuration d'enrichissement des messages sur lething-type-properties
terrain. Voici un exemple de commande.aws iot describe-thing-type \ --thing-type-name "LightBulb"
Le résultat peut ressembler à ce qui suit.
{ "thingTypeName": "LightBulb", "thingTypeId": "bdf72512-0116-4392-8d79-bf39b17ef73d", "thingTypeArn": "arn:aws:iot:us-east-1:123456789012:thingtype/LightBulb", "thingTypeProperties": { "mqtt5Configuration": { "propagatingAttributes": [ { "userPropertyKey": "iot:ClientId", "connectionAttribute": "iot:ClientId" }, { "userPropertyKey": "test", "thingAttribute": "attribute" } ] } }, "thingTypeMetadata": { "deprecated": false, "creationDate": "2024-10-18T17:37:46.656000+00:00" } }
Pour de plus amples informations, veuillez consulter Types d'objets.