有奖捉虫:办公协同&微信生态&物联网文档专题 HOT

获取产品信息

接口定义
sdk.getProductInfo({ productId?: string }) => Promise<{
ProductId: string,
Name: string,
Description: string,
DataTemplate: string,
NetType: string,
CategoryId: number,
ProductType: number,
UpdateTime: number,
}>
参数说明
参数名
参数描述
类型
必填
productId
可选,不传则使用当前设备的产品 ID。
string
返回值n返回一个 Promise,输出参数如下:
参数名
参数描述
类型
ProductId
产品ID。
string
Name
产品名称。
string
Description
产品描述。
string
DataTemplate
产品数据模板。
string
NetType
通信方式(子设备为接入网关协议)。
string
CategoryId
产品分类 ID。
number
ProductType
产品类型(0:普通产品;5:网关产品)。
number
UpdateTime
最后更新的 Unix 时间戳(秒级)。
number

获取设备信息

接口定义
sdk.getDeviceInfo({ deviceId?: string }) => Promise<{
ProductId: string,
DeviceName: string,
DeviceId: string,
IconUrl: string,
AliasName: string,
UserId: string,
RoomId: string,
CreateTime: number,
UpdateTime: number
} | {
ProductId: string,
DeviceName: string,
DeviceId: string,
IconUrl: string,
AliasName: string,
CreateTime: string
}>
参数说明
参数名
参数描述
类型
必填
deviceId
可选,不传则使用当前设备的设备 ID。
string
返回值
返回一个 Promise,输出参数请参见 DeviceList(非分享设备)和 ShareDevices(分享设备)。

获取绑定到网关下的子设备列表

这个接口只能对网关设备使用。
接口定义
sdk.getSubDeviceList() => Promise<{
subDeviceList:Device[],
syncFailList: Device[],
}>
返回值
返回一个 Promise,subDeviceList为该网关下已绑定到家庭的子设备列表,syncFailList为网关下没有绑定到家庭的子设备列表, Device 的数据结构详见 deviceList

控制设备属性

接口定义
sdk.controlDeviceData(data, deviceId?: string) => Promise
参数说明
参数名
参数描述
类型
必填
data
要控制的设备属性数据。
object
deviceId
可选,不传则使用当前设备的设备 ID。
string
返回值
返回一个 Promise,输出参数请参见 用户控制设备

调用设备行为

接口定义
sdk.callDeviceAction(actionPayload: ActionPayload, actionId: string, deviceId?: string) => Promise
参数说明
参数名
参数描述
类型
必填
actionPayload
物模型中定义的行为调用入参。
object
actionId
在物模型中定义的该行为的标志符。
string
deviceId
可选,不传则使用当前设备的设备 ID。
string
返回值
返回一个 Promise,输出参数请参见 同步调用设备行为

获取设备物模型数据

接口定义
sdk.getDeviceData({ deviceId?: string }) => Promise<object>
参数说明
参数名
参数描述
类型
必填
deviceId
可选,不传则使用当前设备的设备 ID。
string
返回值
返回一个 Promise,输出参数为设备的物模型数据。

获取设备物模型历史数据

接口定义
sdk.getDeviceDataHistory({
FieldName: string,
MaxTime: number,
MinTime: number,
Context?: string,
Limit: number
}) => Promise<{
RequestId: string,
Context: string,
FieldName: string,
Listover: boolean,
Results: DataHistoryItem[]
}>
参数说明
参数名
参数描述
类型
必填
FieldName
查询的属性名称。
string
MaxTime
结束时间,毫秒时间戳。
number
MinTime
开始时间,毫秒时间戳。
number
Context
翻页游标,首次查询时可不传。
string
Limit
单页数据量。
number
返回值
返回一个 Promise,输出参数请参见 获取设备物模型历史数据

获取设备当前状态

接口定义
sdk.getDeviceStatus({ deviceId?: string }) => Promise<0 | 1>
参数说明
参数名
参数描述
类型
必填
deviceId
可选,不传则使用当前设备的设备 ID。
string
返回值
返回一个 Promise,输出结果取值如下:
0:设备离线。
1:设备在线。

删除设备

接口定义
sdk.deleteDevice({ deviceId?: string }) => Promise<void>
参数说明
参数名
参数描述
类型
必填
deviceId
可选,不传则使用当前设备的设备 ID。
string
返回值
返回一个 Promise。

获取自定义分享参数

若该设备是分享设备,且分享方设置了自定义分享参数,则被分享方在接受分享后可通过该接口获取自定义分享参数。
接口定义
sdk.getShareParams({ deviceId?: string }) => Promise<any>
参数说明
参数名
参数描述
类型
必填
deviceId
可选,不传则使用当前设备的设备 ID。
string
返回值n返回一个 Promise,输出参数为自定义分享参数。

检查设备是否有可升级固件

检查指定设备是否有可升级固件,若有可升级固件,且设备在线,则弹出固件升级提示。
接口定义
sdk.checkFirmwareUpgrade({
deviceId?: string,
silent?: boolean
}) => Promise<{
CurrentVersion: string,
DstVersion: string,
}>
参数说明
参数名
参数描述
类型
必填
deviceId
可选,不传则使用当前设备的设备 ID。
string
silent
可选,默认为 false。
true:只检查固件升级,不弹出固件升级提示。
false:检查固件升级,若有可升级固件,且设备在线,则弹出固件升级提示。
boolean
返回值
返回一个 Promise,输出参数请参见 查询设备固件是否升级

获取最新固件信息

获取控制台推送的固件信息。
接口定义
sdk.getDeviceLatestOTAInfo({ deviceId?: string }) => Promise
参数说明
参数名
参数描述
类型
必填
deviceId
可选,不传则使用当前设备的设备 ID。
string
返回值
返回一个 Promise,输出参数如下:
参数名
参数描述
类型
TargetVersion
目标固件版本。
string
FirmwareURL
固件下载地址。
string

下载固件

下载控制台推送的固件
接口定义
sdk.downLoadDeviceOTA({ deviceId?: string }) => Promise
参数说明
参数名
参数描述
类型
必填
deviceId
可选,不传则使用当前设备的设备 ID。
string
返回值
返回一个 Promise,输出参数如下:
参数名
参数描述
类型
otaData
ArrayBuffer格式的固件。
ArrayBuffer
deviceId
设备 ID。
string

固件版本上报

上报设备端固件版本
接口定义
sdk.reportFirmwareVersion({ deviceId?: string, version: string }) => Promise
参数说明
参数名
参数描述
类型
必填
deviceId
可选,不传则使用当前设备的设备 ID。
string
version
当前设备的固件版本。
string

固件升级状态上报

上报设备端固件升级状态
接口定义
sdk.reportOTAStatus({ deviceId?: string, state: string, persent: string, version: string, resultCode: number, resultMsg?: string }) => Promise
参数说明
参数名
参数描述
类型
必填
deviceId
可选,不传则使用当前设备的设备 ID。
string
state
downloading:表示下载固件中。
burning:表示烧录中。
done:表示完成
fail:表示失败 。
string
persent
固件升级进度 0 - 100。
number
version
当前设备的固件版本。
string
resultCode
错误码。
-1:下载超时。
-2:文件不存在。
-3:签名过期。
-4:MD5不匹配。
-5:更新固件失败。
number
resultMsg
错误消息,如果失败时必填,错误原因。
string

固件升级信息查询

查询设备的固件升级信息
接口定义
sdk.checkFirmwareUpdate({ ProductId: string, DeviceName: string }) => Promise
参数说明
参数名
参数描述
类型
必填
ProductId
产品id
string
DeviceName
设备名称
string
返回值n返回一个 Promise,输出参数如下:
参数名
参数描述
类型
CurrentVersion
设备当前版本
string
DstVersion
下发的版本
string

进行固件升级

跳转到小程序的固件升级页面,进行固件升级。
接口定义
sdk.goFirmwareUpgradePage({ deviceId?: string }) => Promise
参数说明
参数名
参数描述
类型
必填
deviceId
可选,不传则使用当前设备的设备 ID
string
返回值
返回一个Promise