009-STM32+ESP8266+AIR202/302基本控制方案(阿里雲物聯網平台)-在阿里雲物聯網平台上一型一密動態注冊設備(基於微信小程序)


<p><iframe name="ifd" src="https://mnifdv.cn/resource/cnblogs/ESA2GJK1DH1K_A/aly.html" frameborder="0" scrolling="auto" width="100%" height="1500"></iframe></p>

 

 

前言

這節咱們說一下如何讓微信小程序動態去雲平台注冊一個設備,然后接入雲平台實現通信.

 

動態注冊的方式(咱使用的是,一型一密(免預注冊))

先解釋幾個名詞:一機一密 ;一型一密(預注冊) ;一型一密(免預注冊)

 

一機一密:就是咱原先測試的在網頁上去注冊設備,然后把ProductKey、DeviceSecret、DeviceName

給設備,然后設備根據這三個信息組合計算下得到mqtt的連接參數,然后就連接通信了

https://help.aliyun.com/document_detail/74005.html?spm=a2c4g.11186623.6.585.3bb41114l1EN77

 

 

一型一密(預注冊):

需要咱先在網頁上注冊上設備,然后把ProductKey、ProductSecret、DeviceName

給設備,然后設備通過https或者mqtt獲取DeviceSecret

然后設備根據ProductKey、DeviceSecret、DeviceName這三個信息組合計算下得到mqtt的連接參數,然后就連接通信了

https://help.aliyun.com/document_detail/132111.html?spm=a2c4g.11186623.2.18.59863f82PBOpQr#task-1545804

 

 

 

一型一密(免預注冊): 免預注冊就是不用在雲端自己注冊設備,設備連接上網絡以后設備自己去注冊.

這樣子的話,每個設備燒錄同樣的程序就可以,不用再配置什么三元組了!

不過每個設備程序里面的需要寫上產品的ProductKey 和 ProductSecret  的值,這兩個值是固定的.

主要是區分開你注冊的時候注冊到哪個產品下.

然后設備通過https或者mqtt接口注冊設備,

注冊的時候服務器會返回ClientID和DeviceToken 等參數

最后按照平台規定的組合MQTT參數

MQTT連接的方式注冊設備:

https://help.aliyun.com/document_detail/132111.html?spm=a2c4g.11186623.2.18.59863f82PBOpQr#task-1545804

 

 

 

拼接注冊返回的參數連接MQTT:

https://help.aliyun.com/document_detail/73742.html?spm=a2c4g.11186623.2.16.1c99426ff6ECtQ#concept-mhv-ghm-b2b

 

測試本節一型一密(免預注冊)程序

1.打開本節的微信小程序工程

 

 

 

2.登錄自己的雲平台查看自己產品的ProductSecret; ProductKey; 

注:我前面的設備這個產品下設備,所以我也注冊到這個產品下.

 

 

 

3.打開動態注冊

 

 

 

 

4.點擊查看

 

 

 

 

5.替換自己的 ProductSecret; ProductKey; 

注:要注冊的設備的名字隨意,我寫的是555555

 

 

 

 

6.保存一下,會看到如下日志

 

 

 

7.刷新一下設備列表

 

 

 

 

源碼說明

1.注冊設備我封裝成了一個文件

 

 

 

 

2.調用注冊函數注冊設備

 

 

 

 

 

3.注冊完成以后,執行連接

 

 

 

 

 

 

 

4.我設置了如果注冊成功了,就把注冊信息存起來,下次啟動的時候就不再執行注冊

 

 

 

 

結語

以后在產品的時候,那個設備的名字可以用微信小程序里面的唯一碼代替.(如果沒有登錄注冊的環節)

如果后期做成登錄注冊的

用戶拿到手機APP之后用戶需要用手機號登錄注冊,然后呢設備的名字就用手機號代替.

注意: 產品的 ProductSecret  和 ProductKey  別泄露了哈!!!!!

如果讓別人知道了之后,別人也可以在你的平台上動態注冊設備並接入了!!!!

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM