Rubriques MQTT - AWS IoT Core

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.

Rubriques MQTT

Les rubriques MQTT identifient les AWS IoT messages. AWS IoT les clients identifient les messages qu'ils publient en leur attribuant des noms de sujets. Les clients identifient les messages auxquels ils souhaitent s'abonner (réception) en enregistrant un filtre de rubrique avec AWS IoT Core. L'agent de messages utilise des noms de rubrique et des filtres de rubrique pour acheminer les messages des clients publiant vers les clients abonnés.

L’agent de messages utilise des rubriques pour identifier les messages envoyés via MQTT et envoyés via HTTP auURL du message HTTPS.

Bien que certains sujets réservés au système soient pris AWS IoT en charge, la plupart des sujets MQTT sont créés et gérés par vous, le concepteur du système. AWS IoT utilise des rubriques pour identifier les messages reçus des clients de publication et sélectionner les messages à envoyer aux clients abonnés, comme décrit dans les sections suivantes. Avant de créer un espace de nom de rubrique pour votre système, passez en revue les caractéristiques des rubriques MQTT pour créer la hiérarchie des noms de rubrique qui fonctionne le mieux pour votre système IoT.

Noms de rubrique

Les noms de rubrique et les filtres de rubrique sont des chaînes codées en UTF-8. Ils peuvent représenter une hiérarchie d'informations en utilisant la barre oblique (/) pour séparer les niveaux de la hiérarchie. Par exemple, ce nom de rubrique peut faire référence à un capteur de température dans la salle 1 :

  • sensor/temperature/room1

Dans cet exemple, il peut également y avoir d'autres types de capteur dans d'autres pièces avec des noms de rubrique tels que :

  • sensor/temperature/room2

  • sensor/humidity/room1

  • sensor/humidity/room2

Note

Lorsque vous réfléchissez aux noms de rubrique pour les messages de votre système, gardez à l'esprit les points suivants :

  • Les noms de rubrique et les filtres de rubrique sont sensibles à la casse.

  • Les noms de rubrique ne doivent pas contenir d'informations personnelles identifiables.

  • Les noms de rubrique commençant par $ sont des rubriques réservées qui ne doivent être utilisées que par AWS IoT Core.

  • AWS IoT Core Impossible d'envoyer ou de recevoir des messages entre Compte AWS les régions ou entre elles.

Pour plus d'informations sur la conception des noms de rubriques et de l'espace de noms, consultez notre livre blanc, Conception de rubriques MQTT pour. AWS IoT Core

Pour obtenir des exemples de la façon dont les applications peuvent publier des messages et s'y abonner, commencez par Commencer avec AWS IoT Core etAWS IoT SDK pour appareils, kits de développement logiciel mobiles et AWS IoT client pour appareils.

Important

L'espace de noms de rubrique est limité à une région Compte AWS et. Par exemple, le sensor/temp/room1 sujet utilisé par un utilisateur Compte AWS dans une région est distinct du sensor/temp/room1 sujet utilisé par le même AWS compte dans une autre région ou utilisé par un autre Compte AWS dans n'importe quelle région.

ARN de la rubrique

Tous les Amazon Resource Name (ARN) de la rubrique ont le format suivant :

arn:aws:iot:aws-region:AWS-account-ID:topic/Topic

Par exemple, arn:aws:iot:us-west-2:123EXAMPLE456:topic/application/topic/device/sensor est un ARN pour la rubrique application/topic/device/sensor.

Filtres de rubrique

Les clients abonnés enregistrent des filtres de rubrique avec l’agent de messages afin de spécifier les rubriques de message que l’agent de messages doit leur envoyer. Un filtre de rubrique peut être composé d’un nom de rubrique unique pour s'abonner à un seul nom de rubrique. Il peut également inclure des caractères génériques pour s'abonner à plusieurs noms de rubrique à la fois.

Les clients publiant ne peuvent pas utiliser de caractères génériques dans les noms de rubrique qu'ils publient.

Le tableau suivant répertorie les caractères génériques pouvant être utilisés dans un filtre de rubrique.

Caractères génériques de rubrique
Caractère générique Correspondance Remarques
# Toutes les chaînes au niveau et au-dessous dans la hiérarchie des rubriques.

Doit être le dernier caractère du filtre de rubrique.

Doit être le seul caractère dans son niveau de hiérarchie des rubriques.

Peut être utilisé dans un filtre de rubrique contenant également le caractère générique +.

+ Toute chaîne du niveau qui contient le caractère.

Doit être le seul caractère dans son niveau de hiérarchie des rubriques.

Peut être utilisé dans plusieurs niveaux d'un filtre de rubrique.

Utilisation de caractères génériques avec les exemples de nom de rubrique de capteur précédents :

  • Un abonnement à sensor/# reçoit les messages publiés dans sensor/, sensor/temperature, sensor/temperature/room1, mais pas les messages publiés dans sensor.

  • Un abonnement à sensor/+/room1 reçoit les messages publiés dans sensor/temperature/room1 et sensor/humidity/room1, mais pas les messages envoyés à sensor/temperature/room2 ou sensor/humidity/room2.

ARN de filtre de rubriques :

Les ARN (Amazon Resource Names) des filtres de rubriques ont tous la forme suivante :

arn:aws:iot:aws-region:AWS-account-ID:topicfilter/TopicFilter

Par exemple, arn:aws:iot:us-west-2:123EXAMPLE456:topicfilter/application/topic/+/sensor est un ARN pour le filtre de rubrique application/topic/+/sensor.