更新时间:2023-02-10 05:37:57下载pdf
yarn add @tuya/tuya-panel-api
// 支持的版本:1.11.0
import { lampApi } from '@tuya/tuya-panel-api';
const { getSceneVersionInfo, getSceneData, updateVersion } = lampApi;
方法名称 | 用途 | 参数 |
---|---|---|
getSceneVersionInfo | 获取当前情景库版本及版本集合 | (sceneId : number ) |
getSceneData | 获取情景资源 | (libVersion: string) |
updateVersion | 编辑具体场景图片 | (libVersion: string) |
const { getSceneVersionInfo, getSceneData, updateVersion } = lampApi;
getSceneVersionInfo().then((response: any) => {
console.log(response);
})
getSceneData(version).then((response: ISceneData[]) => {
console.log(response);
})
updateVersion(version).then((flag: boolean) => {
console.log(flag);
})
const { getAllCloudConfig, saveCloudConfig, deleteCloudConfig, syncCloudConfig, fetchLocalConfig, fetchCloudConfig } = lampApi;
方法名称 | 用途 | 参数 |
---|---|---|
getAllCloudConfig | 获取设备全部属性数据 | - |
saveCloudConfig | 保存设备自定义属性数据 | (code: string, data: any) |
deleteCloudConfig | 删除设备自定义属性数据 | (code: string) |
syncCloudConfig | 同步设备属性数据 | - |
fetchLocalConfig | 获取设备属性本地缓存数据 | - |
fetchCloudConfig | 获取设备属性云端数据,且优先取缓存数据 | - |
const { getAllCloudConfig, saveCloudConfig, deleteCloudConfig, syncCloudConfig, fetchLocalConfig, fetchCloudConfig } = lampApi;
getAllCloudConfig().then((data: Record<string, string>) => {
console.log(data);
});
saveCloudConfig(code: string, data: any).then((data:Promise<any>) => {
console.log(data);
});
deleteCloudConfig(code: string).then((data:Promise<any>) => {
console.log(data);
});
syncCloudConfig().then((data:Promise<any>) => {
console.log(data);
});
fetchLocalConfig().then((data:Promise<any>) => {
console.log(data);
});
fetchCloudConfig().then((data:Promise<any>) => {
console.log(data);
});
const { isSupportRhythm, getCurrentLocation, getCityInfoByLocation, saveRhythmInfo, getRhythmTimeByLocation, getCloudCustomRhythm, getCloudCityInfo, triggerRhythmStatus } = lampApi;
方法名称 | 说明 | 参数 | 备注 |
---|---|---|---|
isSupportRhythm | 是否支持生物节律高级功能 | 无 | 返回值 Promise<boolean> |
getCurrentLocation | 获取当前位置的经纬度,必须开启 App 定位权限 | 无 | 返回值 Promise<{ longitude: number; latitude: number }> |
saveRhythmInfo | 保存生物节律信息,支持开启与关闭 | (propertyList: []) | 入参 详情见下方示例 |
triggerRhythmStatus | 触发定时生物节律开启关闭 | ( cronExp: string; ) | cron 表达式,如果不传入 cron 表达式,默认频率为一个月下发一次 |
getRhythmTimeByLocation | 获取指定地理位置的日出日落时间,并转换成设备所在时区给出 | (lon: string, lat: string) |
|
getCityInfoByLocation | 获取指定地理位置所在的城市信息 | (lon: string, lat: string) |
|
getCloudCustomRhythm | 获取自定义生物节律数据,数据通过 saveRhythmInfo 接口保存 |
- | 详情见下方示例 |
getCloudCityInfo | 获取云端存储的城市信息,数据通过 saveRhythmInfo 接口保存 |
- | 详情见下方示例 |
const { isSupportRhythm, getCurrentLocation, getCityInfoByLocation, saveRhythmInfo, getRhythmTimeByLocation, getCloudCustomRhythm, getCloudCityInfo, triggerRhythmStatus } = lampApi;
// 是否支持生物节律高级功能
isSupportRhythm().then((isSupport: boolean) => {
console.log(isSupport);
})
// 获取当前位置的经纬度,必须开启 App 定位权限
getCurrentLocation().then( { longitude: number; latitude: number } ) => {
console.log(longitude, latitude);
})
// 获取指定地理位置所在的城市信息
const lon = ''; // 获取的经度值
const lat = ''; // 获取的维度值
getCityInfoByLocation(lon, lat).then(cityInfo: {
country: string; // 国家
province: string; // 省
city: string; // 城市
}) => {
console.log(cityInfo);
})
// propertyList 中 code 的对应值:
// leona_rhythm_info: string; // 地理与城市信息
// leona_rhythm_dp_sunrise: string; // 日出(时分)
// leona_rhythm_dp_sunset: string; // 日落(时分)
// leona_rhythm_dp_noon: string; // 正午(时分)
// leona_rhythm_dp_dawn: string; // 日出前(时分)
// leona_rhythm_dp_dusk: string; // 日落后(时分)
// 对于 code=leona_rhythm_info,value 中有两个字段
// - power,表示是否开启. 0: 表示关闭,1: 表示开启
// - mode,表示模式. 0-默认模式,1-自然模式,2-自定义模式
const params = {
propertyList: [{
"value":{
"power":0,
"latitude":61.40579401252338,
"longitude":113.86011110349514,
"name":"连斯基区,俄罗斯",
"mode":0
},
"code":"leona_rhythm_info"
}, {
"value":{
"weeks":127,
"power":1,
"number":5,
"rhythm":{
"minute":29,
"hour":18,
"brightness":0,
"power":1,
"temperature":100,
"saturation":0,
"lightness":0,
"hue":0
},
"mode":0,
"version":0
},
"code":"leona_rhythm_dp_dawn"
},
// ...其他类似,
]
}
// 更新/保存生物节律信息
saveRhythmInfo(propertyList).then((success: boolean) => {
console.log(success);
})
// 创建设备生物节律定时(按指定的时间触发)
const cronExp = ''; // cron 表达式,详情可搜索,可选参数,如果不传入 cron 表达式,默认频率为一个月下发一次
triggerRhythmStatus(cronExp).then(success: boolean) => {
console.log(success);
})
// 获取指定地理位置的日出日落时间, 并转换成设备所在时区给出
const lon = ''; // 获取的经度值
const lat = ''; // 获取的维度值
getRhythmTimeByLocation(lon, lat).then((rhythmTimeInfo: {
sunrise: string; // 日出(时分)
sunset: string; // 日落(时分)
transitAtNoon: string; // 正午(时分)
dawn: string; // 日出前(时分)
dusk: string; // 日落后(时分)
date: string; // 日期
}[]) => {
console.log(rhythmTimeInfo);
})
// 获取自定义生物节律数据,数据是通过 saveRhythmInfo 接口保存
type CustomRhythm = {
value: {
weeks: number;
power: EPower;
number: number;
rhythm: {
minute: number;
hour: number;
brightness: number;
power: number;
temperature: number;
saturation: number;
lightness: number;
hue: number;
};
mode: EMode;
version: number;
};
code:
| 'leona_rhythm_dp_dawn'
| 'leona_rhythm_dp_dusk'
| 'leona_rhythm_dp_noon'
| 'leona_rhythm_dp_sunrise'
| 'leona_rhythm_dp_sunset';
};
getCloudCustomRhythm().then(customRhythmList: CustomRhythm[]) => {
console.log(customRhythmList);
})
// 获取云端存储的城市信息, 数据是通过 saveRhythmInfo 接口保存
type CityLocationInfo = {
name: string;
latitude: string;
longitude: string;
};
getCloudCityInfo().then(cityInfo: CityLocationInfo) => {
console.log(cityInfo);
})
该内容对您有帮助吗?
是意见反馈该内容对您有帮助吗?
是意见反馈