本文檔以MQTT.fx為例,介紹使用第三方軟件以MQTT協(xié)議接入物聯(lián)網(wǎng)平臺(tái)。MQTT.fx是一款基于Eclipse Paho,使用Java語言編寫的MQTT客戶端工具。支持通過Topic訂閱和發(fā)布消息。
已在物聯(lián)網(wǎng)平臺(tái)控制臺(tái)創(chuàng)建產(chǎn)品和設(shè)備,并獲取設(shè)備證書信息(ProductKey、DeviceName和DeviceSerect)。創(chuàng)建產(chǎn)品和設(shè)備具體操作細(xì)節(jié),請(qǐng)參考創(chuàng)建產(chǎn)品、單個(gè)創(chuàng)建設(shè)備或批量創(chuàng)建設(shè)備。
下載并安裝MQTT.fx軟件。請(qǐng)?jiān)L問MQTT.fx官網(wǎng)。
打開MQTT.fx軟件,單擊設(shè)置圖標(biāo)。
設(shè)置連接參數(shù)。物聯(lián)網(wǎng)平臺(tái)目前支持兩種連接模式,不同模式設(shè)置參數(shù)不同。
單擊下載Password生成小工具。解壓縮下載包后,雙擊sign文件,即可使用。
使用Password生成小工具的輸入?yún)?shù):
手動(dòng)生成方法如下:
productKey:設(shè)備所屬產(chǎn)品Key??稍诳刂婆_(tái)設(shè)備詳情頁查看。
deviceName:設(shè)備名稱??稍诳刂婆_(tái)設(shè)備詳情頁查看。
deviceSecret:設(shè)備密鑰。可在控制臺(tái)設(shè)備詳情頁查看。
timestamp:(可選)時(shí)間戳。
clientId:設(shè)備的ID信息,與Client ID中${clientId}一致。
method:選擇簽名算法類型,與Client ID中signmethod確定的加密方法一致。
${clientId}為設(shè)備的ID信息。可取任意值,長度在64字符以內(nèi)。建議使用設(shè)備的MAC地址或SN碼。
securemode為安全模式,TCP直連模式設(shè)置為securemode=3
,TLS直連為securemode=2
。
signmethod為算法類型,支持hmacmd5和hmacsha1。
TCP直連:Client ID中securemode=3
,無需設(shè)置SSL/TLS信息。
TLS直連:Client ID中securemode=2
,需要設(shè)置SSL/TLS信息。
拼接參數(shù)。
提交給服務(wù)器的clientId、deviceName、productKey和timestamp(timestamp為非必選參數(shù))參數(shù)及參數(shù)值依次拼接。
本例中,clientId值為12345,deviceName值為device,productKey值為alxxxxxxxxx,拼接結(jié)果為:clientId12345deviceNamedeviceproductKeyalxxxxxxxxx
加密。
通過Client ID中確定的加密方法,使用設(shè)備deviceSecret,將拼接結(jié)果加密。
假設(shè)設(shè)備的deviceSecret值為abc123,加密計(jì)算格式為hmacsha1(abc123,clientId12345deviceNamedeviceproductKeyalxxxxxxxxx)
設(shè)置基本信息。
參數(shù) | 說明 |
---|---|
Profile Name | 輸入您的自定義名稱。 |
Profile Type | 選擇為MQTT Broker。 |
MQTT Broker Profile Settings | |
Broker Address | 連接域名。 格式: 其中,${region}需替換為您物聯(lián)網(wǎng)平臺(tái)服務(wù)所在地域的代碼。地域代碼,請(qǐng)參見地域和可用區(qū)。如: |
Broker Port | 設(shè)置為1883。 |
Client ID | 填寫mqttClientId,用于MQTT的底層協(xié)議報(bào)文。 格式固定: 完整示例: 其中, 說明 輸入Client ID信息后,請(qǐng)勿單擊Generate。 |
General General欄目下的設(shè)置項(xiàng)可保持系統(tǒng)默認(rèn),也可以根據(jù)您的具體需求設(shè)置。 |
單擊User Credentials,設(shè)置User Name和Password。
參數(shù) | 說明 |
---|---|
User Name | 由設(shè)備名DeviceName、符號(hào)(&)和產(chǎn)品ProductKey組成。 固定格式: 完整示例如: |
Password | 密碼由參數(shù)值拼接加密而成。 說明 如果您使用的MQTT.fx版本,在粘貼Password后不顯示具體的字符串,只要光標(biāo)已從輸入框的前部移至了后部,則表示粘貼成功,請(qǐng)勿重復(fù)粘貼。 您可以使用物聯(lián)網(wǎng)平臺(tái)提供的生成工具自動(dòng)生成Password,也可以手動(dòng)生成Password。 |
(可選)TLS直連模式(即securemode=2
)下,需要選擇SSL/TLS,勾選Enable SSL/TLS,設(shè)置Protocol。建議Protocol選擇為TLSv1.2。
securemode=3
)下,無需設(shè)置SSL/TLS信息,直接進(jìn)入下一步。設(shè)置完成后,單擊右下角的OK。
單擊Connect進(jìn)行連接。
從物聯(lián)網(wǎng)平臺(tái)發(fā)送消息,在MQTT.fx上接收消息,測(cè)試MQTT.fx與物聯(lián)網(wǎng)平臺(tái)連接是否成功 。
在MQTT.fx上,單擊Subscribe。
輸入一個(gè)設(shè)備具有訂閱權(quán)限的Topic,單擊Subscribe,訂閱這個(gè)Topic。
訂閱成功后,該Topic將顯示在列表中。
在物聯(lián)網(wǎng)平臺(tái)控制臺(tái)中,該設(shè)備的設(shè)備詳情頁,Topic列表下,單擊已訂閱的Topic對(duì)應(yīng)的發(fā)布消息操作按鈕。
輸入消息內(nèi)容,單擊確認(rèn)。
回到MQTT.fx上,查看是否接收到消息。
在MQTT.fx上發(fā)送消息,通過查看設(shè)備日志,測(cè)試MQTT.fx與物聯(lián)網(wǎng)平臺(tái)連接是否成功 。
在MQTT.fx上,單擊Publish。
輸入一個(gè)設(shè)備具有發(fā)布權(quán)限的Topic,和要發(fā)送的消息內(nèi)容,單擊Publish,向這個(gè)Topic推送一條消息。
在物聯(lián)網(wǎng)平臺(tái)控制臺(tái)中,該設(shè)備的 欄下,查看上行消息。
在MQTT.fx上,單擊Log查看操作日志和錯(cuò)誤提示日志。
24小時(shí)免費(fèi)咨詢
請(qǐng)輸入您的聯(lián)系電話,座機(jī)請(qǐng)加區(qū)號(hào)