すべてのプロダクト
Search
ドキュメントセンター

IoT Platform:RRpc

最終更新日:Apr 17, 2025

デバイスにリクエストを送信し、デバイスから同期的にレスポンスを受信します。

使用方法

操作の呼び出し後、指定されたタイムアウト期間内にデバイスがレスポンスを送信できなかった場合、デバイスがメッセージを受信したとしても、IoT Platform は呼び出しが失敗したと見なします。タイムアウト期間は、タイムアウト パラメーターで指定します。

QPS 制限

この操作は、アカウントごとに 1 秒あたり最大 1,000 回呼び出すことができます。

説明

Alibaba Cloud アカウントの Resource Access Management (RAM) ユーザーは、アカウントのクォータを共有します。

デバッグ

OpenAPI Explorer は署名値を自動的に計算します。便宜上、OpenAPI Explorer でこの操作を呼び出すことをお勧めします。 OpenAPI Explorer は、さまざまな SDK の操作のサンプルコードを動的に生成します。

リクエストパラメーター

パラメーター

タイプ

必須

例

説明

Action String Yes RRpc

実行する操作。値を RRpc に設定します。

ProductKey String Yes aldfeSe****

デバイスが属するプロダクトの ProductKey。

DeviceName String Yes device1

リクエストの送信先デバイスの DeviceName。

RequestBase64Byte String Yes dGhpcyBpcyBhbiBleGFtcGxl

パブリッシュするメッセージの本文。

メッセージ本文を生成するには、生のメッセージをバイナリデータに変換し、Base64 エンコーディングを実行します。

説明

IoT Platform は Base64 アルゴリズムを使用してデータをデコードし、デコードされたメッセージをデバイスに送信します。このようにして、デバイスは Base64 でエンコードされたデータをデコードする必要がありません。

Timeout Integer Yes 1000

レスポンスのタイムアウト期間。単位:ミリ秒。有効な値:1000 ~ 8000。

IotInstanceId String No iot_instc_pu****_c*-v64********

インスタンス ID。IoT Platform コンソールの ID概要 ページでインスタンスの を表示できます。

重要

  • インスタンスに ID がある場合は、このパラメーターに ID を指定する必要があります。指定しないと、呼び出しは失敗します。
  • 概要ID ページが表示されない場合、またはインスタンスに がない場合は、このパラメーターを指定する必要はありません。

詳細については、「概要」をご参照ください。

Topic String No /a1uZfYb****/A_Vol****/user/update

カスタム revert-RPC (RRPC) Topic。カスタム RRPC Topic を使用する前に、デバイスを設定する必要があります。詳細については、「カスタム Topic を使用する」をご参照ください。 このパラメーターを指定しない場合は、デフォルトの RRPC Topic が使用されます。

ContentType String No 240

サーバーが JT/T 808 経由でデバイスに送信するメッセージのタイプ。有効な値:

  • 0:全地球航法衛星システム (GNSS) モジュールのデータ。
  • 11:道路運送許可証カード用の集積回路 (IC) カードに関する情報。
  • 65:シリアルポート 1 パススルーデータ。
  • 66:シリアルポート 2 パススルーデータ。
  • 240 ~ 255:カスタムパススルーデータ。

IoT Platform でサポートされている JT/T 808 の使用方法の詳細については、「JT/T 808 ゲートウェイ」をご参照ください。

上記の操作固有のリクエストパラメーターに加えて、この操作を呼び出すときは、共通のリクエストパラメーターを指定する必要があります。詳細については、「共通パラメーター」をご参照ください。

レスポンスパラメーター

パラメーター

タイプ

例

説明

Code String iot.system.SystemException

リクエストが失敗した場合に返されるエラーコード。詳細については、このトピックの「エラーコード」セクションをご参照ください。

ErrorMessage String A system exception occurred.

リクエストが失敗した場合に返されるエラーメッセージ。

MessageId Long 889455942124347392

メッセージの送信時に IoT Platform によって生成されるメッセージ ID。

PayloadBase64Byte String d29ybGQgaGVsbG8=

デバイスによって返される Base64 エンコードされたペイロード。

RequestId String 41C4265E-F05D-4E2E-AB09-E031F501AF7F

リクエスト ID。

RrpcCode String SUCCESS

リクエストが成功した場合に返されるレスポンスコード。有効な値:

  • UNKNOWN:システム例外が発生しました。
  • SUCCESS:リクエストは成功しました。
  • TIMEOUT:リクエストがタイムアウトしました。
  • OFFLINE:デバイスはオフラインです。
  • HALFCONN:デバイスはオフラインですが、完全なハートビートサイクル中はオフラインのままではありません。
Success Boolean true

リクエストが成功したかどうかを示します。有効な値:

  • true
  • false

例

リクエストの例

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
}

エラーコード

エラーコードのリストについては、「サービスエラーコード」をご参照ください。