Pour contrôler un appareil, appelez l'opération SetDeviceDesiredProperty dans IoT Platform afin de définir les valeurs de propriété souhaitées. Si l'appareil est en ligne, la valeur est mise à jour en temps réel. Si l'appareil est hors ligne, la valeur souhaitée est mise en cache dans IoT Platform. À la reconnexion, l'appareil récupère la valeur souhaitée et met à jour la valeur existante. Cette rubrique décrit les formats de message liés aux valeurs de propriété souhaitées des appareils.
Pour plus d'informations sur l'appel de l'opération SetDeviceDesiredProperty dans IoT Platform afin de définir les valeurs de propriété souhaitées pour un appareil, consultez
.
Récupération des valeurs de propriété souhaitées
Les rubriques suivantes sont utilisées lorsqu'un appareil envoie des requêtes à IoT Platform et qu'IoT Platform renvoie des réponses à l'appareil :
Un appareil envoie une requête pour obtenir les valeurs de propriété souhaitées depuis IoT Platform.
Sujet de la requête :
/sys/${productKey}/${deviceName}/thing/property/desired/getSujet de la réponse :
/sys/${productKey}/${deviceName}/thing/property/desired/get_reply
Exemple de requête au format JSON Alink :
{
"id" : "123",
"version":"1.0",
"sys":{
"ack":0
},
"params" : [
"power",
"temperature"
],
"method":"thing.property.desired.get"
}
Exemple de réponse au format JSON Alink :
{
"id":"123",
"code":200,
"data":{
"power": {
"value": "on",
"version": 2
}
}
}
| Parameter | Type | Description |
| id | String | ID du message. Valeurs valides : 0 à 4294967295. Chaque ID de message doit être unique pour l'appareil. |
| version | String | Version du protocole. Valeur valide : 1.0. |
sys | Object | Paramètres de fonctionnalité étendue. Remarque
Si vous utilisez un SDK côté appareil sans configurer les fonctionnalités étendues, ce paramètre est omis et les valeurs par défaut s'appliquent. |
ack | Integer | Indique si le cloud renvoie une réponse. Champ situé sous sys.
Important
Thing Specification Language model usage examples. S'il n'est pas configuré, ce paramètre est omis et une réponse est renvoyée par défaut. |
| params | List | Liste des identifiants des propriétés dont vous souhaitez obtenir les valeurs souhaitées. Dans cet exemple, les identifiants de propriété suivants sont répertoriés : L'identifiant d'une propriété de module personnalisé est au format |
| method | String | Méthode de requête. Valeur valide : thing.property.desired.get. |
| Parameter | Type | Description |
| id | String | ID du message. Valeurs valides : 0 à 4294967295. Chaque ID de message doit être unique pour l'appareil. |
| code | Integer | Code d'état HTTP dans la réponse. Pour plus d'informations, consultez Common codes on devices. |
| data | Object | Informations sur la valeur souhaitée renvoyées. Dans cet exemple, les informations sur la valeur souhaitée de la propriété power sont renvoyées. Les informations incluent la value et la version de la propriété. L'identifiant d'une propriété de module personnalisé est au format Remarque Si aucune valeur souhaitée n'est définie pour une propriété dans IoT Platform ou si la valeur souhaitée a été supprimée, les données renvoyées ne contiennent pas l'identifiant de cette propriété. Dans cet exemple, la propriété temperature ne possède pas de valeur souhaitée. Par conséquent, les données renvoyées ne contiennent pas cet identifiant de propriété. Pour plus d'informations sur les paramètres dans data, consultez le tableau suivant. |
| Parameter | Type | Description |
| key | String | Identifiant de la propriété, tel que power dans cet exemple. |
| value | Object | Valeur souhaitée. |
| version | Integer | Version actuelle de la valeur souhaitée. Remarque Lorsque vous définissez la valeur de propriété souhaitée pour la première fois, la version est 1. Ensuite, la version augmente de 1 chaque fois que vous définissez la valeur souhaitée. |
Suppression des valeurs de propriété souhaitées
Les rubriques suivantes sont utilisées lorsqu'un appareil envoie des requêtes à IoT Platform et qu'IoT Platform renvoie des réponses à l'appareil :
Un appareil envoie une requête pour supprimer les valeurs de propriété souhaitées mises en cache dans IoT Platform.
Sujet de la requête :
/sys/${productKey}/${deviceName}/thing/property/desired/deleteSujet de la réponse :
/sys/${productKey}/${deviceName}/thing/property/desired/delete_reply
Exemple de requête au format JSON Alink :
{
"id": "123",
"version": "1.0",
"sys":{
"ack":0
},
"params": {
"power": {
"version": 1
},
"temperature": { }
},
"method":"thing.property.desired.delete"
}
Exemple de réponse au format JSON Alink :
{
"id": "123",
"code": 200,
"data": { }
}
| Parameter | Type | Description |
| id | String | ID du message. Valeurs valides : 0 à 4294967295. Chaque ID de message doit être unique pour l'appareil. |
| version | String | Version du protocole. Valeur valide : 1.0. |
sys | Object | Paramètres de fonctionnalité étendue. Remarque
Si vous utilisez un SDK côté appareil sans configurer les fonctionnalités étendues, ce paramètre est omis et les valeurs par défaut s'appliquent. |
ack | Integer | Indique si le cloud renvoie une réponse. Champ situé sous sys.
Important
Thing Specification Language model usage examples. S'il n'est pas configuré, ce paramètre est omis et une réponse est renvoyée par défaut. |
| params | Object | Liste des propriétés dont vous souhaitez supprimer les valeurs souhaitées. Une propriété est identifiée par l'identifiant et la version. Exemple : L'identifiant d'une propriété de module personnalisé est au format Pour plus d'informations sur les paramètres dans params, consultez le tableau suivant. |
| method | String | Méthode de requête. Valeur valide : thing.property.desired.delete. |
| Parameter | Type | Description |
| key | String | Identifiant de la propriété. Dans cet exemple, les identifiants de propriété suivants sont répertoriés : power et temperature. |
| version | Integer | Version de la valeur souhaitée à supprimer. Remarque
|
| Parameter | Type | Description |
| id | String | ID du message. Valeurs valides : 0 à 4294967295. Chaque ID de message doit être unique pour l'appareil. |
| code | Integer | Code d'état HTTP dans la réponse. Pour plus d'informations, consultez Common codes on devices. |
| data | Object | Données renvoyées. Dans la réponse à une requête de suppression des valeurs de propriété souhaitées, aucune donnée n'est renvoyée. |