調(diào)用該接口修改指定的規(guī)則。

QPS限制

單個阿里云賬號調(diào)用該接口的每秒請求數(shù)(QPS)最大限制為50。

說明 RAM用戶共享阿里云賬號配額。

調(diào)試

您可以在OpenAPI Explorer中直接運行該接口,免去您計算簽名的困擾。運行成功后,OpenAPI Explorer可以自動生成SDK代碼示例。

請求參數(shù)

名稱 類型 是否必選 示例值 描述
Action String UpdateRule

系統(tǒng)規(guī)定參數(shù)。取值:UpdateRule。

RuleId Long 100000

要修改的規(guī)則ID。可在物聯(lián)網(wǎng)平臺控制臺對應(yīng)實例下,消息轉(zhuǎn)發(fā)>云產(chǎn)品流轉(zhuǎn)頁查看規(guī)則ID,或調(diào)用ListRule從返回結(jié)果中查看。

IotInstanceId String iot-cn-0pp1n8t****

實例ID。您可在物聯(lián)網(wǎng)平臺控制臺的實例概覽頁面,查看當(dāng)前實例的ID

重要
  • 若有ID值,必須傳入該ID值,否則調(diào)用會失敗。
  • 若無實例概覽頁面或ID值,則無需傳入。

實例的更多信息,請參見實例概述

Select String deviceName() as deviceName, items.Humidity.value as Humidity, items.Temperature.value as Temperature

要執(zhí)行的SQL SELECT語句。具體內(nèi)容參照SQL表達(dá)式

說明 此處傳入的是SELECT下的內(nèi)容。例如,如果SELECT語句為SELECT a,b,c,則此處傳入a,b,c
ShortTopic String +/thing/event/property/post

應(yīng)用該規(guī)則的具體Topic,格式一般為:${deviceName}/topicShortName。其中,${deviceName}是具體設(shè)備的名稱,topicShortName是Topic短名稱。

  • 基礎(chǔ)通信Topic或物模型通信Topic的ShortTopic,格式一般為:${deviceName}/topicShortName。其中,${deviceName}可以使用通配符+代替,表示產(chǎn)品下所有設(shè)備名稱。topicShortName取值如下:
    • /thing/event/property/post 設(shè)備上報的屬性消息。
    • /thing/event/${tsl.event.identifier}/post設(shè)備上報的事件消息,${}中是產(chǎn)品物模型中事件identifier。
    • /thing/lifecycle 設(shè)備生命周期變更消息。
    • /thing/downlink/reply/message設(shè)備響應(yīng)云端指令的結(jié)果消息。
    • /thing/list/found網(wǎng)關(guān)上報發(fā)現(xiàn)子設(shè)備消息。
    • /thing/topo/lifecycle設(shè)備拓?fù)潢P(guān)系變更消息。
    • /thing/event/property/history/post設(shè)備歷史屬性上報消息。
    • /thing/event/${tsl.event.identifier}/history/post設(shè)備歷史事件上報消息,${}中是產(chǎn)品物模型中事件identifier。
    • /ota/upgrade設(shè)備OTA升級狀態(tài)通知消息。
    • /ota/version/post設(shè)備OTA模塊版本號上報消息。
    • /thing/deviceinfo/update設(shè)備標(biāo)簽變更消息。
    • /edge/driver/${driver_id}/point_post物聯(lián)網(wǎng)邊緣計算的透傳模式Topic消息,${}中是物聯(lián)網(wǎng)邊緣計算的設(shè)備接入驅(qū)動ID。

      OTA升級批次狀態(tài)通知Topic也屬于基礎(chǔ)通信Topic,ShortTopic格式為:${packageId}/${jobId}/ota/job/status。其中,${packageId}是升級包ID,${jobId}是升級批次ID。

  • 自定義Topic的ShortTopic,如:${deviceName}/user/get

    調(diào)用QueryProductTopic接口,可以查看產(chǎn)品下的所有自定義Topic類。

    指定自定義Topic時,可以使用通配符+#

    • ${deviceName}可以使用通配符+代替,表示產(chǎn)品下所有設(shè)備;
    • 之后字段可以用/user/##表示/user層級之后的所有層級名稱。

      使用通配符,請參見Topic類中的通配符

  • 設(shè)備狀態(tài)變化通知Topic的ShortTopic:${deviceName}

    可以直接使用通配符+,表示產(chǎn)品下所有設(shè)備的狀態(tài)變化通知。

Where String Temperature>35

規(guī)則的觸發(fā)條件。具體內(nèi)容參照SQL表達(dá)式

說明 此處傳入的是WHERE中的內(nèi)容。例如,如果WHERE語句為WHERE a>10,則此處傳入a>10
ProductKey String aladaeW****

應(yīng)用該規(guī)則的產(chǎn)品ProductKey

Name String test_2

規(guī)則名稱。支持中文、英文字母、日文、數(shù)字、下劃線(_)和短劃線(-),長度為1~30個字符,一個中文或日文占2個字符。

RuleDesc String test

規(guī)則的描述信息。長度限制為100個字符,一個中文字符計為1個字符。

TopicType Integer 1
  • 0ShortTopic參數(shù)描述中的基礎(chǔ)通信Topic或物模型通信Topic,包含OTA升級批次狀態(tài)通知Topic。
  • 1:自定義Topic。
  • 2:設(shè)備狀態(tài)變化通知Topic:/as/mqtt/status/${productKey}/${deviceName}
Topic String /sys/g18l***/device1/thing/event/property/post

待修改規(guī)則的完整Topic。

如果傳入此參數(shù),無需再傳入?yún)?shù)ProductKeyShortTopicTopicType

調(diào)用API時,除了本文介紹的該API的特有請求參數(shù),還需傳入公共請求參數(shù)。公共請求參數(shù)說明,請參見公共參數(shù)文檔

返回數(shù)據(jù)

名稱 類型 示例值 描述
Code String iot.system.SystemException

調(diào)用失敗時,返回的錯誤碼。更多信息,請參見錯誤碼

ErrorMessage String 系統(tǒng)異常

調(diào)用失敗時,返回的出錯信息。

RequestId String 9A2F243E-17FE-4846-BAB5-D02A25155AC4

阿里云為該請求生成的唯一標(biāo)識符。

Success Boolean true

是否調(diào)用成功。

  • true:調(diào)用成功。
  • false:調(diào)用失敗。

示例

請求示例

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
&<公共請求參數(shù)>

正常返回示例

XML格式

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

JSON格式

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