设备触发节点是将设备上报的属性(读写型)、事件数据或状态变更作为服务的输入,触发服务的后续逻辑。且支持通过虚拟设备上报属性或事件触发服务。

节点配置

在业务逻辑开发编辑页面的节点 > 触发列表中,拖拽设备触发节点到中间画布并进行配置,如图所示。

上报类型
配置项 说明
节点名称 设置节点名称。支持中文汉字、英文字母、数字和下划线(_),长度不超过30个字符。
选择产品 选择触发服务的产品。
选择设备 选择产品下的全部设备指定设备

选择设备后,系统将自动指定一个在线调试服务的设备。具体的调试方法请参见步骤三:调试

触发条件 设置全部或指定的属性上报事件上报状态变更来触发服务。

节点输出

  • 属性上报类型的输出数据格式:
    {
            "deviceContext": {
                "productKey": "设备的productKey",
                "deviceName": "设备的deviceName",
                "gmtCreate": 设备的创建时间戳
            },
            "props": {
                "属性标识符": {
                "time": 设备上报信息的时间戳,
                "value": 设备上报的属性值
            }
        }
     }
  • 事件上报类型的输出数据格式:
    {
            "deviceContext": {
                "productKey": "设备的productKey",
                "deviceName": "设备的deviceName",
                "gmtCreate": 设备的创建时间戳
            },
            "event": {
                "事件标识符": {
                   "outputs": {
                       "出参标识符": 出参值
                   },
                   "eventCode": "事件标识符",
                   "eventName": "事件名称" ,
                   "eventType": "事件类型(信息/告警/故障)" 
                }
           }
    }
字段 描述 示例
deviceContext 设备信息。
{
  "productKey": "XXX", // 设备的porductKey

  "deviceName": "XXX", // 设备的deviceName

  "gmtCreate": 1538109258028 // 设备创建时间
}
props 设备上报的属性信息。当选择的上报类型中包含“属性上报”时,会出现该字段。

props字段内的具体内容,请在产品的功能定义页查看。

{
   "LightStatus":{  // 设备属性LightStatus
        "time":1538109258010,
        "value":0
    },
    "LightVolt":{ // 设备属性LightVolt
         "time":1538109258010,
         "value":1
    }
}
event 设备上报的事件信息。当选择的上报类型中包含“事件上报”时,会出现该字段。

event字段内的具体内容,请在产品的功能定义页查看。

{
    "Identifier1": {// 事件标识符
        "eventCode": "Identifier1", // 事件标识符 
        "eventName": "Warm", // 事件名称
        "eventType": "info", // 事件类型
        "outputs": { // 输出参数
            "outPara1": 2, 
            "outPara2": 0
        }
    }, 
    "Identifier2": {
        "eventCode": "Identifier2", 
        "eventName": "Warm", 
        "eventType": "info", 
        "outputs": {
            "outPara1": 2, 
            "outPara2": 0
        }
    }
}

后续节点使用该节点输出数据

如果该服务的其他节点需要调用设备上报的属性或事件,可以通过query访问具体参数,或将本节点选择为后续节点的输入源。

  • 通过query访问。

    在配置后续节点,如脚本节点或钉钉机器人节点,编辑内容时,可使用query调用属性或事件数据。如:

    • query.props.属性标识符.value:调用设备上报的某属性值。
    • query.deviceContext.deviceName:调用设备名称。
    • query.props.event.事件标识符.eventName:调用设备上报的某事件名称。

    配置钉钉机器人调用设备上报的属性数据示例:

    钉钉机器人
  • 通过配置项访问。

    在配置后续节点时,如条件判断节点或路径选择节点,选择数据源为设备触发节点的某类型数据。

    配置项访问