從MQTTBox應(yīng)用程序創(chuàng)建新的MQTT客戶端時(shí)福荸,您可以指定各種連接設(shè)置。大多數(shù)設(shè)置默認(rèn)設(shè)置為最常用的值菌赖,但是您可能仍需要自定義設(shè)置以根據(jù)需要測試MQTT客戶端汗贫。本文檔詳細(xì)解釋了每個(gè)客戶端設(shè)置屬性,以便更好地理解客戶端連接和實(shí)際的MQTT協(xié)議耿战。
MQTT客戶端名稱:用于標(biāo)識MQTT客戶端并在儀表板上顯示的名稱蛋叼。它可以是任何字符串值。
例如:client_test_1
客戶端ID:客戶端標(biāo)識符是連接到MQTT代理的每個(gè)MQTT客戶端的標(biāo)識符昆箕。對于給定的經(jīng)紀(jì)人鸦列,每個(gè)客戶應(yīng)該是唯一的。代理使用它來識別客戶端和客戶端的當(dāng)前狀態(tài)鹏倘。它默認(rèn)是自動(dòng)生成的薯嗤。如果嘗試連接具有相同客戶端標(biāo)識符的兩個(gè)MQTT客戶端,則代理將拒絕連接纤泵。當(dāng)您打開2個(gè)MQTTBox應(yīng)用程序?qū)嵗龝r(shí)骆姐,請確保您擁有唯一的客戶端ID镜粤,否則您的客戶將被代理拒絕并可能顯示為脫機(jī)。
例如:client_id_1
將時(shí)間戳附加到MQTT客戶端ID玻褪?:如果選中肉渴,則時(shí)間戳將附加到客戶端ID。默認(rèn)情況下啟用此選項(xiàng)带射。很多時(shí)候同规,用戶在相同或不同的機(jī)器上打開多個(gè)MQTTBox應(yīng)用程序?qū)嵗@些機(jī)器具有相同的MQTT客戶端設(shè)置窟社,包括不同的客戶端ID券勺。這會(huì)導(dǎo)致客戶端連接由于相同的客戶端ID而被代理拒絕。如果啟用此選項(xiàng)灿里,MQTTBox會(huì)將時(shí)間戳附加到每個(gè)客戶端ID关炼,使其幾乎唯一,這有助于您節(jié)省調(diào)試不必要問題的時(shí)間匣吊。
Broker是否符合MQTT v3.1.1 ?:如果要連接的MQTT代理僅支持舊版本的MQTT協(xié)議3.1或更低版本(v3.1.1是最新版本和當(dāng)前標(biāo)準(zhǔn)版)儒拂,則應(yīng)取消選中此選項(xiàng)。默認(rèn)情況下色鸳,它會(huì)被檢查并假定MQTT代理符合當(dāng)前的MQTT標(biāo)準(zhǔn)v3.1.1(或更高版本)社痛。
協(xié)議: MQTT客戶端用于連接MQTT代理的網(wǎng)絡(luò)協(xié)議。
MQTTBox支持TCP命雀,SSL / TLS褥影,MQTT,MQTTS咏雌,WebSockets(WS)和Secure WebSockets(WSS)凡怎。根據(jù)您使用MQTTBox應(yīng)用程序的平臺(tái),由于平臺(tái)限制赊抖,可能不支持所有協(xié)議统倒。
請在此處查看每個(gè)平臺(tái)支持的MQTTBox功能列表。
主機(jī):要連接的MQTT主機(jī)氛雪。確保根據(jù)所選的MQTT連接協(xié)議指定正確的主機(jī)和端口號房匆。如果您提到錯(cuò)誤的端口號或交換端口號,MQTT客戶端可能無法連接报亩。
例如:test.mosquitto.org:8080
Clean Session浴鸿?:clean session標(biāo)志指示代理是否客戶端想要建立持久會(huì)話。如果您需要持久會(huì)話弦追,即代理將存儲(chǔ)客戶端的所有訂閱以及所有丟失的消息岳链,則在訂閱服務(wù)質(zhì)量(QoS)1或2時(shí),取消選中/不選擇此選項(xiàng)劲件。默認(rèn)情況下會(huì)選中此選項(xiàng)或是掸哑,這意味著代理將啟動(dòng)新會(huì)話约急,不會(huì)為客戶端存儲(chǔ)任何內(nèi)容,也會(huì)清除先前持久會(huì)話中的所有信息苗分。
在應(yīng)用程序啟動(dòng)時(shí)自動(dòng)連接厌蔽?:如果您選中/是此選項(xiàng),客戶端將嘗試在啟動(dòng)MQTTBox應(yīng)用程序時(shí)自動(dòng)連接到代理摔癣,并且可以處于“已連接”或“連接錯(cuò)誤”狀態(tài)奴饮,具體取決于客戶端是否已連接到代理或不。如果未選中/沒有此選項(xiàng)择浊,客戶端將處于“未連接”狀態(tài)拐云,您需要手動(dòng)將客戶端連接到代理。
您可以從MQTTBox儀表板連接近她,斷開連接,重新連接MQTT客戶端
用戶名:經(jīng)紀(jì)人所需的用戶名(如果有)膳帕。MQTT允許發(fā)送用于驗(yàn)證和授權(quán)客戶端的用戶名粘捎。
密碼:經(jīng)紀(jì)人要求的密碼(如果有)。MQTT允許發(fā)送密碼以進(jìn)行客戶端的身份驗(yàn)證和授權(quán)危彩。請注意攒磨,所有密碼都以純文本格式保存。確保您永遠(yuǎn)不會(huì)在MQTTBox應(yīng)用程序中保存生產(chǎn)密碼汤徽。事實(shí)上娩缰,所有字段都保存為純文本,請確保您永遠(yuǎn)不會(huì)在MQTTBox應(yīng)用程序中保存任何敏感信息/設(shè)置谒府。
重新安排Ping拼坎?如果選中/是,則在發(fā)送數(shù)據(jù)包后重新安排ping消息完疫。
隊(duì)列傳出QoS零消息:如果選中/是泰鸡,如果客戶端和代理之間的連接斷開,則客戶端隊(duì)列的傳出QoS零消息壳鹤。建立連接后盛龄,將發(fā)布所有這些消息。
重新連接周期(以毫秒為單位):兩次重新連接之間的間隔
連接超時(shí)(以毫秒為單位):收到CONNACK之前等待的時(shí)間
KeepAlive(以秒為單位): keep alive是一個(gè)時(shí)間間隔芳誓,客戶端通過向代理發(fā)送常規(guī)PING請求消息來提交余舶。具有PING響應(yīng)和這種機(jī)制的代理響應(yīng)將允許雙方確定另一方是否仍然存活且可達(dá)。默認(rèn)設(shè)置為10秒锹淌,設(shè)置為0表示禁用匿值。
Will Settings - will消息是MQTT Client最后遺囑的一部分。當(dāng)客戶端斷開連接時(shí)赂摆,它允許通知其他客戶端千扔。連接客戶端將在CONNECT消息中以MQTT消息和主題的形式提供其意愿憎妙。如果此客戶端無法正常斷開連接,則代理會(huì)自動(dòng)代表客戶端發(fā)送此消息曲楚。
將設(shè)置 - 主題:要發(fā)布的主題將是有效負(fù)載厘唾。一個(gè)簡單的字符串,可以使用正斜杠作為分隔符進(jìn)行分層結(jié)構(gòu)化龙誊。
例如:topic_test_1或家庭/廚房/濕度
將設(shè)置 - QoS:發(fā)布具有QoS集的有效負(fù)載抚垃。默認(rèn)情況下為0。
將設(shè)置 - 保留:保留will有效載荷的標(biāo)志趟大。
將設(shè)置 - 有效負(fù)載:客戶端斷開連接時(shí)要發(fā)布的消息鹤树。
發(fā)布者設(shè)置
要發(fā)布的主題:是要發(fā)布到的主題。一個(gè)簡單的字符串逊朽,可以使用正斜杠作為分隔符進(jìn)行分層結(jié)構(gòu)化罕伯。
例如:topic_test_1或家庭/廚房/濕度
QoS:此消息的服務(wù)質(zhì)量等級(QoS)。級別(0,1或2)確定傳遞的消息的保證叽讳。
保留:此標(biāo)志確定代理是否將消息作為上一個(gè)已知的良好值保存到指定主題追他。訂閱該主題的新客戶將在訂閱后立即收到有關(guān)該主題的最后保留消息。
要?jiǎng)h除主題的保留消息岛蚤,請發(fā)送包含該主題的零字節(jié)負(fù)載的保留消息邑狸。
有效負(fù)載:這是要發(fā)布到主題的消息的實(shí)際內(nèi)容。
訂閱者設(shè)置
主題:是要訂閱的String主題涤妒。您可以為主題指定單級(+)和多級(#)訂閱单雾。
例如:topic_test_1或家庭/ + /濕度或家庭/#
QoS:此消息的服務(wù)質(zhì)量等級(QoS)。級別(0,1或2)確定傳遞的消息的保證她紫。