更新时间:2022-02-24 GMT+08:00

规则事件通知

典型场景

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

接口功能

支持物联网平台向订阅了规则事件通知的应用服务器推送通知消息。

注意事项

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

接口原型

请求方法

POST

请求地址

由应用服务器订阅请求消息中的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

规则触发的时间。

actionsResults

必选

List<ActionResult>

body

规则动作执行的结果。

Reason结构体说明:

参数

必选/可选

类型

位置

描述

satisfactionTime

必选

String

body

满足条件的时间。

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

请求示例

Method: POST
request: {callbackUrl}
Header:
Content-Type: application/json
Body:
{
  "notifyType": "ruleEvent",
  "author": "*****",
  "ruleId": "*************",
  "ruleName": "name",
  "reasons": [
    {
      "satisfactionTime": "yyyyMMddTHHmmssZ",
      "type": "******"
    }
  ],
  "triggerTime": "yyyyMMddTHHmmssZ",
  "actionsResults": [
    {
      "type": "******",
      "exception": "******"
    }
  ]
}

响应示例

response:
Status Code: 200 OK