開放、平等、協(xié)作、快速、分享
本文檔以MQTT.fx為例,介紹使用第三方軟件以MQTT協(xié)議接入物聯(lián)網(wǎng)平臺(tái)。MQTT.fx是一款基于Eclipse Paho,使用Java語(yǔ)言編寫的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è)備詳情頁(yè)查看。 deviceName:設(shè)備名稱??稍诳刂婆_(tái)設(shè)備詳情頁(yè)查看。 deviceSecret:設(shè)備密鑰??稍诳刂婆_(tái)設(shè)備詳情頁(yè)查看。 timestamp:(可選)時(shí)間戳。 clientId:設(shè)備的ID信息,與Client ID中${clientId}一致。 method:選擇簽名算法類型,與Client ID中signmethod確定的加密方法一致。 ${clientId}為設(shè)備的ID信息??扇∪我庵担L(zhǎng)度在64字符以內(nèi)。建議使用設(shè)備的MAC地址或SN碼。 securemode為安全模式,TCP直連模式設(shè)置為 signmethod為算法類型,支持hmacmd5和hmacsha1。 TCP直連:Client ID中 TLS直連:Client ID中 拼接參數(shù)。 提交給服務(wù)器的clientId、deviceName、productKey和timestamp(timestamp為非必選參數(shù))參數(shù)及參數(shù)值依次拼接。 本例中,clientId值為12345,deviceName值為device,productKey值為alxxxxxxxxx,拼接結(jié)果為: 加密。 通過Client ID中確定的加密方法,使用設(shè)備deviceSecret,將拼接結(jié)果加密。 假設(shè)設(shè)備的deviceSecret值為abc123,加密計(jì)算格式為 設(shè)置基本信息。 格式: 其中,${region}需替換為您物聯(lián)網(wǎng)平臺(tái)服務(wù)所在地域的代碼。地域代碼,請(qǐng)參見地域和可用區(qū)。如: 格式固定: 完整示例: 其中, General欄目下的設(shè)置項(xiàng)可保持系統(tǒng)默認(rèn),也可以根據(jù)您的具體需求設(shè)置。 單擊User Credentials,設(shè)置User Name和Password。 固定格式: 完整示例如: 您可以使用物聯(lián)網(wǎng)平臺(tái)提供的生成工具自動(dòng)生成Password,也可以手動(dòng)生成Password。 (可選)TLS直連模式(即 設(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è)備詳情頁(yè),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ò)誤提示日志。使用MQTT.fx接入
securemode=3
,TLS直連為securemode=2
。securemode=3
,無(wú)需設(shè)置SSL/TLS信息。securemode=2
,需要設(shè)置SSL/TLS信息。clientId12345deviceNamedeviceproductKeyalxxxxxxxxx
hmacsha1(abc123,clientId12345deviceNamedeviceproductKeyalxxxxxxxxx)
參數(shù) 說明 Profile Name 輸入您的自定義名稱。 Profile Type 選擇為MQTT Broker。 MQTT Broker Profile Settings Broker Address 連接域名。 ${YourProductKey}.iot-as-mqtt.${region}.aliyuncs.com
。alxxxxxxxxx.iot-as-mqtt.cn-shanghai.aliyuncs.com
。Broker Port 設(shè)置為1883。 Client ID 填寫mqttClientId,用于MQTT的底層協(xié)議報(bào)文。 ${clientId}|securemode=3,signmethod=hmacsha1|
。12345|securemode=3,signmethod=hmacsha1|
。General 參數(shù) 說明 User Name 由設(shè)備名DeviceName、符號(hào)(&)和產(chǎn)品ProductKey組成。 ${YourDeviceName}&${YourPrductKey}
。device&alxxxxxxxxx
。Password 密碼由參數(shù)值拼接加密而成。 securemode=2
)下,需要選擇SSL/TLS,勾選Enable SSL/TLS,設(shè)置Protocol。建議Protocol選擇為TLSv1.2。securemode=3
)下,無(wú)需設(shè)置SSL/TLS信息,直接進(jìn)入下一步。下行通信測(cè)試
上行通信測(cè)試
查看日志
24小時(shí)免費(fèi)咨詢
請(qǐng)輸入您的聯(lián)系電話,座機(jī)請(qǐng)加區(qū)號(hào)