接口描述
接口请求域名:
iot.cloud.tencent.com/api/exploreropen/appapi。本接口(AppApiPublishMessage)用于使用自定义透传协议进行设备远控。
说明:
2. 输入参数
名称 | 类型 | 必选 | 描述 |
Action | String | 是 | 公共参数,本接口取值:AppApiPublishMessage。 |
RequestId | String | 是 | 公共参数,唯一请求 ID,可自行生成,推荐使用 uuid。定位问题时,需提供该次请求的 RequestId。 |
AppKey | String | 是 | 公共参数,应用 AppKey ,用于标识对应的小程序或 App。 |
Signature | String | 是 | 公共参数,请求签名,需用户自行生成,用于校验请求的合法性。 |
Timestamp | Int64 | 是 | 公共参数,请求的 UNIX 时间戳(秒级)。 |
Nonce | Int | 是 | 公共参数,随机正整数,与 Timestamp 联合起来,防止重放攻击。 |
ProductId | String | 是 | 产品 ID。 示例值:Nlasdf****ABCd |
DeviceName | String | 是 | 设备名称。 示例值:dev1 |
Topic | String | 是 | 消息发往的主题。 示例值:RL0BAZKZ6V/dev1/control |
Payload | String | 是 | 云端下发到设备的控制报文。 示例值:AASDFASFSADFASDF |
Qos | Integer | 否 | 消息服务质量等级,取值为0或1。 示例值:1 |
PayloadEncoding | String | 否 | Payload 的内容编码格式,取值为 base64 或空。base64 表示云端将接收到的 base64 编码后的报文再转换成二进制报文下发至设备,为空表示不作转换,透传下发至设备。 示例值:base64 |
输出参数
名称 | 类型 | 描述 |
RequestId | String | 公共参数,唯一请求 ID,与入参相同。 |
示例
输入示例
POST https://iot.cloud.tencent.com/api/exploreropen/appapi HTTP/1.1content-type: application/json{"Signature": "IY0yHX7zWCZKZ97xDonQoy16W4U=","Timestamp": 1552621825,"Nonce": 2,"Action": "AppApiPublishMessage","AppKey": "ahPxdK*****TGrejd","RequestId": "rest-client","Topic": "RL0BAZKZ6V/dev1/control","Payload": "AASDFASFSADFASDF","ProductId": "Nlasdf****ABCd","DeviceName": "dev1","Qos": 1}
输出示例:成功
{"Response": {"RequestId": "rest-client"}}
输出示例:失败
{"Response": {"Error": {"Code": "InvalidParameterValue.ErrorUserNotExists","Message": "账号不存在"},"RequestId": "rest-client"}}
错误码
错误码 | 描述 |
InternalError | 内部错误。 |
ErrorRequiredParamNotFound | 必选参数缺失。 |
InvalidAction | Action 非法。 |
InvalidParameterValue | 参数异常。 |
InvalidParameterValue.InvalidJSON | 请求格式不是 JSON。 |
InvalidParameterValue.NickNameLengthInvalid | 昵称长度非法 |