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.
Conservation de l'état de l'appareil lorsque l'appareil est hors connexion avec Device Shadows
Ces didacticiels vous montrent comment utiliser l'AWS IoTService Device Shadow pour stocker et mettre à jour les informations d'état d'un appareil. Le document Shadow, qui est un document JSON, affiche la modification de l'état de l'appareil en fonction des messages publiés par un appareil, une application locale ou un service. Dans ce didacticiel, le document Shadow montre le changement de couleur d'une ampoule. Ces didacticiels montrent également comment l'ombre stocke ces informations même lorsque l'appareil est déconnecté d'Internet, et transmet les dernières informations d'état à l'appareil lorsqu'il revient en ligne et demande ces informations.
Nous vous recommandons d'essayer ces didacticiels dans l'ordre dans lequel ils sont affichés ici, en commençant par leAWS IoTles ressources que vous devez créer et la configuration matérielle nécessaire, ce qui vous aide également à apprendre les concepts de manière incrémentielle. Ces didacticiels montrent comment configurer et connecter un appareil Raspberry Pi à utiliser avecAWS IoT. Si vous ne disposez pas du matériel requis, vous pouvez suivre ces didacticiels en les adaptant à un appareil de votre choix ou encréation d'un appareil virtuel avec Amazon EC2.
Présentation du scénario du didacticiel
Le scénario de ces didacticiels est une application ou un service local qui modifie la couleur d'une ampoule et publie ses données sur des sujets d'ombre réservés. Ces didacticiels sont similaires à la fonctionnalité Device Shadow décrite dans ledidacticiel de démarrage interactifet sont implémentés sur un appareil Raspberry Pi. Les didacticiels de cette section se concentrent sur une seule ombre classique tout en montrant comment vous pouvez prendre en charge les ombres nommées ou plusieurs appareils.
Les didacticiels suivants vous apprendront à utiliser l'AWS IoTService Device Shadow.
-
Didacticiel : Préparation de votre Raspberry Pi pour exécuter l'application shadow
Ce didacticiel montre comment configurer un appareil Raspberry Pi pour se connecter àAWS IoT. Vous allez également créer unAWS IoTdocument de stratégie et ressource objet, téléchargez les certificats, puis attachez la stratégie à cette ressource objet. Ce didacticiel vous prendra environ 30 minutes.
-
Didacticiel : Installation du kit SDK de périphériques et exécution de l'exemple d'application pour Device Shadows
Ce didacticiel montre comment installer les outils, logiciels et logiciels requisAWS IoTSDK de périphérique pour Python, puis exécutez l'exemple d'application Shadow. Ce didacticiel s'appuie sur les concepts présentés dansConnectez un Raspberry Pi ou un autre appareilet cela prend 20 minutes.
-
Didacticiel : Interaction avec Device Shadow à l'aide de l'exemple d'application et du client de test MQTT
Ce didacticiel montre comment vous utilisez le
shadow.py
Exemple d'application etAWS IoTconsolepour observer l'interaction entreAWS IoTOmbres de l'appareil et changements d'état de l'ampoule. Le didacticiel montre également comment envoyer des messages MQTT aux rubriques réservées de Device Shadow. Ce didacticiel peut prendre 45 minutes.
AWS IoTPrésentation Device Shadow
Un Device Shadow est une représentation virtuelle persistante d'un appareil géré par unressource objetque vous créez dans leAWS IoTregistre. Le document Shadow est un fichier JSON ou unJavaScriptDoc de notation utilisé pour stocker et extraire les informations sur l'état actuel d'un appareil. Vous pouvez utiliser l'shadow pour obtenir et définir l'état d'un appareil sur les rubriques MQTT ou les API REST HTTP, que l'appareil soit connecté ou non à Internet.
Un document Shadow contient unstate
qui décrit ces aspects de l'état de l'appareil.
-
desired
: Les applications spécifient les états souhaités des propriétés de l'appareil en mettant à jour l'desired
objet. -
reported
: les appareils rapportent leur état actuel dans lereported
objet. -
delta
:AWS IoTrapporte les différences entre l'état souhaité et l'état rapporté dans ledelta
objet.
Voici un exemple de document d'état Shadow.
{ "state": { "desired": { "color": "green" }, "reported": { "color": "blue" }, "delta": { "color": "green" } } }
Pour mettre à jour le document Shadow d'un appareil, vous pouvez utiliser leRubriques MQTT réservées, leAPI REST Device Shadowqui soutiennent l'GET
,UPDATE
, etDELETE
opérations avec HTTP et leAWS IoTCLI
Dans l'exemple précédent, supposons que vous souhaitiez modifier l'desired
color toyellow
. Pour ce faire, envoyez une demande auUpdateThingShadowAPI ou publiez un message dans l'Mise à jourla rubrique ;$aws/things/THING_NAME/shadow/update
.
{ "state": { "desired": { "color": yellow } } }
Les mises à jour concernent uniquement les champs spécifiés dans la demande. Après avoir correctement mis à jour le Device Shadow,AWS IoTpublie la nouvelledesired
état vers l'delta
la rubrique ;$aws/things/THING_NAME/shadow/delta
. Dans ce cas, le document Shadow ressemble à ceci :
{ "state": { "desired": { "color": yellow }, "reported": { "color": green }, "delta": { "color": yellow } } }
Le nouvel état est ensuite signalé auAWS IoTDevice ShadowUpdate
sujet$aws/things/THING_NAME/shadow/update
avec le message JSON suivant :
{ "state": { "reported": { "color": yellow } } }
Si vous souhaitez obtenir les informations sur l'état actuel, envoyez une demande auGetThingShadowAPI ou publiez un message MQTT sur leFaitesla rubrique ;$aws/things/THING_NAME/shadow/get
.
Pour plus d'informations sur l'utilisation du service Device Shadow, consultezAWS IoT Service Device Shadow.
Pour plus d'informations sur l'utilisation de Device Shadows dans les appareils, dans les applications et les services, consultezUtilisation des shadows sur les appareilsetUtilisation des shadows dans les applications et les services.
Pour plus d'informations sur l'interaction avecAWS IoTshadows, consultezInteraction avec les shadows.
Pour en savoir plus sur les rubriques réservées MQTT et les API REST HTTP, consultezMQTTSujets relatifs à Device ShadowetDevice Shadow REST API.