Mengirim permintaan ke perangkat dan menerima respons dari perangkat secara sinkron.
Catatan Penggunaan
Jika suatu Perangkat gagal mengirim respons dalam periode timeout yang ditentukan setelah Anda memanggil operasi tersebut, Platform IoT menganggap pemanggilan tersebut gagal, meskipun Perangkat telah menerima Paket tersebut. Periode timeout ditentukan oleh parameter Timeout.
Batas QPS
Anda dapat memanggil operasi ini hingga 1.000 kali per detik per Akun Alibaba Cloud.
Pengguna Manajemen Akses Sumber Daya (RAM) dari suatu Akun Alibaba Cloud berbagi Kuota akun tersebut.
Debugging
Parameter Permintaan
|
Parameter |
Type |
Required |
Example |
Description |
| Action | String | Yes | RRpc | Operasi yang ingin Anda lakukan. Tetapkan nilainya ke RRpc. |
| ProductKey | String | Yes | aldfeSe**** | ProductKey produk tempat perangkat tersebut terdaftar. |
| DeviceName | String | Yes | device1 | DeviceName perangkat tujuan permintaan. |
| RequestBase64Byte | String | Yes | dGhpcyBpcyBhbiBleGFtcGxl | Isi pesan yang ingin Anda publikasikan. Untuk membuat isi pesan, konversi pesan mentah menjadi data biner lalu lakukan encoding Base64. Catatan
Platform IoT mendekode data menggunakan algoritma Base64, lalu mengirim pesan hasil dekode tersebut ke perangkat. Dengan demikian, perangkat tidak perlu mendekode data yang telah di-encode Base64. |
| Timeout | Integer | Yes | 1000 | Periode timeout respons. Satuan: milidetik. Nilai valid: 1000 hingga 8000. |
| IotInstanceId | String | No | iot_instc_pu****_c*-v64******** | ID instans. Anda dapat melihat ID instans pada halaman Overview di Konsol Platform IoT. Penting
Untuk informasi selengkapnya, lihat Overview. |
| Topic | String | No | /a1uZfYb****/A_Vol****/user/update | Topik revert-RPC (RRPC) kustom. Sebelum menggunakan topik RRPC kustom, Anda harus mengonfigurasi perangkat terlebih dahulu. Untuk informasi selengkapnya, lihat Use custom topics. Jika Anda tidak menentukan parameter ini, topik RRPC default akan digunakan. |
| ContentType | String | No | 240 | Jenis pesan yang dikirim server ke perangkat melalui JT/T 808. Nilai valid:
Untuk informasi lebih lanjut tentang cara menggunakan JT/T 808 yang didukung Platform IoT, lihat JT/T 808 gateways. |
Selain parameter permintaan spesifik operasi di atas, Anda harus menentukan parameter permintaan umum saat memanggil operasi ini. Untuk informasi selengkapnya, lihat Common parameters.
Parameter Respons
Parameter |
Type |
Example |
Description |
| Code | String | iot.system.SystemException | Kode kesalahan yang dikembalikan jika permintaan gagal. Untuk informasi selengkapnya, lihat bagian Error codes pada topik ini. |
| ErrorMessage | String | A system exception occurred. | Pesan kesalahan yang dikembalikan jika permintaan gagal. |
| MessageId | Long | 889455942124347392 | ID pesan yang dihasilkan oleh Platform IoT saat pesan dikirim. |
| PayloadBase64Byte | String | d29ybGQgaGVsbG8= | Muatan yang dikembalikan oleh perangkat dalam bentuk ter-encode Base64. |
| RequestId | String | 41C4265E-F05D-4E2E-AB09-E031F501AF7F | ID permintaan. |
| RrpcCode | String | SUCCESS | Kode respons yang dikembalikan jika permintaan berhasil. Nilai valid:
|
| Success | Boolean | true | Menunjukkan apakah permintaan berhasil. Nilai valid:
|
Contoh
Contoh permintaan
https://iot.cn-shanghai.aliyuncs.com/?Action=RRpc
&ProductKey=aldfeSe****
&DeviceName=device1
&RequestBase64Byte=dGhpcyBpcyBhbiBleGFtcGxl
&Timeout=1000
&<Common request parameters>
Contoh respons sukses
XML format
<?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 format
{
"RrpcCode":"SUCCESS",
"PayloadBase64Byte":"d29ybGQgaGVsbG8=",
"MessageId":889455942124347392,
"RequestId":"41C4265E-F05D-4E2E-AB09-E031F501AF7F",
"Success":true
}
Kode Kesalahan
Untuk daftar kode kesalahan, lihat Service error codes.