閱讀982 返回首頁    go iPhone_iPad_Mac_apple


發布消息到Topic__接口列表_服務器端API_阿裏雲物聯網套件-阿裏雲

發消息到指定的Topic

描述

請求參數

名稱 類型 是否必須 描述
<公共參數> 公共參數
ProductKey String 以哪個ProductKey來進行發送
MessageContent String 發送的消息,將消息內容二進製進行BASE64轉碼後得到的字符串
TopicFullName String 消息發送目的Topic名字,如 /ProductKey/topic1/xxx
Qos Integer 指定消息發送的方式;
0:最多發送一次, 1: 最少發送一次
需要注意的是: 消息在IOT套件中最多保存7天

返回參數

名稱 類型 描述
RequestId String 表示調用返回碼(UNKNOW,SUCCESS,TIMEOUT)
Success Boolean 表示調用成功與否
ErrorMessage String 出錯信息

示例

  • 請求示例
  1. https://iot.aliyuncs.com/?&Action=Pub
  2. &ProductKey=...
  3. &TopicFullName=%252F1231231%252Ftopic1%252F1
  4. &MessageContent=aGVsbG93b3JsZA
  5. &<[公共請求參數]>
  • SDK示例代碼 [SDK下載]

    • java
      1. PubRequest pub = new PubRequest();
      2. pub.setProductKey(ProductKey);
      3. pub.setMessageContent("aGVsbG93b3JsZA==");// Hello world base64 String.
      4. pub.setTopicFullName("/.../home/admin/adfadsfa/dsafsfa");//消息發送給哪個topic中.
      5. pub.setQos(1);//設置Qos為1,那麼設備如果不在線,重新上線會收到離線消息,消息最多在Iot Hub中保存7天.
      6. PubResponse response = client.getAcsResponse(pub);
      7. System.out.println(response.getRequestId());//當次請求的ID
      8. System.out.println(response.getSuccess());//請求是否成功.
      9. System.out.println(response.getErrorMessage());//出錯時的錯誤信息
    • php

      1. $request = new IotPubRequest();
      2. $request->setProductKey($productKey);
      3. $request->setQos(0);
      4. $request->setMessageContent("aGVsbG93b3JsZA==");// Hello world base64 String.
      5. $request->setTopicFullName("/60027911/home/admin/adfadsfa/dsafsfa");//消息發送給哪個topic中.
      6. $response = $client->getAcsResponse($request);
      7. print_r("rn");
      8. print_r($response);
    • python

      1. request = PubRequest.PubRequest()
      2. request.set_accept_format('json') // 設置返回數據格式,默認為XML
      3. request.set_ProductKey('...')
      4. request.set_TopicFullName('/.../test') // 消息發送給哪個topic中
      5. request.set_MessageContent('aGVsbG93b3JsZA==') // Hello world base64 String
      6. result = clt.do_action(request)
      7. print 'publish : ' + result
  • 返回示例

    json示例

  1. {
  2. "RequestId":"BB71E443-4447-4024-A000-EDE09922891E",
  3. "Success":true,
  4. }

XML示例

  1. <PubResponse>
  2. <RequestId>BB71E443-4447-4024-A000-EDE09922891E</RequestId>
  3. <Success>true</Success>
  4. </PubResponse>

最後更新:2016-12-06 17:27:06

  上一篇:go 批量獲取設備狀態__接口列表_服務器端API_阿裏雲物聯網套件-阿裏雲
  下一篇:go 發送消息給設備並得到設備響應__接口列表_服務器端API_阿裏雲物聯網套件-阿裏雲