更新时间:2024-06-05 03:14:36下载pdf
本文介绍联动相关数据接口,是场景的升级版,新增支持单个触发事件绑定多个场景规则、全协议、场景的启用与停用以及删除等功能。
注意:使用 commonApi 需先安装依赖,点击此处安装依赖。
接口名称
getLinkageDeviceList
接口描述
查询家庭下支持联动的所有设备。
请求参数
参数 | 数据类型 | 说明 | 是否必填 |
---|---|---|---|
gid | Number | 家庭 ID | 是 |
sourceType | String | 请求类型 | 是 |
返回参数
参数 | 数据类型 | 说明 |
---|---|---|
data | Array | 设备列表 |
请求示例
import { commonApi } from 'tuya-panel-api';
const { linkageApi } = commonApi;
linkageApi.getLinkageDeviceList({
gid: 11740421,
sourceType: 'wirelessSwitch'
}).then((response) => {
console.log(response)
}).catch()
返回示例
[{
'category': 'wxkg',
'datapoints': [],
'devId': 'vdevo161473760344855',
'iconUrl': 'xxxx',
'name': '无线开关',
'productId': 'xxxx'
}]
接口名称
getSceneList
接口描述
查询设备支持的一键执行场景。
请求参数
参数 | 数据类型 | 说明 | 是否必填 |
---|---|---|---|
devId | String | 设备 ID | 是 |
返回参数
参数 | 数据类型 | 说明 |
---|---|---|
data | Array | 场景列表 |
请求示例
import { commonApi } from 'tuya-panel-api';
const { linkageApi } = commonApi;
linkageApi.getSceneList({
devId: 'vdevo161469104176416',
}).then((response) => {
console.log(response)
}).catch()
返回示例
[{
actions: [],
attribute: 4,
auditStatus: 0,
background: '',
boundForPanel: false,
boundForWiFiPanel: false,
code: '',
commonField: '',
coverIcon: 'xxx',
disableTime: 0,
displayColor: '23AFA9',
enabled: true,
devId: 'vdevo161473760344855',
name: '222',
id: 'tgnVdPuWVoAZ1W89',
}]
接口名称
getBindRuleList
接口描述
查询设备条件已绑定的场景。
请求参数
参数 | 数据类型 | 说明 | 是否必填 |
---|---|---|---|
bizDomain | String | 业务域 | 是 |
sourceEntityId | String | 设备 ID | 是 |
entityType | Number | 实体类型 | 是 |
返回参数
参数 | 数据类型 | 说明 |
---|---|---|
data | Array | 规则列表 |
请求示例
import { commonApi } from 'tuya-panel-api';
const { linkageApi } = commonApi;
linkageApi.getBindRuleList({
devId: 'vdevo161469104176416',
bizDomain: 'wirelessSwitchBindScene',
entityType: 2
}).then((response) => {
console.log(response)
}).catch()
返回示例
[{
associativeEntityId: '1#single_click'
associativeEntityValueList: [],
bizDomain: 'wirelessSwitchBindScene',
sourceEntityId: 'vdevo161473760344855'
}]
接口名称
bindRule
接口描述
将按键条件与场景规则关联。
请求参数
参数 | 数据类型 | 说明 | 是否必填 |
---|---|---|---|
associativeEntityId | String | 关联 DP 点和 DP 点值的组合 | 是 |
ruleId | String | 关联场景 ID | 是 |
entitySubIds | String | 关联 DP 点 | 是 |
expr | Array | 关联 DP 点、动作组合 | 是 |
bizDomain | String | 业务域 | 是 |
返回参数
参数 | 数据类型 | 说明 |
---|---|---|
associativeEntityId | String | 关联 DP 点和 DP 点值的组合 |
associativeEntityValue | String | 动作 ID |
bizDomain | String | 业务域 |
id | Number | 数据 ID |
ownerId | String | 家庭 ID |
sourceEntityId | String | 设备 ID |
triggerRuleId | String | 规则 ID |
triggerRuleVO | Object | 执行动作设备信息 |
请求示例
import { commonApi } from 'tuya-panel-api';
const { linkageApi } = commonApi;
linkageApi.bindRule({
associativeEntityId: '1#single_click',
ruleId: 'xxxxx',
entitySubIds: "1",
expr: [[ '$dp1', '==', '单击' ]],
bizDomain: 'wirelessSwitchBindScene'
}).then((response) => {
console.log(response)
}).catch()
返回示例
{
associativeEntityId: '1#double_click',
associativeEntityValue: 'huqzuD0Bb8wz1wxM',
bizDomain: 'wirelessSwitchBindScene',
id: 295022,
ownerId: '11740421',
sourceEntityId: 'vdevo161469104176416',
triggerRuleId: '53BlwWMpfUJMFHYu',
triggerRuleVO: {}
}
接口名称
removeRule
接口描述
移除相关按键条件下的场景规则。
请求参数
参数 | 数据类型 | 说明 | 是否必填 |
---|---|---|---|
bizDomain | String | 业务域 | 是 |
sourceEntityId | String | 设备 ID | 是 |
associativeEntityId | String | 关联 DP 组合 | 是 |
associativeEntityValue | String | 规则 ID | 是 |
返回参数
参数 | 数据类型 | 说明 |
---|---|---|
result | Boolean | 删除是否成功 |
请求示例
import { commonApi } from 'tuya-panel-api';
const { linkageApi } = commonApi;
linkageApi.removeRule({
bizDomain: 'wirelessSwitchBindScene',
sourceEntityId: 'vdevo161473760344855',
associativeEntityId: '1#scene_1',
associativeEntityValue: 'y2zAjojrpeZx9Dtu'
}).then((response) => {
console.log(response)
}).catch()
返回示例
true
接口名称
triggerRule
接口描述
一键触发场景联动,由云端执行。
请求参数
参数 | 数据类型 | 说明 | 是否必填 |
---|---|---|---|
ruleId | String | 规则 ID | 是 |
返回参数
参数 | 数据类型 | 说明 |
---|---|---|
result | Boolean | 删除是否成功 |
请求示例
import { commonApi } from 'tuya-panel-api';
const { linkageApi } = commonApi;
linkageApi.triggerRule({
ruleId: 'y2zAjojrpeZx9Dtu',
}).then((response) => {
console.log(response)
}).catch()
返回示例
true
接口名称
enableRule
接口描述
开启已绑定规则。
请求参数
参数 | 数据类型 | 说明 | 是否必填 |
---|---|---|---|
ruleId | String | 规则 ID | 是 |
返回参数
参数 | 数据类型 | 说明 |
---|---|---|
result | Boolean | 删除是否成功 |
请求示例
import { commonApi } from 'tuya-panel-api';
const { linkageApi } = commonApi;
linkageApi.enableRule({
ruleId: 'y2zAjojrpeZx9Dtu',
}).then((response) => {
console.log(response)
}).catch()
返回示例
true
接口名称
disableRule
接口描述
关闭已绑定规则。
请求参数
参数 | 数据类型 | 说明 | 是否必填 |
---|---|---|---|
ruleId | String | 规则 ID | 是 |
返回参数
参数 | 数据类型 | 说明 |
---|---|---|
result | Boolean | 删除是否成功 |
请求示例
import { commonApi } from 'tuya-panel-api';
const { linkageApi } = commonApi;
linkageApi.disableRule({
ruleId: 'y2zAjojrpeZx9Dtu',
}).then((response) => {
console.log(response)
}).catch()
返回示例
true
该内容对您有帮助吗?
是意见反馈该内容对您有帮助吗?
是意见反馈