查询单个规则详细信息
功能介绍
应用服务器可调用此接口查询设施云平台中指定规则详细信息。
URI
GET /v1/iotfm/rules/{rule_id}
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
rule_id |
是 |
String |
参数说明:规则ID,用于唯一标识一条规则,在创建规则时由设施云平台分配获得。 取值范围:长度不超过36,只允许字母、数字、下划线(_)、连接符(-)的组合。 |
请求参数
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
X-Auth-Token |
是 |
String |
参数说明:用户Token。通过调用 生成Token 接口获取,接口返回的响应消息头中“X-Subject-Token”就是需要获取的用户Token。 |
X-Instance-Id |
是 |
String |
参数说明:实例ID。通过访问智能设施云平台界面后获取,智能设施云平台资源均为实例级隔离,所有业务接口必须填写正确的实例ID才能被成功调用。 取值范围:长度8-36,只允许大小写字母、数字和-字符的组合。 |
X-Root-Zone-Id |
否 |
String |
参数说明:项目ID。 取值范围:长度不超过24,只允许字母、数字的组合。 |
响应参数
状态码:200
参数 |
参数类型 |
描述 |
---|---|---|
rule_id |
String |
参数说明:规则ID。 取值范围:长度不超过36,只允许字母、数字、以及_-字符的组合。 |
rule_name |
String |
参数说明:规则名称。 取值范围:长度不超过128,只允许中文、字母、数字、以及_-/字符的组合。 |
rule_status |
String |
参数说明:规则状态。 取值范围:启用ACTIVE、停用 INACTIVE。 |
alarm_properties_enabled |
String |
参数说明:启动告警属性。 取值范围: - ACTIVE:启用。 - INACTIVE:停用。 |
rule_type |
String |
参数说明:规则条件的类型。 取值范围:DEVICE_ALARM:设备告警类型规则。若为 DEVICE_ALARM 类型规则,则必须存在action_type为 DEVICE_ALARM 类型的动作" |
zones |
Array of RuleZoneItem objects |
参数说明:空间信息 |
devices |
Array of RuleDeviceItem objects |
参数说明:设备信息 |
device_id |
String |
参数说明:设备ID,用于唯一标识一个设备,在注册设备时由设施云平台分配获得。 取值范围:长度不超过128,只允许字母、数字、下划线(_)、连接符(-)的组合。 |
device_name |
String |
参数说明:设备名称,用于唯一标识一个设备,在注册设备时由设施云平台分配获得。 |
product_name |
String |
参数说明:产品名称。 |
product_id |
String |
参数说明:设备关联的产品ID,用于唯一标识一个产品模型。 |
condition_ignore_null |
Boolean |
优先使用conditon_group.conditon_ignore_null字段代替 |
calendar_time_range |
CalendarTimeRangeDto object |
日历时间范围请求体 |
spec_properties |
Array of RuleSpecProperty objects |
参数说明:产品规格属性。 取值范围:数组长度不超过1。 |
rule_description |
String |
参数说明:规则详情描述,长度不超过1024,只允许中文、字母、数字、空白字符、以及_?'#().,;&%@!-/字符的组合。 |
condition_actions |
Array of ConditionGroupAction objects |
参数说明:规则的条件动作列表,单个规则最多支持2个条件动作Item。 |
create_time |
String |
参数说明:规则创建时间,格式为:"yyyy-MM-dd'T'HH:mm:ss.SSS'Z'"。 |
last_update_time |
String |
参数说明:规则最后更新时间,格式为:"yyyy-MM-dd'T'HH:mm:ss.SSS'Z'"。 |
fact_rule_id |
String |
参数说明:事实规则ID。长度不超过36,只允许字母、数字、以及_-字符的组合。 |
参数 |
参数类型 |
描述 |
---|---|---|
zone_id |
String |
参数说明:区域ID。 某产品对应的所有设备所在的区域ID。当product_id不为空时,表示规则作用于部署于该区域ID下对应该产品ID的所有设备。若product_id为空,则zone_id自动忽略。 取值范围:长度不超过24,只允许字母、数字、下划线(_)、连接符(-)的组合。 |
zone_name |
String |
参数说明:zone_id对应的区域名称。 |
zone_path_name |
String |
参数说明:zone_id对应的全路径名称,包括项目区域id。 |
参数 |
参数类型 |
描述 |
---|---|---|
device_id |
String |
参数说明:设备ID,用于唯一标识一个设备,在注册设备时由设施云平台分配获得。 取值范围:长度不超过128,只允许字母、数字、下划线(_)、连接符(-)的组合。 |
device_name |
String |
参数说明:设备名称,用于唯一标识一个设备,在注册设备时由设施云平台分配获得。 |
参数 |
参数类型 |
描述 |
---|---|---|
judge_type |
String |
参数说明:判定类型。 取值范围: calendar_work_type:根据日历工作类型判定。 date_repeat_by_year:根据年重复的日期范围判定。 |
calendar_id |
String |
参数说明:日历ID。 取值范围:长度24,只允许字母、数字的组合。 |
work_type |
String |
参数说明:工作类型。 取值范围: workday:工作日。 holiday:节假日。 |
time_ranges |
Array of TimeRangeDto objects |
参数说明:时间范围集合。 取值范围:长度0-48。 |
date_ranges |
Object |
参数说明:日期范围集合。 取值范围:长度0-12。 |
参数 |
参数类型 |
描述 |
---|---|---|
start |
String |
参数说明:起始时间。 取值范围: 格式:HH:mm:ss。 |
end |
String |
参数说明:结束时间。 取值范围: 格式:HH:mm:ss。 |
参数 |
参数类型 |
描述 |
---|---|---|
start |
String |
参数说明:起始日期。 取值范围: 格式:MM-dd。 |
end |
String |
参数说明:结束日期。 取值范围: 格式:MM-dd。 |
参数 |
参数类型 |
描述 |
---|---|---|
property_code |
String |
参数说明:属性编码。 取值范围:长度不超过40,只允许英文字母大小写、数字、下划线的组合。 |
property_value |
Object |
参数说明:属性值。 |
参数 |
参数类型 |
描述 |
---|---|---|
condition_group |
ConditionGroup object |
参数说明:条件组。 |
actions |
Array of LinkageRuleAction objects |
参数说明:触发动作。 |
参数 |
参数类型 |
描述 |
---|---|---|
condition_ignore_null |
Boolean |
条件组中的条件是否忽略空值 |
conditions |
Array of RuleCondition objects |
参数说明:规则的条件列表,单个规则最多支持设置50个条件。 |
logic |
String |
参数说明: 规则条件列表中多个条件之间的逻辑关系。 取值范围: |
group_name |
String |
参数说明:规则条件组名称。 取值范围:CreateAlarm、RecoverAlarm、LinkageControl。 |
group_window |
GroupWindow object |
联动规则窗口函数结构体 |
参数 |
参数类型 |
描述 |
---|---|---|
condition_type |
String |
参数说明:规则条件的类型。 取值范围:DEVICE_DATA:设备属性数据类型条件;DEVICE_LINKAGE_STATUS:设备状态类型条件;NESTED:嵌套条件。 |
device_property_condition |
DeviceDataCondition object |
参数说明:条件中设备数据类型的信息,当 condition_type为 DEVICE_DATA 时,为必选参数 |
device_linkage_status_condition |
DeviceLinkageStatusCondition object |
参数说明:条件中设备状态类型的信息,当 condition_type 为 DEVICE_LINKAGE_STATUS 时,为必选参数。 |
nested_condition |
DeviceLinkageNestedCondition object |
参数说明:条件中内嵌条件类型的信息,当 condition_type 为 NESTED 时,为必选参数。 |
参数 |
参数类型 |
描述 |
---|---|---|
device_id |
String |
参数说明:设备ID,当动作类型为DEVICE_CMD、DEVICE_CONTROL、DEVICE_PROPERTY时必须传入。 取值范围:长度不超过128,只允许字母、数字、以及_-字符的组合。 |
path |
String |
参数说明:产品/设备的服务下的属性。 取值范围:最大长度255,格式:service_id/property_code。例如门磁状态为“infoService/status”。 |
indicator_type |
String |
指标值类型:指标值作为数据表达式的左值进行比较。除了原始值,其他指标类型都是在周期时间内聚合得到。 指标值类型:origin-原始值;mean-均值;max-最大值;min-最小值;sum-求和值;variance-方差值;increment-增量值。 |
indicator_aggregation_time |
Integer |
指标聚合的周期时间,当指标类型是聚合指标时才需要配置 |
indicator_aggregation_time_unit |
String |
指标聚合的周期时间单位,当指标类型是聚合指标时才需要配置 |
operator |
String |
参数说明:数据比较的操作符。 取值范围:当前支持的操作符有:>,<,>=,<=,=,!=, in,between,not between:表示在指定值中匹配。 |
value |
String |
参数说明:数据比较表达式的右值。 取值范围:支持0、正数、负数。 |
in_values |
Array of strings |
参数说明:当operator为in时该字段必填,使用该字段传递比较表达式右值。 取值范围:上限为20个。 |
increment_value_method |
String |
参数说明:指标类型为增量值的取值方式。 取值范围:当前支持的操作符有:origin-原始值;absolute-绝对值。 |
参数 |
参数类型 |
描述 |
---|---|---|
device_id |
String |
参数说明:设备ID,当动作类型为DEVICE_CMD、DEVICE_CONTROL、DEVICE_PROPERTY时必须传入。 取值范围:长度不超过128,只允许字母、数字、以及_-字符的组合。 |
status_list |
Array of strings |
参数说明:状态列表,设备状态条件携带该参数。 取值范围: |
参数 |
参数类型 |
描述 |
---|---|---|
conditions |
Array of RuleCondition objects |
参数说明:规则内嵌条件组的条件列表,内嵌最多支持设置10个条件,条件列表中不允许再次使用内嵌条件组。 |
logic |
String |
参数说明: 规则条件列表中多个条件之间的逻辑关系。 取值范围: |
参数 |
参数类型 |
描述 |
---|---|---|
window_time |
Integer |
窗口时间,窗口时间最大为2h。 |
window_time_unit |
String |
窗口时间单位。小时-h 分钟-m 秒-s |
window_config_type |
String |
窗口配置类型。confidence_level-可信度,consecutive_times-连续触发次数 |
confidence_level |
Integer |
数据可信度。 |
consecutive_times |
Integer |
连续触发次数 |
参数 |
参数类型 |
描述 |
---|---|---|
action_type |
String |
参数说明:规则动作的类型。 取值范围:
|
device_id |
String |
参数说明:设备ID,当动作类型为DEVICE_CMD、DEVICE_CONTROL、DEVICE_PROPERTY时必须传入。 取值范围:长度不超过128,只允许字母、数字、以及_-字符的组合。 |
device_alarm |
ActionDeviceAlarm object |
参数说明:上报设备告警消息内容。当action_type为 DEVICE_ALARM 时,该字段必填。 |
device_command |
ActionDeviceCommand object |
参数说明:下发设备命令内容。当action_type为DEVICE_CMD时,该字段必填。 |
device_control |
ActionDeviceControl object |
参数说明:下发设备控制任务内容。当action_type为DEVICE_CONTROL时,该字段必填。 |
device_property |
ActionDeviceProperty object |
参数说明:修改设备属性内容。当action_type为DEVICE_PROPERTY时,该字段必填。 |
device_group |
ActionDeviceGroup object |
参数说明:下发分组控制内容。当action_type为DEVICE_GROUP时,该字段必填。 |
参数 |
参数类型 |
描述 |
---|---|---|
alarm_name |
String |
参数说明:告警名称。 取值范围:最大长度64,只允许中文、字母、数字、_-字符的组合。当 alarm_status 为fault时,该字段必填。 |
alarm_status |
String |
参数说明:告警状态,用于描述告警动作类型。 取值范围: |
alarm_level |
String |
参数说明:告警级别。 取值范围:致命"Critical",严重"Major", 一般"Minor",提示"Info"。当 alarm_status 为fault时,该字段必填。 |
description |
String |
参数说明:告警的描述信息。 取值范围:最大长度255,只允许中文、字母、数字、空白字符、以及_?'#().,;&%@!-/字符的组合。 |
condition_group_name |
String |
参数说明:条件组名称。 取值范围:CreateAlarm、RecoverAlarm,若ConditionGroups.Conditions为CreateAlarm类型,则action中必须存在condition_group_name为CreateAlarm,且对应的alarm_status必须为fault。 |
参数 |
参数类型 |
描述 |
---|---|---|
service_id |
String |
参数说明:服务ID。产品内唯一。 取值范围:长度不超过64,只允许中文、字母、数字、以及_?'#().,&%@!-字符的组合。 |
command_code |
String |
参数说明:命令编码。 取值范围:长度不超过40,只允许英文字母大小写、数字、下划线的组合。 |
paras |
Object |
参数说明:命令参数。 取值范围:JSON格式,具体格式需要应用和设备在物模型约定。 |
参数 |
参数类型 |
描述 |
---|---|---|
property_path |
String |
参数说明:设备属性。 取值范围:长度不超过128,只允许中文、字母、数字、以及_?/'#().,&%@!-字符的组合。 |
property_value_type |
String |
参数说明:设置属性值的类型,fixed-固定值 reference-引用值。 |
reference_device_id |
String |
参数说明:引用设备ID,设置属性值的类型为引用类型时对应的设备ID。 取值范围:长度不超过128,只允许字母、数字、以及_-字符的组合。 |
reference_property_value |
String |
参数说明:引用属性,设置属性值的类型为引用类型时对应的设置值。 |
property_value |
Object |
参数说明:设备属性值。 |
priority |
Integer |
参数说明:任务优先级。 取值范围:8-16的整数。 |
description |
String |
参数说明:操作说明。 取值范围:长度为不超过1024的字符串。 |
参数 |
参数类型 |
描述 |
---|---|---|
services |
Array of PropertyService objects |
参数说明:修改设备属性列表。 取值范围:JSON格式,具体格式需要应用和设备在物模型约定。 |
参数 |
参数类型 |
描述 |
---|---|---|
group_control_id |
String |
参数说明:设备控制ID。 取值范围:长度不超过36,只允许字母、数字、以及_-字符的组合。 |
状态码:400
参数 |
参数类型 |
描述 |
---|---|---|
error_code |
String |
参数说明:错误码。 取值范围:长度8-36。 |
error_msg |
String |
参数说明:错误描述。 取值范围:长度2-512。 |
请求示例
响应示例
状态码:200
OK
{ "rule_id" : "18c32b14082a44186676314b", "rule_name" : "rule_name", "rule_status" : "ACTIVE", "alarm_properties_enabled" : "INACTIVE", "rule_type" : "DEVICE_ALARM", "rule_description" : "rule_description", "product_name" : "product_name", "product_id" : "18c55c16d5d4b9c979b7c44a", "spec_properties" : [ { "property_code" : "spec_property_code", "property_value" : "spec_property_value" } ], "zones" : [ { "zone_id" : "190a4a7308f38ddf0dae5c00", "zone_name" : "zone4", "zone_path_name" : "zone3/zone4" }, { "zone_id" : "19043c59f3bab5af240fd1d5", "zone_name" : "zone2", "zone_path_name" : "zone1/zone2" } ], "condition_actions" : [ { "condition_group" : { "group_name" : "CreateAlarm", "logic" : "and", "conditions" : [ { "device_property_condition" : { "filters" : [ { "path" : "Battery/batteryLevel", "value" : "20", "operator" : ">" } ] }, "condition_type" : "DEVICE_DATA" } ] }, "actions" : [ { "device_alarm" : { "alarm_name" : "alarm_create", "alarm_status" : "fault", "condition_group_name" : "CreateAlarm", "description" : "alarm_description", "alarm_level" : "Info" }, "action_type" : "DEVICE_ALARM" } ] }, { "condition_group" : { "group_name" : "RecoverAlarm", "logic" : "and", "conditions" : [ { "device_property_condition" : { "filters" : [ { "path" : "Battery/batteryLevel", "value" : "20", "operator" : "<" } ] }, "condition_type" : "DEVICE_DATA" } ] }, "actions" : [ { "device_alarm" : { "alarm_name" : "alarm_recover", "alarm_status" : "fault", "condition_group_name" : "CreateAlarm", "description" : "alarm_description", "alarm_level" : "Info" }, "action_type" : "DEVICE_ALARM" } ] } ] }
状态码
状态码 |
描述 |
---|---|
200 |
OK |
400 |
Bad Request |
403 |
Forbidden |
404 |
Not Found |
500 |
Internal Server Error |