Huawei-IoT-SDK (Python社區版)開發說明(設備側)
Huawei-IoT-SDK (Python社區版)開發說明(設備側)
項目背景
參加的華為物聯網全棧工程師活動,在活動末端,看到華為云iot相關接口Python版本的調用方式不太清晰,而且當前IoT Device SDK只有Java、C、Go,而沒有Python相關的sdk。查看了Python的Demo,于是動思起念,想要自己封裝實現一個Python版本的sdk,既是對此次活動的回饋,也是對自身學習知識的一個檢驗,大可一試。
項目地址
gitee
項目實現依據
IoTDA 幫助文檔
項目功能
參考C版本的功能實現,實現如下功能:
支持物模型:設備消息/屬性/事件上報,設備命令/消息/屬性/事件接收
支持子設備消息轉發、子設備管理
支持OTA升級
支持密碼認證和證書認證兩種設備接入方式
支持自定義topic
支持設備影子查詢
支持自定義日志收集能力
Demo源碼解析
代碼目錄
IoT_device_demo:使用MQTT協議的demo文件
message_sample.py:設備發送消息和接收平臺消息的demo
command_sample.py:響應平臺下發命令的demo
properties_sample.py:屬性上報等的demo
IoT_device/client:對paho-mqtt進行了封裝
IoT_client_config.py:配置客戶端信息,如設備id、秘鑰等
IoT_client.py:提供mqtt協議相關功能,如連接、訂閱、發布和響應等
IoT_device/Utils:工具方法,如獲取時間戳、秘鑰加密等
IoT_device/resources:存放證書;
IoT_device/request:對設備相關屬性進行封裝,如命令、消息和屬性等。
使用步驟
調動IoTClientConfig 進行客戶端配置
調用IotClient 進行客戶端的實例化
調用實例方法connect 進行連接
調用實例方法subscribe 進行topic訂閱
調用實例方法set_command_callback 進行平臺下發命令的監聽
調用實例方法report_properties 進行屬性上報
ServicesProperties 類實例化對象
add_service_property 方法增加屬性
調用實例方法publish_message 進行消息的發送。(作用待研究)
自研項目規劃
第一期實現Demo版本全部功能
客戶端創建,鏈接
topic訂閱,發布
屬性上報,命令監聽
API/SDK IoT Python
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。