通過物聯網平台提供的遠程配置功能,開發人員可在不用重啟裝置或中斷裝置啟動並執行情況下,線上遠程更新裝置的系統參數、網路參數等配置資訊。
前提條件
裝置端SDK已支援遠程佈建服務。裝置主動請求配置資訊和物聯網平台推送配置資訊的Topic及Alink資料格式說明,請參見遠程配置。
背景資訊
通常情況下,開發人員可通過推送升級包到裝置端更新裝置的配置資訊(系統參數、網路參數、本地策略等)。此方法將加大裝置韌體版本的維護工作,且需要裝置中斷運行,才能完成更新。
為解決上述問題,物聯網平台提供了遠程配置更新功能,無需裝置重啟或中斷運行,即可線上完成配置資訊的更新。
遠程配置功能是從產品維度修改裝置配置,即從物聯網平台上傳的設定檔對所有裝置生效,不可指定對單個裝置生效。
功能說明
物聯網平台遠程配置功能支援:
開啟或關閉產品的遠程配置。
線上編輯設定檔,並管理版本。
從物聯網平台推送設定檔,批次更新裝置配置資訊。
裝置主動請求更新配置資訊。
應用情境
遠程配置使用分為兩種情境:
物聯網平台推送配置資訊到裝置端:您在物聯網平台控制台批量推送配置資訊給裝置,裝置接收後,修改本地設定檔。
裝置主動請求配置資訊:裝置主動向物聯網平台請求新的設定檔,並進行更新。
下文為您介紹上述情境的操作流程。
情境一:物聯網平台推送配置資訊給裝置端
在物聯網平台控制台,向某一產品下的所有裝置批量推送設定檔。
裝置上線。
裝置端開發流程和程式碼範例,請參見Link SDK文檔。
重要開發裝置端時,需配置裝置端訂閱推送配置資訊的Topic:
/sys/${productKey}/${deviceName}/thing/config/push
。在物聯網平台控制台中,編輯設定檔。
登入物聯網平台控制台。
在執行個體概覽頁簽的全部環境下,找到對應的執行個體,單擊執行個體卡片。
在左側導覽列,選擇 。
選擇產品,開啟遠程配置開關,單擊編輯。
在配置模板下的編輯區,編寫或粘貼JSON格式的配置資訊。
說明產品配置模板適用於該產品下的所有裝置。目前,不支援在物聯網平台向單個裝置推送設定檔。
編輯完成配置資訊後,單擊儲存,然後單擊確認。
完成儲存後,您可手動將配置資訊批次更新到該產品下的所有裝置,裝置可主動請求更新該配置資訊。
單擊批次更新,然後單擊確認更新。
完成確認後,物聯網平台會向該產品下的所有裝置批量推送設定檔。
您單擊批次更新後,如果物聯網平台判斷不是可信環境,會發起簡訊驗證。當您完成簡訊驗證後,物聯網平台才會向裝置下發設定檔。
重要從本次推送成功開始計時,同一產品下,1小時內不支援再次推送新的設定檔。
同一產品的同一設定檔,僅支援從物聯網平台推送一次。即使後續重複本操作,也無法再次推送相同的設定檔。
如需停止批次更新裝置配置資訊,請關閉該產品的遠程配置開關。關閉遠程配置後,物聯網平台將停止所有更新推送,並且拒絕裝置的主動更新要求。
裝置端接收物聯網平台下發的設定檔下載連結後,自行更新配置。
說明物聯網平台下發的設定檔下載連結有效期間為30分鐘,裝置端需要及時下載。
(可選)查看和管理設定檔版本。
遠程配置預設儲存最近5次的修改記錄。如果重新編輯並提交設定檔成功,上一版的配置資訊將顯示在下方的配置版本記錄列表中。
您可查看版本更新時間和配置內容,方便追溯。單擊目標版本的查看,在彈出對話方塊中,查看該版本的配置內容。您可在對話方塊中,單擊恢複至此版本,所選版本的內容會恢複至編輯區中。您可在編輯區修改內容,進行批次更新。
情境二:裝置主動請求配置資訊
裝置主動查詢並更新配置資訊流程圖如下。
裝置上線。
裝置端開發流程和程式碼範例,請參見Link SDK文檔。
說明開發裝置端時,已配置裝置端訂閱物聯網平台響應裝置請求配置資訊的Topic:
/sys/${productKey}/${deviceName}/thing/config/get_reply
。裝置端使用介面linkkit_invoke_cota_get_config來觸發遠程配置請求。
裝置通過Topic
/sys/${productKey}/${deviceName}/thing/config/get
主動查詢最新的配置資訊。接收到裝置的請求後,物聯網平台會返回最新的配置資訊到Topic:
/sys/${productKey}/${deviceName}/thing/config/get_reply
。裝置端使用下發的設定檔連結,自行下載設定檔。
例如裝置端C SDK 3.x提供回呼函數cota_callback,處理設定檔的下載連結,完成更新。
說明物聯網平台下發的設定檔下載連結有效期間為30分鐘,裝置端需要及時下載。