物聯網平臺提供的設備影子功能,用于緩存設備上報的狀態和下發的指令。設備在線時,可以直接獲取物聯網平臺指令;設備離線后,再次上線可以主動獲取物聯網平臺的指令。本文介紹通過配置C Link SDK,設備實現影子功能。

前提條件

背景信息

  • 設備影子是保存在物聯網平臺上的JSON文檔,用于緩存設備上報屬性(reported)數據和云上應用期望屬性(desired)數據。

    更多信息,請參見設備影子概覽

  • 設備影子的JSON格式表達方法,請參見設備影子JSON詳解
  • 設備影子的數據流轉過程,請參見設備影子數據流

功能原理

設備通過調用C Link SDK的API,基于MQTT協議,向物聯網平臺發送狀態信息,物聯網平臺將其緩存為設備影子。設備可調用API,查詢或刪除影子中的屬性。

如下功能時序圖,以例程文件./demos/shadow_basic_demo.c為例,介紹設備使用該功能的流程。

設備影子時序圖

設備影子功能API的更多信息,請參見aiot_shadow_api.h

使用示例

  • 設備影子功能的參考示例,請參見使用示例
  • 設備影子功能相關錯誤碼,請參見aiot_shadow_api.h中的狀態碼描述