更新时间:2023-04-13 GMT+08:00
分享

规则事件通知

接口说明

应用服务器在物联网平台订阅了规则事件通知后(订阅的通知类型为ruleEvent),当平台中配置的规则触发时,平台会向应用服务器推送通知消息。

注意事项

应用收到推送消息,请务必返回响应码。

URI

请求方法

POST

URI

由应用服务器订阅请求消息中的callbackurl决定。

传输协议

HTTPS/HTTP

请求参数

参数

必选/可选

类型

位置

描述

notifyType

必选

String

body

通知类型,取值:ruleEvent。

author

必选

String

body

创建此规则的用户的ID(最大长度256个字符)。

ruleId

必选

String

body

规则实例的ID

ruleName

必选

String

body

规则实例的名称。

logic

可选

String

body

多条件逻辑关系。

reasons

必选

List<Reason>

body

触发原因,对应conditions,具体参考Reason结构体

triggerTime

必选

String

body

规则触发的UTC时间,时间格式:yyyyMMdd'T'HHmmss'Z',如20151212T121212Z。

若需要显示本地时区时间,您需要自己进行时间转换。

actionsResults

必选

List<ActionResult>

body

规则动作执行的结果。

Reason结构体说明:

参数

必选/可选

类型

位置

描述

satisfactionTime

必选

String

body

满足条件的UTC时间,时间格式:yyyyMMdd'T'HHmmss'Z',如20151212T121212Z。

若需要显示本地时区时间,您需要自己进行时间转换。

type

必选

String

body

规则条件的类型。

id

可选

String

body

condition的ID。

info

可选

Json

body

不同条件类型携带不同信息。

transInfo

可选

Json

body

事件推送时的回填信息,对应规则的condition中的transInfo。

ActionResult结构体说明:

参数

必选/可选

类型

位置

描述

type

必选

String

body

规则动作的类型。

id

可选

String

body

action的ID。

exception

与result二选一

String

body

规则引擎构造action对应的请求过程中遇到异常时携带的异常信息。

result

与exception二选一

Json

body

动作的执行结果,对于DEVICE_CMD/SMS/EMAIL类型的动作,内容为statusCode+body。

info

可选

Json

body

不同动作类型携带不同信息。

transInfo

可选

Json

body

事件推送时的回填信息,对应规则的action中的transInfo。

响应参数

Status Code: 200 OK

请求示例

POST {callbackUrl}
Content-Type: application/json

{
  "notifyType": "ruleEvent",
  "author": "*****",
  "ruleId": "*************",
  "ruleName": "name",
  "reasons": [
    {
      "satisfactionTime": "yyyyMMddTHHmmssZ",
      "type": "******"
    }
  ],
  "triggerTime": "yyyyMMddTHHmmssZ",
  "actionsResults": [
    {
      "type": "******",
      "exception": "******"
    }
  ]
}

正常响应示例

Status Code: 200 OK

相关文档