调用该接口向指定设备发送请求消息,并同步返回响应。
使用说明
调用该接口后,如果设备端未在设置的超时时间(Timeout)内做出反馈,即使设备收到了消息,云端也视消息为发送失败。
QPS限制
单个阿里云账号调用该接口的每秒请求数(QPS)最大限制为1000。
调试
您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。
请求参数
名称 | 类型 | 是否必选 | 示例值 | 描述 |
---|---|---|---|---|
Action | String | 是 | RRpc |
系统规定参数。取值:RRpc。 |
ProductKey | String | 是 | aldfeSe**** |
要发送消息产品的ProductKey。 |
DeviceName | String | 是 | device1 |
要接收消息的设备名称。 |
RequestBase64Byte | String | 是 | dGhpcyBpcyBhbiBleGFtcGxl |
要发送的消息内容经过Base64编码得到的字符串格式数据,例如 |
Timeout | Integer | 是 | 1000 |
等待设备回复消息的时间,单位是毫秒,取值范围是1,000 ~8,000。 |
IotInstanceId | String | 否 | iot_instc_pu****_c*-v64******** |
实例ID。您可在物联网平台控制台的实例概览页面,查看当前实例的ID。 注意
实例的更多信息,请参见实例概述。 |
Topic | String | 否 | /a1uZfYb****/A_Vol****/user/update |
使用自定义的RRPC相关Topic。需要设备端配合使用,请参见设备端开发自定义Topic。 不传入此参数,则使用系统默认的RRPC Topic。 |
调用API时,除了本文介绍的该API的特有请求参数,还需传入公共请求参数。公共请求参数说明,请参见公共参数文档。
返回数据
名称 | 类型 | 示例值 | 描述 |
---|---|---|---|
Code | String | iot.system.SystemException |
调用失败时,返回的错误码。更多信息,请参见错误码。 |
ErrorMessage | String | 系统异常 |
调用失败时,返回的出错信息。 |
MessageId | Long | 889455942124347392 |
成功发送请求消息后,云端生成的消息ID,用于标识该消息。 |
PayloadBase64Byte | String | d29ybGQgaGVsbG8= |
设备返回结果Base64编码后的值。 |
RequestId | String | 41C4265E-F05D-4E2E-AB09-E031F501AF7F |
阿里云为该请求生成的唯一标识符。 |
RrpcCode | String | SUCCESS |
调用成功时,生成的调用返回码,标识请求状态。取值:
|
Success | Boolean | true |
是否调用成功。
|
示例
请求示例
https://iot.cn-shanghai.aliyuncs.com/?Action=RRpc
&ProductKey=aldfeSe****
&DeviceName=device1
&RequestBase64Byte=dGhpcyBpcyBhbiBleGFtcGxl
&Timeout=1000
&<公共请求参数>
正常返回示例
XML
格式
<?xml version='1.0' encoding='UTF-8'?>
<RRpcResponse>
<RequestId>41C4265E-F05D-4E2E-AB09-E031F501AF7F<RequestId/>
<Success>true</Success>
<RrpcCode>SUCCESS</RrpcCode>
<PayloadBase64Byte>d29ybGQgaGVsbG8=</PayloadBase64Byte>
<MessageId>889455942124347392</MessageId>
</RRpcResponse>
JSON
格式
{
"RrpcCode":"SUCCESS",
"PayloadBase64Byte":"d29ybGQgaGVsbG8=",
"MessageId":889455942124347392,
"RequestId":"41C4265E-F05D-4E2E-AB09-E031F501AF7F",
"Success":true
}