设备远程控制

最近更新时间:2024-04-03 11:20:58

我的收藏

1. 接口描述

接口请求域名: iotexplorer.tencentcloudapi.com 。

根据设备产品ID、设备名称,设置控制设备的属性数据。

默认接口请求频率限制:350次/秒。

推荐使用 API Explorer
点击调试
API Explorer 提供了在线调用、签名验证、SDK 代码生成和快速检索接口等能力。您可查看每次调用的请求内容和返回结果以及自动生成 SDK 调用示例。

2. 输入参数

以下请求参数列表仅列出了接口请求参数和部分公共参数,完整公共参数列表见 公共请求参数

参数名称 必选 类型 描述
Action String 公共参数,本接口取值:ControlDeviceData。
Version String 公共参数,本接口取值:2019-04-23。
Region String 公共参数,详见产品支持的 地域列表,本接口仅支持其中的: ap-bangkok, ap-beijing, ap-guangzhou, ap-shanghai, ap-shanghai-fsi, eu-frankfurt, na-ashburn 。
ProductId String 产品ID
示例值:BKTTNGIQOG
DeviceName String 设备名称
示例值:devtest01
Data String 属性数据, JSON格式字符串, 注意字段需要在物模型属性里定义
示例值:{"brightness":1}
Method String 请求类型 , 不填该参数或者 desired 表示下发属性给设备, reported 表示模拟设备上报属性
示例值:desired
DeviceId String 设备ID,该字段有值将代替 ProductId/DeviceName , 通常情况不需要填写
示例值:BKTTNGIQOG/devtest01
DataTimestamp Integer 上报数据UNIX时间戳(毫秒), 仅对Method:reported有效
示例值:1642127909000

3. 输出参数

参数名称 类型 描述
Data String 返回信息
示例值:""
Result String JSON字符串, 返回下发控制的结果信息,
Sent = 1 表示设备已经在线并且订阅了控制下发的mqtt topic.
pushResult 是表示发送结果,其中 0 表示成功, 23101 表示设备未在线或没有订阅相关的 MQTT Topic。
注意:此字段可能返回 null,表示取不到有效值。
示例值:{"Sent":1,"pushResult":0}
RequestId String 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。

4. 示例

示例1 设置设备数据

设置设备数据

输入示例

https://iotexplorer.tencentcloudapi.com/?Action=ControlDeviceData
&ProductId=BKTTNGIQOG
&DeviceName=dev01
&Data={"payload":"test","id":"abc"}
&<公共请求参数>

输出示例

{
    "Response": {
        "Data": "",
        "RequestId": "235fe48b-0c31-4a7c-aaf6-83ba3e9b4bcf",
        "Result": "{\"Sent\":1,\"pushResult\":0}"
    }
}

示例2 设置设备数据-2

设置设备数据

输入示例

https://iotexplorer.tencentcloudapi.com/?Action=ControlDeviceData
&ProductId=LJ0INDNU7U
&DeviceName=light1
&Data={"brightness":1}
&<公共请求参数>

输出示例

{
    "Response": {
        "Data": "",
        "RequestId": "235fe48b-0c31-4a7c-aaf6-83ba3e9b4bcf",
        "Result": "{\"Sent\":1,\"pushResult\":0}"
    }
}

示例3 设备不在线时或未订阅相关 Topic 时,设置设备数据

设备不在线时或未订阅相关 Topic 时,设置设备数据

输入示例

https://iotexplorer.tencentcloudapi.com/?Action=ControlDeviceData
&ProductId=BKTTNGIQOG
&DeviceName=dev01
&Data={"payload":"test","id":"abc"}
&<公共请求参数>

输出示例

{
    "Response": {
        "Data": "",
        "RequestId": "235fe48b-0c31-4a7c-aaf6-83ba3e9b4bcf",
        "Result": "{\"Sent\":0,\"pushResult\":23101}"
    }
}

5. 开发者资源

腾讯云 API 平台

腾讯云 API 平台 是综合 API 文档、错误码、API Explorer 及 SDK 等资源的统一查询平台,方便您从同一入口查询及使用腾讯云提供的所有 API 服务。

API Inspector

用户可通过 API Inspector 查看控制台每一步操作关联的 API 调用情况,并自动生成各语言版本的 API 代码,也可前往 API Explorer 进行在线调试。

SDK

云 API 3.0 提供了配套的开发工具集(SDK),支持多种编程语言,能更方便的调用 API。

命令行工具

6. 错误码

以下仅列出了接口业务逻辑相关的错误码,其他错误码详见 公共错误码

错误码 描述
AuthFailure CAM签名/鉴权错误。
FailedOperation 操作失败。
InternalError 内部错误。
InternalError.DBOpertaionError DB操作错误。
InternalError.InternalRPCError 内部RPC错误。
InternalError.InternalServerExceptionDB 内部DB错误。
InvalidParameterValue 参数取值错误。
InvalidParameterValue.ModelDefineEventPropNameError 物模型事件/属性 Name 错误。
InvalidParameterValue.ModelDefineInvalid 数据模板未定义。
InvalidParameterValue.ModelDefineNil 物模型为空。
ResourceInsufficient 资源不足。
ResourceNotFound.DeviceNotExist 设备不存在。
ResourceNotFound.ProductNotExist 产品不存在。
ResourceNotFound.ProductOrDeviceNotExist 产品或设备不存在。
ResourceNotFound.StudioProductNotExist 产品不存在。
UnauthorizedOperation 未授权操作。
UnauthorizedOperation.NoPermissionToStudioProduct 产品ACL错误。
UnauthorizedOperation.NoVerified 您的帐号未实名认证,请登录腾讯云进行实名认证
UnsupportedOperation 操作不支持。
UnsupportedOperation.InstanceIsolated 由于实例到期已被禁用,请续费后使用。
UnsupportedOperation.LoRaNoUpLink LoRa设备未上报数据。
UnsupportedOperation.LoRaNotActivate Lora设备没有激活。