2017-07-17 53 views
0

我對Cumulocity來說是個新手,我正嘗試使用mqtt和smartrest模板從我自己的設備中獲取數據到平臺中。我可以使用靜態模板獲取數據,但它們只支持某些數據類型。我正在努力在UI中創建適當的smartrest模板,並且文檔沒有詳細介紹。cumulocity mqtt測量

我得到模板名稱在s/ut/template_name中的MQTT主題中(或在登錄時作爲用戶名的一部分選擇),並且模板中消息的messageId與第一個CSV字段匹配MQTT發佈有效負載。我沒有得到的是模板術語。在UI中,我選擇API->度量和方法 - > POST,並且提供了所需的值$ .type和$ .time。我的問題:

  • 是$ .type是「測量片段類型」的名稱還是必須將其設置爲「c8y_CustomMeasurement」?我可以隨意調用它嗎?
  • $ .time有一個值字段。如果發佈中沒有提供默認值,這是否是默認值?
  • 我假設我需要在可選的API值中添加一個數值。要將它鏈接到數據點的值,我應該使關鍵字「c8y_CustomMeasurement.custom.value」?
  • 我在這裏的基地嗎?

每次我發佈到我自己的smartrest模板的服務器斷開連接,所以我認爲在我的模板設置了一個錯誤,但我沒有看到訪問調試消息(也沒什麼發佈回到我的方式在s/e或s/dt上)。

爲了舉例說明,假設我希望發佈帶有有效載荷格式「mId,ts,value」的無單位時間戳脈衝計數,示例數據爲「p01」,2017-07-17 12:34:00 」,1234"

回答

0

你寫的是什麼,到目前爲止大多是正確的剛需多一點精確:

  • 主題是S/UC/template_id(不是模板名稱,這僅僅是一個標籤)
  • $ .type引用測量JSON中的'type'片段。這是一個免費的文本字段
  • 在99%的情況下,您希望將$ .time保留爲空。如果你在這裏設置了它,它不是默認的,但是固定到那個時間戳,並且你在使用模板時不能改變它。如果你把它空,但仍不能在
  • 實例送東西:不發送時間00,1234(不包括引號arounf時間戳和ISO8601格式
  • 例:p01,2017-07-17T12:34 P01,1234(發送如在服務器時間的時間結果beeing設置爲空字符串,模板是一樣的)

希望這些要點幫您找到您發出

+0

我必須糾正我的職務。題目是S/UC/..不是s/ut/... – TyrManuZ

+0

也許值得一提的是s/ut/...用於註冊設備中的模板。 –

+0

感謝您的幫助,我終於破解了它。爲有這個問題的下一個人。如果您張貼到錯誤的模板ID(我使用5位數字ID,但正確的是您在創建時輸入的字符串),服務器將丟棄連接。除非測量對象具有正確的格式,否則這些值不會形成圖形。您可以在tenant.cumuloicty.com/measurement/measurements中查看可繪製或不可繪製的所有度量。對於值和單位字段,您應該將關鍵字設置爲graph_title.series.value和graph_title.series.units – sgse