MQTT Simulate Device是目前國內(nèi)大多數(shù)通訊公司使用的MQTT客戶端調(diào)試工具,軟件能夠?qū)QTT客戶端進(jìn)行快速調(diào)試,方便企業(yè)找出問題并解決,有需要的可以下載使用。
基本簡介
MQTT(Message Queuing Telemetry Transport,消息隊(duì)列遙測傳輸是IBM開發(fā)的一個(gè)即時(shí)通訊協(xié)議,有可能成為物聯(lián)網(wǎng)的重要組成部分。該協(xié)議支持所有平臺(tái),幾乎可以把所有聯(lián)網(wǎng)物品和外部連接起來,被用來當(dāng)做傳感器和制動(dòng)器(比如通過Twit ter讓房屋聯(lián)網(wǎng))的通信協(xié)議。
功能介紹
MQTT協(xié)議是為大量計(jì)算能力有限,且工作在低帶寬、不可靠的網(wǎng)絡(luò)的遠(yuǎn)程傳感器和控制設(shè)備通訊而設(shè)計(jì)的協(xié)議,它具有以下主要的幾項(xiàng)特性:
1、使用發(fā)布/訂閱消息模式,提供一對多的消息發(fā)布,解除應(yīng)用程序耦合;
2、對負(fù)載內(nèi)容屏蔽的消息傳輸;
3、使用 TCP/IP 提供網(wǎng)絡(luò)連接;
4、有三種消息發(fā)布服務(wù)質(zhì)量:
“至多一次”,消息發(fā)布完全依賴底層 TCP/IP 網(wǎng)絡(luò)。會(huì)發(fā)生消息丟失或重復(fù)。這一級別可用于如下情況,環(huán)境傳感器數(shù)據(jù),丟失一次讀記錄無所謂,因?yàn)椴痪煤筮€會(huì)有第二次發(fā)送。
“至少一次”,確保消息到達(dá),但消息重復(fù)可能會(huì)發(fā)生。
“只有一次”,確保消息到達(dá)一次。這一級別可用于如下情況,在計(jì)費(fèi)系統(tǒng)中,消息重復(fù)或丟失會(huì)導(dǎo)致不正確的結(jié)果。
5、小型傳輸,開銷很小(固定長度的頭部是 2 字節(jié)),協(xié)議交換最小化,以降低網(wǎng)絡(luò)流量;
6、使用 Last Will 和 Testament 特性通知有關(guān)各方客戶端異常中斷的機(jī)制;
使用方法
1、下載完成解壓文件包,在解壓后的文件夾中點(diǎn)擊運(yùn)行虛擬設(shè)備工具,登錄界面如下圖所示。
2、消息發(fā)布者設(shè)備登錄
打開平臺(tái)產(chǎn)品信息管理頁面,找到產(chǎn)品ID,在產(chǎn)品的設(shè)備列表中找到設(shè)備“PUB”的設(shè)備ID及設(shè)備鑒權(quán)信息,輸入登錄信息,選擇登錄服務(wù)器并點(diǎn)擊“確定”進(jìn)行設(shè)備登錄,如下圖所示。
3、上傳數(shù)據(jù)點(diǎn)
設(shè)備登錄之后,選擇“上傳數(shù)據(jù)點(diǎn)”菜單,然后選擇“類型7”,如下圖所示。(注意類型7對應(yīng)的數(shù)據(jù)流名稱及數(shù)據(jù)點(diǎn)的說明)
輸入數(shù)據(jù)流名稱為111,數(shù)據(jù)流中輸入兩個(gè)數(shù)據(jù)點(diǎn)值123;456,并點(diǎn)擊“上傳”按鈕,如下圖所示。
打開平臺(tái)的設(shè)備管理頁面,查看到數(shù)據(jù)點(diǎn)上傳成功,如下圖所示。
4、下發(fā)設(shè)備命令
打開平臺(tái)設(shè)備管理頁面,點(diǎn)擊設(shè)備的“下發(fā)命令”按鈕,輸入下發(fā)的命令內(nèi)容,然后點(diǎn)擊“發(fā)送命令”,如下圖所示
點(diǎn)擊選擇虛擬設(shè)備的“平臺(tái)指令接收”菜單,查看到設(shè)備已收到平臺(tái)下發(fā)的控制命令,如下圖所示。
5、消息發(fā)布與訂閱
消息發(fā)布者創(chuàng)建TOPIC:點(diǎn)擊虛擬設(shè)備的“訂閱”菜單,點(diǎn)擊“創(chuàng)建Topic”按鈕,輸入TOPIC名字pub_topic1(讀者可創(chuàng)建自己的TOPIC名字),點(diǎn)擊提交完成TOPIC創(chuàng)建,如下圖所示。
消息發(fā)布:發(fā)布者設(shè)備選擇“發(fā)布”菜單,輸入TOPIC名稱pub_topic1及內(nèi)容111222333,(注意QOS選擇為0,TOPIC可重復(fù)發(fā)布;當(dāng)QOS選擇為1,TOPIC重復(fù)發(fā)布時(shí),PacketID必須遞增填入)點(diǎn)擊“Submit”按鈕,進(jìn)行消息發(fā)布,消息訂閱者設(shè)備選擇“設(shè)備TOPIC接收”菜單,我們看到已成功接收到該消息,如下圖所示(作為發(fā)布者PUB,右為訂閱者SUB)。
注意事項(xiàng)
消息發(fā)布者和訂閱者身份是針對某一TOPIC的某一次發(fā)布訂閱過程而言,發(fā)布TOPIC的設(shè)備就是這次過程中的消息發(fā)布者,其余所有訂閱該TOPIC的設(shè)備為這次過程中的消息訂閱者。
消息發(fā)布者也可以同時(shí)為消息訂閱者,只要設(shè)備訂閱了本身發(fā)布的TOPIC。
TOPIC由產(chǎn)品下的某一設(shè)備創(chuàng)建,該TOPIC就位于對應(yīng)產(chǎn)品的TOPIC列表中,同一產(chǎn)品下的所有設(shè)備可以訂閱該TOPIC,也可以發(fā)布該TOPIC,還可以刪除該TOPIC,具體請參考MQTT的HTTP API接口說明。