设备相关

更新时间:2023-10-12 08:00:24下载pdf

本文介绍当前设备相关信息的接口。

注意
使用 commonApi 需先安装依赖,点击此处安装依赖。

获取设备所有 DP 信息

名称

getDpsInfos

描述

获取设备所有 DP 信息。

请求参数

参数 数据类型 说明 是否必填
gwId String 设备 ID
devId String 设备 ID

返回参数

参数 数据类型 说明
code String DP Code
dpId Number DP ID
value String DP 值
name String DP 名称
time Number DP 最近上报时间
type String DP 类型

请求示例

import { commonApi } from '@tuya/tuya-panel-api';

commonApi.deviceApi
  .getDpsInfos({
  gwId: TYSdk.devInfo.devId,
  devId: TYSdk.devInfo.devId,
})
  .then(response => {
  console.log(response);
})
  .catch();

返回示例

[
    {
        "code": "switch_led",
        "dpId": 20,
        "value": "true",
        "type": "bool",
        "time": 1621406710368
    },
    {
        "code": "work_mode",
        "dpId": 21,
        "value": "scene",
        "type": "enum",
        "time": 1621407290755
    },
    {
        "code": "bright_value",
        "dpId": 22,
        "value": "708",
        "type": "value",
        "time": 1621406712755
    },
    {
        "code": "temp_value",
        "dpId": 23,
        "value": "591",
        "type": "value",
        "time": 1621406181855
    },
    {
        "code": "colour_data",
        "dpId": 24,
        "value": "0168000003e8",
        "type": "string",
        "time": 1621406716923
    },
    {
        "code": "scene_data",
        "dpId": 25,
        "value": "020e0d0000000000000003e803e8",
        "type": "string",
        "time": 1621407290755
    },
    {
        "code": "countdown",
        "dpId": 26,
        "value": "0",
        "type": "value",
        "time": 1617334251531
    },
    {
        "code": "music_data",
        "dpId": 27,
        "value": "",
        "type": "string",
        "time": 1617334251531
    },
    {
        "code": "control_data",
        "dpId": 28,
        "value": "00127001c03e800000000",
        "type": "string",
        "time": 1621406741938
    }
]

更新设备 DP 名称

名称

updateDpName

描述

更新设备 DP 名称。

请求参数

参数 数据类型 说明 是否必填
gwId String 设备 ID
devId String 设备 ID
dpId String DP ID
name String DP 自定义名称

返回参数

参数 数据类型 说明
response Boolean 是否成功更新设备 DP 名称

请求示例

import { commonApi } from '@tuya/tuya-panel-api';

commonApi.deviceApi
  .updateDpName({
  gwId: TYSdk.devInfo.devId,
  devId: TYSdk.devInfo.devId,
  dpId: '21',
  name: 'work_mode',
})
  .then(response => {
  console.log(response);
})
  .catch();

返回示例

true

获取群组设备所有 DP 信息

名称

getGroupDpsInfos

描述

获取群组设备所有 DP 信息。

请求参数

参数 数据类型 说明 是否必填
groupId String 群组 ID

返回参数

参数 数据类型 说明
code String DP Code
dpId Number DP ID
value String DP 值
name String DP 名称
time Number DP 最近上报时间
type String DP 类型

请求示例

import { commonApi } from '@tuya/tuya-panel-api';

commonApi.deviceApi
  .getGroupDpsInfos('1')
  .then(response => {
    console.log(response);
  })
  .catch();

返回示例

{
    {
      "code": "switch_spray",
      "dpId": 1,
      "value": "true",
      "name": "",
      "time": 1572338762533,
      "type": "bool"
    },
    {
      "code": "mode",
      "dpId": 2,
      "value": "large",
      "name": "",
      "time": 1572333409976,
      "type": "enum"
    },
}

更新群组设备 DP 名称

名称

updateGroupDpName

描述

更新群组设备 DP 名称。

请求参数

参数 数据类型 说明 是否必填
groupId String 群组 ID
dpId String DP ID
name String DP 自定义名

返回参数

参数 数据类型 说明
response Boolean 是否成功更新群组设备 DP 名称

请求示例

import { commonApi } from '@tuya/tuya-panel-api';

commonApi.deviceApi
  .updateGroupDpName({
    groupId: '1',
    dpId: '20',
    name: 'switch_led',
  })
  .then(response => {
    console.log(response);
  })
  .catch();

返回示例

true

获取当天天气

名称

getWeatherQuality

描述

通过设备 ID 获取当天天气。

请求参数

参数 数据类型 描述 是否必填
devId String 设备 ID
isLocal Boolean 是否使用用户本地时区( 默认值是 false )

返回参数

参数 数据类型 说明
c c[] 见 c
w w[] 见 w
  • c
参数 数据类型 说明
name String 城市名称
id Number 城市 ID
  • w
参数 数据类型 说明
windDir String 风向
tips String 概述
realFeel Number 体感温度
no2 Number 二氧化氮
so2 Number 二氧化硫
zoneId String 时区
humidity Number 空气湿度
windSpeed String 风速,国内外都是 m/s
temp Number 温度 ,国内外都是单位摄氏度
o3 Number 臭氧
pm10 Number PM10
pressure Number 大气气压
co Number 一氧化碳
qualityLevel Number 空气质量评分等级
quality String 空气质量评分
condition String 天气文本描述
pm25 Number PM25
condIconUrl String 天气图标地址
aqi Number 空气质量
conditionNum String 天气文本编号
sunSetTimestamp Number 日落时间戳
sunRiseTimestamp Number 日出时间戳
sunSet String 日落时间文本,文本格式是 yyyy-MM-dd HH:mm:ss
sunRise String 日出时间文本,文本格式是 yyyy-MM-dd HH:mm:ss

请求示例

import { commonApi } from '@tuya/tuya-panel-api';

commonApi.deviceApi
  .getWeatherQuality({
  devId: TYSdk.devInfo.devId,
  isLocal: true,
})
  .then(response => {
  console.log(response);
})
  .catch();

返回示例

{
  c: 
  {
    name: String,   // 城市名称
    id: Number,    // 城市id
  },
  w:
  {
    windDir: String,   // 风向
    tips: String,   //  概述
    realFeel: Number   //  体感温度
    no2:  Number   // 二氧化氮
    so2: Number //  二氧化硫
    zoneId: String,   //  时区
    humidity: Number,   //  空气湿度
    windSpeed: String,       // 风速,国内外都是 m/s
    temp: Number,   // 温度 ,国内外都是单位摄氏度
    o3: Number,      // 臭氧
    pm10: Number,     // pm10
    pressure: Number,      //  大气气压
    co: Number,    // 一氧化碳
    qualityLevel: Number,   // 空气质量评分等级
    quality: String,      //  空气质量评分
    condition: String,      // 天气文本描述
    pm25: Number,     // pm25
    condIconUrl: String,  //  天气图标地址
    aqi: Number,    // 空气质量
    conditionNum: String,    // 天气文本编号
    sunRise: String,    //  日出文本
    sunSet: String,     //   日落文本
    sunSetTimestamp: Number    // 日落时间戳
    sunRiseTimestamp: Number    // 日出时间戳	
  }
}

说明:设备天气根据 设备配网经纬度IP 地址 获取。如果本接口仅返回true,但无天气详情数据,那么该设备的 设备配网经纬度IP 地址 可能设置错误,请查看设备日志。

创建设备自定义位置信息

名称

saveCustomizePosition

描述

创建设备自定义位置信息。

说明:当天气接口不适用于设备配网经纬度时,可通过自定义设备经纬度获取实时天气,例如户外穿戴设备。

请求参数

参数 数据类型 说明 是否必填
devId String 设备 ID
lon String 经度
lat String 纬度
locationName String 位置名称(目前没用,不影响天气返回结果)

返回参数

参数 数据类型 说明
response Boolean 是否成功创建设备自定义位置信息

请求示例

import { commonApi } from '@tuya/tuya-panel-api';

commonApi.deviceApi
  .saveCustomizePosition({
  devId: TYSdk.devInfo.devId,
  lon: '113.2333',
  lat: '23.1666',
})
  .then(response => {
  console.log(response);
})
  .catch();

返回示例

true

获取自定义位置信息

名称

getCustomizePosition

描述

设备自定义位置信息获取。

请求参数

参数 数据类型 说明 是否必填
devId String 设备 ID

返回参数

参数 数据类型 说明
lon String 经度
lat String 纬度

请求示例

import { commonApi } from '@tuya/tuya-panel-api';

commonApi.deviceApi
  .getCustomizePosition({
  devId: TYSdk.devInfo.devId,
})
  .then(response => {
  console.log(response);
})
  .catch();

返回示例

{
  "lon": "113.2333",
  "lat": "23.1666"
}