背景
在如今物联网的时代下,诞生了许多的物联网产品,这些产品通过BLE、WIFI、4G等各种各样的通信方式讲数据传输到各种各样的平台。
除了各个公司私有的云平台外,更多的初学者会接触到腾讯云、阿里云之类的平台。设备接入方式也有着多种多样的选择,如http、mqtt、coap等。。。在我们将产品接入各个平台之前,我们需要确保我们的网址、参数各方面都是对的,否则直接写代码肯定是存在一定的风险,也无法排除云平台那边可能存在的错误。因此我们需要模拟这些协议,今天我们就来讲讲mqtt的客户端模拟器---mqtt.fx。
下载链接
站内下载链接:
https://download.csdn.net/download/qq_58662768/89272942
MQTT.FX使用说明
点击设置模样的按键,可以在里面设置mqtt连接的各种参数。
下面一一讲解一下如下的各个选项。
MQTT.FX必填选项
左下角+号:增加一个mqtt配置。
Profile Name:保存配置的名称,可以保存多个配置。
Profile Type:这个选项博主现在也不知道是什么,反正工作这么久就是选择MQTT Broker。
MQTT连接必须五要素
下面的五个要素是每个mqtt连接的必要条件,只能必这五个条件多,不能少。
Broker Address:填入MQTT服务器地址。
Broker Port:填入MQTT服务器端口。如果是MQTT则1883,如果是MQTTS则8883。MQTT和MQTTS的区别在于MQTTS在TCP和MQTT之间加入了SSL\TLS的加密套件。
ClientID、User Name、Password则是每个平台固定好的,也是mqtt必须要的参数。
MQTT.FX连接细节
在General的参数基本都是选择默认。
Connection Timeout:连接超时时间,单位s。
Keep Alive Interval:连接保持时长,单位s。在mqtt心跳包丢失之后会保持一段时间的连接。
Clean Session:清除会话层,这个参数在代码里面一般都是要的,否则会出现一次连接不上就一直连接不上的情况。
Auto Reconnect:设置自动重连。
Max Inflight:最大飞行次数,工作中一下子也没有用到,不知道干嘛用的,有知道的评论区教教博主。
MQTT Version:使用mqtt协议版本,有时候你的mqtt连接错误会提示版本错误,就修改这个地方。
MQTT.FX模拟MQTTS使用SSL
如下图选择,有网站可以查找MQTTS服务器支持什么版本的证书。以后的博客会提到,相关搜索mqtt安全证书。
MQTT.FX设置遗嘱
第一行的空中填写入遗嘱的主题。
第二行的空中填写入遗嘱的内容。
MQTT.FX模拟连接和发布
红色1处点击Connect。
红色2处的点变成绿色则连接成功,否则则连接失败。
连接失败时,3处出现连接失败的原因。
Publish栏用于发布使用,在蓝色的》右边写入发布的主题,在下面的栏中加入发布的内容。点击蓝色的按键Publish,即可发布,发布成功还是失败都看不见,有些服务器发布失败则会强制断连(也有可能是发布到了错误的主题导致的强制断连)。
MQTT.FX模拟订阅
红色1处写入订阅主题,可同时订阅多个主题,在下方都会分别所显示订阅主题的信息条数。
红色2处点击订阅,就订阅好主题啦。
红色3处和4处会出现订阅的信息,其中3记录每一次订阅收到的信息,4详细的展示最近一次收到的订阅消息。