自动化管理接口
创建自动化
名称 |
类型 |
是否必须 |
描述 |
name |
String |
是 |
自动化名称 |
positionId |
String |
否 |
设备位置id,为空取默认位置 |
conditions |
Object |
是 |
触发条件,详见conditions说明 |
actions |
Object |
是 |
执行动作,详见actions说明 |
conditions说明
名称 |
类型 |
是否必须 |
描述 |
condition |
Array(Object) |
是 |
触发条件内容,详见condition说明 |
relation |
int |
是 |
0:与 1:或 默认为0 |
condition说明
名称 |
类型 |
是否必须 |
描述 |
subjectId |
string |
否 |
对象ID (如设备id、场景id) (与model至少必填一个) |
model |
String |
否 |
物模型 |
triggerDefinitionId |
String |
是 |
触发id |
beginTime |
String |
否 |
开始时段,格式如下说明 |
endTime |
String |
否 |
结束时段,格式如下说明 |
params |
Array(Object) |
否 |
参数,详见params说明 |
说明:定时/时段的格式:“分 时 天 月 周” ,对应参数“beginTime”和“endTime”。
- “分”:取值范围为 0 到 59,值 * 表示不限制分钟。
- “时”:取值范围为 0 到 23,值 * 表示不限制小时。
- “天”:取值范围为1-31,值 * 表示不限制天,任何天。
- “月”:取值范围从1到12, 值 * 表示无限制月份,任意月份。
- “周”:取值范围为0-8,0表示星期日,1-6表示周一至周六,7表示节假日,8表示工作日,值 * 表示无限制周。
例如:“10 11 * 1,2,3,4,5,6,0” 表示每天上午11:10。“20 18 \ * 1,4,6”表示每周一、四、六下午18:20。
actions说明
名称 |
类型 |
是否必须 |
描述 |
action |
Array(Object) |
是 |
执行动作内容,详见action说明 |
action说明
名称 |
类型 |
是否必须 |
描述 |
subjectId |
String |
否 |
对象ID (如设备id、场景id)(与model至少必填一个) |
model |
String |
否 |
物模型 |
actionDefinitionId |
String |
是 |
动作id |
delayTime |
String |
否 |
延时时间,0-59秒;0-59分 |
delayTimeUnit |
String |
否 |
延时单位,1-秒;2-分钟 |
params |
Array(Object) |
否 |
参数,详见params说明 |
params说明
名称 |
类型 |
是否必须 |
描述 |
paramId |
string |
否 |
参数id |
value |
String |
否 |
值 |
paramType |
String |
否 |
参数类型 |
paramUnit |
String |
否 |
参数单位 |
{
"intent": "config.linkage.create",
"data": {
"name": "123456",
"positionId": "real1.768799734012641280",
"conditions": {
"condition": [
{
"triggerDefinitionId": "TD.lumi.gateway.illumination_less_than",
"model": "lumi.gateway.acn01",
"beginTime": "0 2 * * 1,2,3,4,5,6,0",
"endTime": "0 4 * * 1,2,3,4,5,6,0",
"params": [
{
"paramType": "0",
"paramUnit": "Lux",
"paramId": "PD.illumination",
"value": "10"
}
],
"subjectId": "virtual2.11774113824794"
}
],
"relation": 0
},
"actions": {
"action": [
{
"delayTimeUnit": "1",
"actionDefinitionId": "AD.lumi.gateway.open_corridor_light",
"model": "lumi.gateway.acn01",
"delayTime": "480",
"subjectId": "virtual2.11774113824794"
}
]
}
}
}
名称 |
类型 |
描述 |
linkageId |
string |
自动化ID |
{
"code": 0,
"message": "Success",
"msgDetails": "",
"requestId": "",
"result": {
"linkageId": "L.836622570871640064"
}
}
更新自动化
- 接口intent:config.linkage.update
- 接口描述:本接口用于修改自动化的参数配置和名称,不支持修改自动化的位置。
- 请求参数
名称 |
类型 |
是否必须 |
描述 |
linkageId |
String |
是 |
自动化id |
name |
String |
是 |
自动化名称 |
positionId |
String |
否 |
设备位置id,为空取默认位置 |
conditions |
Array(Object) |
是 |
条件,详见conditions说明 |
actions |
Array(Object) |
是 |
条件,详见conditions说明 |
conditions说明
名称 |
类型 |
是否必须 |
描述 |
condition |
Array(Object) |
是 |
触发条件内容,详见condition说明 |
relation |
int |
是 |
0:与 1:或 默认为0 |
condition说明
名称 |
类型 |
是否必须 |
描述 |
subjectId |
string |
否 |
对象ID (如设备id、场景id) (与model至少必填一个) |
model |
String |
否 |
物模型 |
triggerDefinitionId |
String |
是 |
触发id |
beginTime |
String |
否 |
开始时段 |
endTime |
String |
否 |
结束时段 |
params |
Array(Object) |
否 |
参数,详见params说明 |
actions说明
名称 |
类型 |
是否必须 |
描述 |
action |
Array(Object) |
是 |
执行动作内容,详见action说明 |
action说明
名称 |
类型 |
是否必须 |
描述 |
subjectId |
String |
否 |
对象ID (如设备id、场景id) (与model至少必填一个) |
model |
String |
否 |
物模型 |
actionDefinitionId |
String |
是 |
动作id |
delayTime |
String |
否 |
延时时间 |
delayTimeUnit |
String |
否 |
延时单位,1-秒;2-分钟 |
params |
Array(Object) |
否 |
参数,详见params说明 |
params说明
名称 |
类型 |
是否必须 |
描述 |
paramId |
string |
否 |
参数id |
value |
String |
否 |
值 |
paramType |
String |
否 |
参数类型 |
paramUnit |
String |
否 |
参数单位 |
{
"intent": "config.linkage.update",
"data": {
"linkageId": "L.836622570871640064",
"name": "123456",
"positionId": "real1.768799734012641280",
"conditions": {
"condition": [
{
"subjectId": "virtual2.11774113824794",
"triggerDefinitionId": "TD.lumi.gateway.light_off"
}
],
"relation": 0
},
"actions": {
"action": [
{
"subjectId": "virtual2.11774113824794",
"actionDefinitionId": "AD.lumi.gateway.open_corridor_light"
}
]
}
}
}
{
"code": 0,
"message": "Success",
"msgDetails": "",
"requestId": "",
"result": ""
}
删除自动化
- 接口intent:config.linkage.delete
- 接口描述:本接口用于删除自动化。
- 请求参数
名称 |
类型 |
是否必须 |
描述 |
linkageId |
String |
是 |
自动化ID |
{
"intent": "config.linkage.delete",
"data": {
"linkageId": "L.836624600822501376"
}
}
{
"code": 0,
"message": "Success",
"msgDetails": "",
"requestId": "",
"result": ""
}
启用/禁用自动化
- 接口intent:config.linkage.enable
- 接口描述:本接口用于启用和禁用自动化。当自动化被禁用时,即使满足触发条件,也无法自动触发自动化执行。
- 请求参数
名称 |
类型 |
是否必须 |
描述 |
linkageId |
String |
是 |
自动化ID |
enable |
Int |
是 |
自动化是否启用,0-禁用((即使自动化被触发了也不会执行动作)),1-启用 |
{
"intent": "config.linkage.enable",
"data": {
"linkageId": "L.836622570871640064",
"enable": 0
}
}
{
"code": 0,
"message": "Success",
"msgDetails": "",
"requestId": "",
"result": ""
}
查询自动化详情
- 接口intent:query.linkage.detail
- 接口描述:本接口用于查询自动化的条件和动作配置详情。
- 请求参数
名称 |
类型 |
是否必须 |
描述 |
linkageId |
String |
是 |
自动化id,格式为L.xxxxx |
{
"intent": "query.linkage.detail",
"data": {
"linkageId": "L.835941240442339328"
}
}
名称 |
类型 |
描述 |
linkageId |
string |
自动化ID |
name |
String |
自动化名称 |
enable |
int |
自动化是否启用,0: 禁用 1: 启用 |
conditions |
Object |
触发条件,详见conditions说明 |
actions |
Object |
执行动作,详见actions说明 |
conditions说明
名称 |
类型 |
描述 |
condition |
Array(Object) |
触发条件内容,详见condition说明 |
relation |
int |
0:与 1:或 默认为0 |
condition说明
名称 |
类型 |
描述 |
subjectId |
string |
设备ID |
model |
String |
设备模型 |
triggerName |
String |
触发名称 |
triggerDefinitionId |
String |
触发id |
beginTime |
String |
开始时段 |
endTime |
String |
结束时段 |
params |
Array(Object) |
参数,详见params说明 |
actions说明
名称 |
类型 |
描述 |
action |
Array(Object) |
执行动作内容,详见action说明 |
action说明
名称 |
类型 |
描述 |
subjectId |
String |
设备ID |
model |
String |
设备模型 |
actionName |
String |
动作名称 |
actionDefinitionId |
String |
动作id |
delayTime |
String |
延时时间 |
delayTimeUnit |
String |
延时单位,1-秒;2-分钟 |
params |
Array(Object) |
参数,详见params说明 |
params说明
名称 |
类型 |
描述 |
paramId |
string |
参数id |
value |
String |
值 |
paramType |
String |
参数类型 |
paramUnit |
String |
参数单位 |
{
"code": 0,
"message": "Success",
"msgDetails": "",
"requestId": "",
"result": {
"linkageId": "L.835941240442339328",
"enable": 1,
"name": "test",
"conditions": {
"condition": [
{
"triggerDefinitionId": "TD.lumi.gateway.illumination_less_than",
"triggerName": "Below assigned illuminance",
"model": "lumi.gateway.acn01",
"beginTime": "0 2 * * 1,2,3,4,5,6,0",
"endTime": "0 4 * * 1,2,3,4,5,6,0",
"params": [
{
"paramType": "0",
"paramUnit": "Lux",
"paramId": "PD.illumination",
"value": "10"
}
],
"subjectId": "virtual2.11774113824794"
}
],
"relation": 0
},
"actions": {
"action": [
{
"delayTimeUnit": "1",
"actionDefinitionId": "AD.lumi.gateway.open_corridor_light",
"model": "lumi.gateway.acn01",
"delayTime": "480",
"subjectId": "virtual2.11774113824794",
"actionName": "Turn on night light"
}
]
}
}
}
通过对象id查询自动化
- 接口intent:query.linkage.listBySubjectId
- 接口描述:本接口可根据对象ID查询与其相关联的自动化列表。
- 请求参数
名称 |
类型 |
是否必须 |
描述 |
subjectId |
String |
是 |
对象id (如设备id、场景id) |
{
"intent": "query.linkage.listBySubjectId",
"data": {
"subjectId": "virtual2.11774113824794"
}
}
名称 |
类型 |
描述 |
linkageId |
string |
自动化ID |
name |
String |
自动化名称 |
enable |
int |
自动化是否启用(0-false 1-true) |
model |
String |
物模型 |
localizd |
int |
0:云端 1:本地 3:云端化中 4:本地化中 |
{
"code": 0,
"message": "Success",
"msgDetails": "",
"requestId": "",
"result": [
{
"localize": 0,
"linkageId": "L.826490791388536832",
"enable": 1,
"name": "1",
"model": "app.ifttt.v1"
},
{
"localize": 0,
"linkageId": "L.826513247100755968",
"enable": 0,
"name": "这是一条自动化",
"model": "app.ifttt.v1"
}
]
}
通过位置分页查询自动化
- 接口intent:query.linkage.listByPositionId
- 接口描述:本接口用于查询指定位置下的自动化列表。
- 请求参数
名称 |
类型 |
是否必须 |
描述 |
positionId |
String |
否 |
位置ID,为空查询用户下所有自动化 |
pageNum |
Int |
否 |
页码,默认值1 |
pageSize |
Int |
否 |
每页item个数,默认值50 |
{
"intent": "query.linkage.listByPositionId",
"data": {
"positionId": "real1.768799734012641280",
"pageSize": 50,
"pageNum": 1
}
}
名称 |
类型 |
描述 |
data |
Array(Object) |
自动化信息 |
totalCount |
int |
查询自动化数量 |
data说明:
名称 |
类型 |
描述 |
linkageId |
string |
自动化ID |
name |
String |
自动化名称 |
enable |
int |
自动化是否可用,0: 禁用 1: 启用 |
model |
String |
物模型 |
localizd |
int |
0:云端 1:本地 3:云端化中 4:本地化中 |
positionId |
String |
位置id |
{
"code": 0,
"message": "Success",
"msgDetails": "",
"requestId": "",
"result": {
"data": [
{
"localizd": 0,
"linkageId": "L.835941240442339328",
"enable": 1,
"name": "test",
"positionId": "xxxx",
"model": "app.ifttt.v1"
},
{
"localizd": 0,
"linkageId": "L.826513247100755968",
"enable": 0,
"name": "这是一条自动化",
"positionId": "xxxx",
"model": "app.ifttt.v1"
}
],
"totalCount": 2
}
}