接口描述
接口请求域名:
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 | 昵称长度非法 |