220
人物
發送消息給設備並得到設備響應__接口列表_服務器端API_阿裏雲物聯網套件-阿裏雲
推送數據給設備並得到響應
特別注意:該接口目前隻適用CCP協議接入的設備,MQTT協議不支持
描述
請求參數
名稱 | 類型 | 是否必須 | 描述 |
---|---|---|---|
<公共參數> | 見 公共參數 | ||
ProductKey | String | 是 | 以哪個ProductKey來進行發送 |
DeviceName | String | 是 | 設備名稱 |
RpcContent | String | 是 | 需要傳遞給設備的數據,數據需要為 二進製經過Base64轉碼得到的字符串數據 |
TimeOut | Integer | 是 | 表示等待設備回複消息的時間,單位是毫秒 |
返回參數
名稱 | 類型 | 描述 |
---|---|---|
RequestId | String | 表示調用返回碼 |
Rpccode | String | 表示調用返回碼(UNKNOW,SUCCESS,TIMEOUT,HALFCONN) |
Success | Boolean | 表示調用成功與否 |
ResponseContent | String | 設備返回二進製數據的base64編碼後的值 |
ErrorMessage | String | 出錯信息 |
UNKNOW:係統異常
SUCCESS:成功
TIMEOUT:設備回執超時
OFFLINE: 設備離線
HALFCONN: 設備離線(設備連接斷開但是斷開時間未超過一個心跳周期)
示例
- 請求示例
https://iot.aliyuncs.com/?&Action=RevertRpc
&ProductKey=...
&DeviceName=...
&RpcContent=aGVsbG8gd29ybGQ%253D
&TimeOut=5000
&<[公共請求參數]>
SDK示例代碼 [SDK下載]
- java
RevertRpcRequest rpcRequest = new RevertRpcRequest();
rpcRequest.setDeviceName("...");//設備名稱
rpcRequest.setProductKey(...);//設備接入時候填寫的productKey
rpcRequest.setTimeOut(5000); //超時時間,單位毫秒.如果超過這個時間設備沒反應則返回"TIMEOUT"
rpcRequest.setRpcContent("aGVsbG8gd29ybGQ=");//推送給設備的數據.數據要求二進製數據做一次BASE64編碼.(示例裏麵是"helloworld"編碼後的值)
RevertRpcResponse rpcResponse = client.getAcsResponse(rpcRequest);
//得到設備返回的數據信息. 注意:得到的數據是設備返回二進製數據然後再經過IOT平台base64轉換之後的字符串.需要轉換一下才能拿到原始的二進製數據.
System.out.println(rpcResponse.getResponseContent());
System.out.println(rpcResponse.getRpccode());//對應的響應碼( TIMEOUT/SUCCESS/OFFLINE/HALFCONN等)
- php
$request = new IotRevertRpcRequest();
$request->setProductKey(60028255);
$request->setDeviceName("11a936267d2a4b6eb7b4cb8549fc1fa7");//設備名稱
$request->setTimeOut(5000); //超時時間,單位毫秒.如果超過這個時間設備沒反應則返回"TIMEOUT"
$request->setRpcContent("aGVsbG8gd29ybGQ=");//推送給設備的數據.數據要求二進製數據做一次BASE64編碼.(示例裏麵是"helloworld"編碼後的值)
$response = $client->getAcsResponse($request);
print_r("rn");
print_r($response);
- python
request = RevertRpcRequest.RevertRpcRequest()
request.set_accept_format('json') // 設置返回數據格式,默認為XML
request.set_ProductKey('...')
request.set_DeviceName('xxxxxxx') // 設備名稱
request.set_RpcContent('aGVsbG8gd29ybGQ=') // 推送給設備的數據.數據要求二進製數據做一次BASE64編碼.(示例裏麵是"helloworld"編碼後的值)
request.set_TimeOut(1000) // 超時時間,單位毫秒.如果超過這個時間設備沒反應則返回"TIMEOUT"
result = clt.do_action(request)
print 'revert rpc : ' + result
- java
返回示例
json示例
{
"Rpccode":"UNKONW",
"Success":true,
"ResponseContent":"bm90IGZvdW5kIHJvdXRlciByZWNvcmQu"
}
XML示例
<RevertRpcResponse>
<Rpccode>UNKONW</Rpccode>
<Success>true</Success>
<ResponseContent>bm90IGZvdW5kIHJvdXRlciByZWNvcmQu</ResponseContent>
</RevertRpcResponse>
最後更新:2016-12-06 17:29:13
上一篇:
發布消息到Topic__接口列表_服務器端API_阿裏雲物聯網套件-阿裏雲
下一篇:
設備狀態回調通知__服務器端API_阿裏雲物聯網套件-阿裏雲
升級 Docker Daemon__集群管理_用戶指南_容器服務-阿裏雲
數據上傳到MaxCompute(原ODPS)__用戶指南_推薦引擎-阿裏雲
查詢路由器接口列表__高速通道相關接口_API 參考_雲服務器 ECS-阿裏雲
按量計費__計費說明_日誌服務-阿裏雲
DataV數據可視化__數加產品概覽_數加平台介紹-阿裏雲
查看實例詳情__實例管理_開放API_分布式關係型數據庫 DRDS-阿裏雲
處理數據__規則引擎_控製台使用手冊_阿裏雲物聯網套件-阿裏雲
創建APP__快速開始_移動數據分析-阿裏雲
二次排序示例__示例程序_MapReduce_大數據計算服務-阿裏雲
修改消息可見時間__隊列接口規範_API使用手冊_消息服務-阿裏雲
相關內容
常見錯誤說明__附錄_大數據計算服務-阿裏雲
發送短信接口__API使用手冊_短信服務-阿裏雲
接口文檔__Android_安全組件教程_移動安全-阿裏雲
運營商錯誤碼(聯通)__常見問題_短信服務-阿裏雲
設置短信模板__使用手冊_短信服務-阿裏雲
OSS 權限問題及排查__常見錯誤及排除_最佳實踐_對象存儲 OSS-阿裏雲
消息通知__操作指南_批量計算-阿裏雲
設備端快速接入(MQTT)__快速開始_阿裏雲物聯網套件-阿裏雲
查詢API調用流量數據__API管理相關接口_API_API 網關-阿裏雲
使用STS訪問__JavaScript-SDK_SDK 參考_對象存儲 OSS-阿裏雲