本文章將介紹如何使用CoAP連線到QNAP QIoT Suite Lite

如需其他QIoT Suite Lite連接到不同開發版的部分可參考:
https://www.qnap.com/zh-tw/how-to/tutor ... suite-lite

關於如何建立IoT Applaction及Thing部分,可參考:
https://www.qnap.com/zh-tw/how-to/tutor ... -dashboard

另外,您也可以到QNAP GitHub 參考其他程式範例: https://github.com/qnap-dev/qnap-qiot-sdks

開啟IoT Application取得CoAP連線設定檔

  • 打開IoT應用並進入IoT 裝置頁面
  • 選擇您要設定連線的IoT 裝置,點選 "連接裝置"按鈕
  • 選擇 "CoAP"並點選 "下一頁" 
  • 選擇 "下載JSON檔案",下載的檔名為"resourceinfo.json"

* 更多關於resourceinfo.json資訊
下面為resourceinfo.json的範例:

 {
 "myqnapcloudHost": "Not Available",
 "clientId": "rpi2_1508915341",
 "host": [
 "172.17.28.73"
 ],
 "r": "c08b5979-1f8f-42da-9085-d761707be65c",
 "t": "r:e91d53d57729b9d0b59772f9f2a130dc",
 "port": 25683,
 "resources": [
 {
 "description": "",
 "datatype": "Float",
 "resourceid": "temp",
 "topic": "r/qiot/things/admin/rpi2/temp",
 "resourcename": "temp",
 "resourcetypename": "Temperature",
 "unit": "°C"
 }
 ]
 }
  • 參考:

    1. myqnapcloudHost : 顯示您是否連接上myqnapcloud DDNS服務,若連結上將會顯示hostname。(如果您有關於port轉發之設定問題,可以參考: https://qiot.qnap.com/blog/en/2017/09/2 ... e-v1-0-41/)
    2. clientId : QIoT給予device端的ID
    3. host : Nas的IP
    4. r&t : CoAP所使用的Query 格式為: "?r=<r>&t=<t>"
    5. port : CoAP的通訊埠
    6. resources : resource資訊,包含以下:
      • description : QIoT資源的說明
      • datatype : QIoT資源的資料格式
      • resourceid : QIoT資源的資源ID
      • topic : CoAP發布及接收資料路徑
      • resourcename : QIoT資源名稱
      • resourcetypename : QIoT資源型態名稱
      • unit : QIoT資源的單位
  • 連線格式 :

    "發布":
    1. method: PUT
    2. pathname: <topic>
    3. query: r=<r>&t=<t>
    4. payload: {"value" : <data>}

    "接收":
    1. method: GET
    2. pathname: <topic>
    3. query: r=<r>&t=<t>
    4. payload: {"value" : <data>}

使用上述範例,您可以得到以下的 "URL" 連結:
" coap://172.17.28.73:25683/r/qiot/things/admin/rpi2/temp?r=c08b5979-1f8f-42da-9085-d761707be65c&t=r:e91d53d57729b9d0b59772f9f2a130dc"