设备触发节点是将设备上报的属性(读写型)、事件数据或状态变更作为服务的输入,触发服务后续的业务逻辑。设备触发节点支持通过虚拟设备上报属性或事件触发服务,帮助您自定义设备信息响应的服务流。
节点配置
在业务逻辑开发编辑页面的设备触发节点到中间画布并进行配置,如图所示。
列表中,拖拽配置项 | 说明 |
---|---|
节点名称 | 设置节点名称。支持中文汉字、英文字母、数字和下划线(_),长度不超过30个字符。 |
选择产品 | 选择触发服务的产品。 |
选择设备 | 选择产品下的全部设备或指定设备。 选择设备后,系统将自动指定一个在线调试服务的设备。具体的调试方法请参见步骤三:调试。 重要 单个设备不支持同时应用于10个以上的设备触发服务。 |
触发条件 | 设置全部或指定的属性上报、事件上报或状态变更来触发服务。 |
节点输出
- 属性上报类型的输出数据格式:
{ "deviceContext": { "productKey": "设备的ProductKey", "deviceName": "设备的DeviceName", "gmtCreate": 设备的创建时间戳 }, "props": { "属性标识符": { "time": 设备上报信息的时间戳, "value": 设备上报的属性值 } } }
- 事件上报类型的输出数据格式:
{ "deviceContext": { "productKey": "设备的ProductKey", "deviceName": "设备的DeviceName", "gmtCreate": 设备的创建时间戳 }, "event": { "事件标识符": { "outputs": { "出参标识符": 出参值 }, "eventCode": "事件标识符", "eventName": "事件名称" , "eventType": "事件类型(信息/告警/故障)" } } }
- 状态变更类型的输出数据格式:
{ "deviceContext":{ "productKey":"设备的ProductKey", "deviceName":"设备的DeviceName", "gmtCreate":设备的创建时间戳 }, "status":{ "time":状态变更的时间戳, "value":"状态值" }, "dataSource":{ "status":"状态值" } }
字段 | 描述 | 示例 |
---|---|---|
deviceContext | 设备信息。 |
|
props | 设备上报的属性信息。当选择的上报类型中包含属性上报时,会出现该字段。 props字段内的具体内容,请在产品的功能定义页查看。 |
|
event | 设备上报的事件信息。当选择的上报类型中包含事件上报时,会出现该字段。 event字段内的具体内容,请在产品的功能定义页查看。 |
|
status | 状态变更的状态信息。当选择的上报类型中包含属性上报时,会出现该字段。 status字段内的具体内容,请在产品的功能定义页查看。 |
|
dataSource | 表示当前的状态信息。当选择的上报类型中包含属性上报时,会出现该字段。 |
|
后续节点使用该节点输出数据
如果该服务的其他节点需要调用设备上报的属性或事件,可以通过query访问具体参数,或将本节点选择为后续节点的输入源。
- 通过query访问。
在配置后续节点,如脚本节点或钉钉机器人节点,编辑内容时,可使用query调用属性或事件数据。如:
query.props.属性标识符.value
:调用设备上报的某属性值。query.deviceContext.deviceName
:调用设备名称。query.props.event.事件标识符.eventName
:调用设备上报的某事件名称。
配置钉钉机器人调用设备上报的属性数据示例:
- 通过配置项访问。
在配置后续节点时,如条件判断节点或路径选择节点,选择数据源为设备触发节点的某类型数据。