Interroge un abonnement côté serveur Message Service (MNS) ou AMQP.
Limites
Chaque compte Alibaba Cloud peut exécuter un maximum de 5 requêtes par seconde (QPS).
Les utilisateurs RAM d’un compte Alibaba Cloud partagent le quota de ce compte.
Débogage
Paramètres de requête
| Parameter | Type | Required | Example | Description |
| Action | String | Yes | QuerySubscribeRelation | Opération à effectuer. Définissez la valeur sur QuerySubscribeRelation. |
| ProductKey | String | Yes | a1fyXVF**** | Clé ProductKey du produit spécifié pour l’abonnement. |
| Type | String | Yes | AMQP | Type d’abonnement. Valeurs possibles :
|
| IotInstanceId | String | No | iot-cn-0pp1n8t**** | ID de l’instance. Vous pouvez consulter l’ID de l’instance sur la page Overview de la console IoT Platform. Important
Pour plus d’informations, consultez la rubrique Vue d’ensemble. |
Outre les paramètres spécifiques à l’opération, vous devez spécifier les paramètres de requête communs lors de l’appel. Pour plus d’informations, consultez la rubrique Paramètres de requête communs.
Paramètres de réponse
| Parameter | Type | Example | Description |
| Code | String | iot.system.SystemException | Code d’erreur renvoyé en cas d’échec de l’appel. Pour plus d’informations, consultez la rubrique Codes d’erreur. |
| ErrorMessage | String | A system exception occurred. | Message d’erreur renvoyé en cas d’échec de l’appel. |
| DeviceDataFlag | Boolean | true | Indique si les messages des appareils en amont ont été poussés.
|
| DeviceStatusChangeFlag | Boolean | true | Indique si les messages relatifs aux changements d’état des appareils ont été poussés.
|
| FoundDeviceListFlag | Boolean | true | Indique si des messages ont été poussés lorsqu’une passerelle a détecté de nouveaux sous-appareils.
|
| DeviceTopoLifeCycleFlag | Boolean | true | Indique si les messages relatifs aux modifications des relations topologiques des appareils ont été poussés.
|
| DeviceLifeCycleFlag | Boolean | true | Indique si les messages relatifs aux modifications du cycle de vie des appareils ont été poussés.
|
| ThingHistoryFlag | Boolean | true | Indique si les données historiques Thing Specification Language (TSL) en amont ont été poussées.
|
| OtaEventFlag | Boolean | true | Indique si les notifications relatives à l’état des lots de mise à jour OTA ont été poussées.
|
| DeviceTagFlag | Boolean | true | Indique si les messages relatifs aux modifications des tags des appareils ont été poussés. Valeurs possibles :
Valeur par défaut : false. |
| OtaVersionFlag | Boolean | true | Indique si les messages relatifs aux numéros de version des modules OTA ont été poussés. Valeurs possibles :
Valeur par défaut : false. |
| OtaJobFlag | Boolean | true | Indique si les notifications relatives aux mises à jour par lot OTA ont été poussées. Valeurs possibles :
Valeur par défaut : false. |
| ProductKey | String | a1fyXVF**** | Clé ProductKey du produit spécifié pour l’abonnement. |
| Success | Boolean | true | Indique si l’appel a réussi.
|
| ConsumerGroupIds | List | [DEFAULT_GROUP,br45A6A1amoRFGN7x1zP00****] | ID des groupes de consommateurs créés dans l’abonnement AMQP. Ce paramètre est renvoyé si le paramètre Type est défini sur AMQP. |
| Type | String | AMQP | Type d’abonnement. Valeurs possibles :
|
| RequestId | String | 21D327AF-A7DE-4E59-B5D1-ACAC8C024555 | ID de la requête. |
| MnsConfiguration | String | { "queueName": "mns-test-topic1", "regionName": "cn-shanghai", "role": { "roleArn": "acs:ram::5645***:role/aliyuniotaccessingmnsrole", "roleName": "AliyunIOTAccessingMNSRole" } } | Configuration de la file d’attente MNS. Ce paramètre est renvoyé si le paramètre Type est défini sur MNS. Pour plus d’informations, consultez la section « Définition du paramètre MnsConfiguration ». |
Définition du paramètre MnsConfiguration
Commande | Description |
queueName | Nom du topic MNS utilisé pour recevoir les données. |
regionName | Code de la région où MNS est déployé. Exemple : cn-shanghai. |
role | Informations relatives au rôle RAM. Pour accorder à IoT Platform l’accès à MNS, attribuez-lui un rôle RAM. Le script suivant illustre la syntaxe d’un rôle RAM :
Remplacez
|
Exemple de réponse
{
"queueName": "mns-test-topic1",
"regionName": "cn-shanghai",
"role": {
"roleArn": "acs:ram::5645***:role/aliyuniotaccessingmnsrole",
"roleName": "AliyunIOTAccessingMNSRole"
}
}
Exemples
Exemples de requêtes
https://iot.cn-shanghai.aliyuncs.com/?Action=QuerySubscribeRelation
&ProductKey=a1Zkii7****
&Type=AMQP
&<Common request parameters>
Exemples de réponses réussies
Format XML
<QuerySubscribeRelationResponse>
<ConsumerGroupIds>
<e>Xs95KifeaSKbi8tKkcoD00****</e>
</ConsumerGroupIds>
<DeviceDataFlag>false</DeviceDataFlag>
<DeviceLifeCycleFlag>false</DeviceLifeCycleFlag>
<DeviceStatusChangeFlag>false</DeviceStatusChangeFlag>
<DeviceTopoLifeCycleFlag>false</DeviceTopoLifeCycleFlag>
<FoundDeviceListFlag>false</FoundDeviceListFlag>
<OtaEventFlag>true</OtaEventFlag>
<ProductKey>a1Zkii7****</ProductKey>
<RequestId>73B9DF43-7780-47DE-8BED-077729D28BD2</RequestId>
<Success>true</Success>
<ThingHistoryFlag>false</ThingHistoryFlag>
<Type>AMQP</Type>
</QuerySubscribeRelationResponse>
Format JSON
{
"DeviceLifeCycleFlag": false,
"RequestId": "73B9DF43-7780-47DE-8BED-077729D28BD2",
"DeviceDataFlag": false,
"DeviceTopoLifeCycleFlag": false,
"DeviceStatusChangeFlag": false,
"ConsumerGroupIds": [
"Xs95KifeaSKbi8tKkcoD00****"
],
"Success": true,
"ThingHistoryFlag": false,
"Type": "AMQP",
"FoundDeviceListFlag": false,
"OtaEventFlag": true,
"ProductKey": "a1Zkii7****"
}
Codes d’erreur
Pour obtenir la liste des codes d’erreur, consultez le Centre d’erreurs API.