Tous les produits
Search
Centre de documentation

IoT Platform:UpdateRule

Dernière mise à jour :Aug 09, 2026

Modifie une règle spécifiée.

Limites

Chaque compte Alibaba Cloud peut traiter un maximum de 50 requêtes par seconde (QPS).

Remarque

Les utilisateurs RAM d’un compte Alibaba Cloud partagent le quota de ce compte.

Débogage

Alibaba Cloud met à votre disposition OpenAPI Explorer pour simplifier l’utilisation des API. OpenAPI Explorer calcule automatiquement la valeur de la signature. Nous vous recommandons d’appeler cette opération via OpenAPI Explorer. OpenAPI Explorer génère dynamiquement des exemples de code pour différents SDK.

Paramètres de la requête

ParameterTypeRequiredExampleDescription
ActionStringYesUpdateRule

Opération à effectuer. Définissez la valeur sur UpdateRule.

RuleIdLongYes100000

ID de la règle à modifier. Connectez-vous à la console IoT Platform, puis choisissez Rules > Data Forwarding pour afficher l’ID de la règle. Vous pouvez également appeler l’opération ListRule et consulter l’ID de la règle dans la réponse.

IotInstanceIdStringNoiot-cn-0pp1n8t****

ID de l’instance. Vous pouvez afficher l’ID de l’instance sur la page Overview de la console IoT Platform.

Important
  • Si votre instance possède un ID, vous devez configurer ce paramètre. À défaut, l’appel échouera.
  • Si votre instance ne dispose pas d’une page Overview ou d’ID, il n’est pas nécessaire de définir ce paramètre.

Pour plus d’informations, consultez la rubrique Overview.

SelectStringNodeviceName() as deviceName, items.Humidity.value as Humidity, items.Temperature.value as Temperature

Instruction SQL SELECT à exécuter. Pour plus d’informations, consultez la rubrique SQL expressions.

Remarque Spécifiez le contenu qui suit le mot-clé SELECT pour ce paramètre. Par exemple, si l’instruction SELECT est SELECT a,b,c, spécifiez a,b,c pour ce paramètre.
ShortTopicStringNo+/thing/event/property/post

Topic auquel cette règle s’applique. Syntaxe : ${deviceName}/topicShortName. ${deviceName} spécifie le nom du dispositif et topicShortName spécifie le nom personnalisé du topic.

  • Topics de communication de base ou topics de communication basés sur le langage TSL (Thing Specification Language). Syntaxe : ${deviceName}/topicShortName. Vous pouvez remplacer ${deviceName} par le caractère générique +. Ce caractère générique indique que le topic s’applique à tous les dispositifs du produit. Valeurs valides pour topicShortName :
    • /thing/event/property/post : soumet les données de propriété d’un dispositif.
    • /thing/event/${tsl.event.identifier}/post : soumet les données d’événement d’un dispositif. ${tsl.event.identifier} spécifie l’identifiant d’un événement dans le modèle TSL.
    • /thing/lifecycle : soumet les modifications du cycle de vie du dispositif.
    • /thing/downlink/reply/message : envoie une réponse à une requête provenant d’IoT Platform.
    • /thing/list/found : soumet les données lorsqu’une passerelle détecte un nouveau sous-dispositif.
    • /thing/topo/lifecycle : soumet les modifications de la topologie des dispositifs.
    • /thing/event/property/history/post : soumet les données historiques de propriété d’un dispositif.
    • /thing/event/${tsl.event.identifier}/post : soumet les données historiques d’événement d’un dispositif. ${tsl.event.identifier} spécifie l’identifiant d’un événement dans le TSL.
    • /ota/upgrade : soumet les statuts de mise à jour OTA.
    • /ota/version/post : soumet les versions des modules OTA.
    • /thing/deviceinfo/update : soumet les modifications des tags de dispositif.
    • /edge/driver/${driver_id}/point_post : soumet les données transmises depuis Link IoT Edge. ${driver_id} spécifie l’ID du pilote utilisé par un dispositif pour accéder à Link IoT Edge.

      ${packageId}/${jobId}/ota/job/status : soumet les statuts des lots de mise à jour OTA. Ce topic est un topic de communication de base. ${packageId} spécifie l’ID du package de mise à jour. ${jobId} spécifie l’ID du lot de mise à jour.

  • Topics personnalisés. Exemple : ${deviceName}/user/get.

    Appelez l’opération QueryProductTopic pour afficher tous les topics personnalisés du produit.

    Lorsque vous spécifiez un topic personnalisé, vous pouvez utiliser les caractères génériques + et #.

    • Vous pouvez remplacer ${deviceName} par le caractère générique +. Ce caractère générique indique que le topic s’applique à tous les dispositifs du produit.
    • Vous pouvez remplacer les champs qui suivent ${deviceName} par /user/#. Le caractère générique # indique que le topic s’applique quelles que soient les valeurs spécifiées pour les champs qui suivent /user.

      Pour plus d’informations sur l’utilisation des caractères génériques, consultez la rubrique Wildcards in topics.

  • Topic utilisé pour soumettre les modifications d’état des dispositifs : ${deviceName}.

    Vous pouvez utiliser le caractère générique +. Dans ce cas, les modifications d’état de tous les dispositifs du produit sont soumises.

WhereStringNoTemperature>35

Condition utilisée pour déclencher la règle. Pour plus d’informations, consultez la rubrique SQL expressions.

Remarque Spécifiez le contenu qui suit le mot-clé WHERE pour ce paramètre. Par exemple, si l’instruction WHERE est WHERE a>10, spécifiez a>10 pour ce paramètre.
ProductKeyStringNoaladaeW****

ProductKey du produit auquel la règle s’applique.

NameStringNotest_2

Nom de la règle. Il doit comporter entre 1 et 30 caractères et peut contenir des lettres, des chiffres, des traits de soulignement (_) et des traits d’union (-).

RuleDescStringNotest

Description de la règle. Elle peut comporter jusqu’à 100 caractères.

TopicTypeIntegerNo1
  • 0 : Le topic est un topic de communication de base ou un topic de communication basé sur le TSL.
  • 1 : Le topic est un topic personnalisé.
  • 2 : Le topic est utilisé pour soumettre les modifications d’état des dispositifs. Syntaxe : /as/mqtt/status/${productKey}/${deviceName}.
TopicStringNo/sys/g18l***/device1/thing/event/property/post

Topic complet auquel la règle s’applique.

Si vous spécifiez ce paramètre, il n’est pas nécessaire de renseigner les paramètres ProductKey, ShortTopic et TopicType.

En plus des paramètres de requête spécifiques à l’opération mentionnés ci-dessus, vous devez spécifier les paramètres de requête communs lors de l’appel de cette opération. Pour plus d’informations, consultez la rubrique Common request parameters.

Paramètres de la réponse

ParameterTypeExampleDescription
CodeStringiot.system.SystemException

Code d’erreur renvoyé en cas d’échec de l’appel. Pour plus d’informations, consultez la rubrique Error codes.

ErrorMessageStringA system exception occurred.

Message d’erreur renvoyé en cas d’échec de l’appel.

RequestIdString9A2F243E-17FE-4846-BAB5-D02A25155AC4

ID de la requête.

SuccessBooleantrue

Indique si l’appel a réussi.

  • true : L’appel a réussi.
  • false : L’appel a échoué.

Exemples

Exemple de requête

https://iot.cn-shanghai.aliyuncs.com/?Action=UpdateRule
&RuleId=100000
&Name=test_2
&ProductKey=aladaeW****
&ShortTopic=+/thing/event/property/post
&Select=deviceName() as deviceName, items.Humidity.value as Humidity, items.Temperature.value as Temperature
&RuleDesc=test
&Where=a>10
&TopicType=1
&<Common request parameters>

Exemple de réponse en cas de succès

XML format

<UpdateRuleResponse>
      <RequestId>9A2F243E-17FE-4874-QBB5-D02A25155AC8</RequestId>
      <Success>true</Success>
</UpdateRuleResponse>

JSON format

{
    "RequestId":"9A2F243E-17FE-4846-BAB5-D02A25155AC4",
    "Success":true
}

Codes d’erreur

Pour obtenir la liste des codes d’erreur, visitez le Centre d’erreurs API.