RRPC支持調(diào)用RRPC通信相關(guān)Topic與物聯(lián)網(wǎng)平臺(tái)通信。本文介紹RRPC通信相關(guān)Topic和接入方法。

RRPC通信相關(guān)Topic

RRPC通信相關(guān)Topic格式如下:

Topic 格式 說明
RRPC訂閱 /sys/${YourProductKey}/${YourDeviceName}/rrpc/request/+ 訂閱物聯(lián)網(wǎng)平臺(tái)下發(fā)的RRPC請求消息。
RRPC請求消息 /sys/${YourProductKey}/${YourDeviceName}/rrpc/request/${messageId} 物聯(lián)網(wǎng)平臺(tái)下發(fā)的RRPC請求消息。
RRPC響應(yīng)消息 /sys/${YourProductKey}/${YourDeviceName}/rrpc/response/${messageId} 設(shè)備上行的RRPC響應(yīng)消息。

Topic格式中:

  • ${YourProductKey}:您設(shè)備所屬產(chǎn)品的ProductKey
  • ${YourDeviceName}:您設(shè)備的名稱。
  • ${messageId}:服務(wù)端調(diào)用物聯(lián)網(wǎng)平臺(tái)的RRpc接口向設(shè)備下發(fā)消息時(shí),物聯(lián)網(wǎng)平臺(tái)生成的唯一的RRPC消息ID,可用于區(qū)分不同的RRPC消息。

RRPC接入

  1. 物聯(lián)網(wǎng)平臺(tái)發(fā)送RRPC消息。

    服務(wù)端調(diào)用物聯(lián)網(wǎng)平臺(tái)的RRpc接口向設(shè)備發(fā)送消息。接口調(diào)用方法,請參見RRpc

    以使用Java Link SDK為例,調(diào)用方式如下:

    RRpcRequest request = new RRpcRequest();
    request.setProductKey("testProductKey");
    request.setDeviceName("testDeviceName");
    request.setRequestBase64Byte("dGhpcyBpcyBhbiBleGFtcGxl");
    request.setTimeout(3000);
    RRpcResponse response = client.getAcsResponse(request);
    說明 請登錄 OpenAPI開發(fā)者門戶,在線調(diào)用 RRpc接口,查看物聯(lián)網(wǎng)平臺(tái)中多種語言的云端SDK調(diào)用示例。
  2. 設(shè)備端返回RRPC響應(yīng)的Topic。

    設(shè)備端收到RRPC請求之后,需要根據(jù)RRPC請求Topic的格式,返回響應(yīng)消息到對應(yīng)的響應(yīng)Topic。

    設(shè)備端從收到消息的Topic(/sys/${YourProductKey}/${YourDeviceName}/rrpc/request/${messageId})中提取出messageId,然后拼裝出對應(yīng)的RRPC響應(yīng)Topic,發(fā)送響應(yīng)給物聯(lián)網(wǎng)平臺(tái)。

    說明 目前,僅支持設(shè)備端返回QoS=0的RRPC響應(yīng)消息。

示例:遠(yuǎn)程控制樹莓派服務(wù)器