-
2021-11-04 22:09:36
之前做MQTT项目,现把测试环境搭建记录一下。
物联网设备很多会用到MQTT协议,我们的项目也用到了,需要把消息报警数据通过MQTT协议上传到第三方平台。设备端只要用到publish协议即可,但是,设备端程序开发完成后,需要自行测试通过后,才能与第三方平台对接,这样提高对接效率。
MQTT服务端采用mosquitto,先到mosquitto官方网站下载安装程序和源码。
最初,我们选择Windows安装包,安装完成后,在安装目录双击mosquitto.exe,把服务端运行起来,默认端口1883。安装目录还有另外两个测试程序,mosquitto_pub和mosquitto_sub,这两个程序需要通过命令行来运行。然后,通过mosquitto_pub程序发布消息,mosquitto_sub订阅消息,mosquitto_sub能收到消息,看起来一切正常。
但是,mosquitto_pub 加参数-P 密码运行的时候,提示测试程序不支持密码模块,mosquitto_sub也有同样的问题,我们对接第三方是要密码认证的,由于下载的是安装包程序,没有办法,通过源码在Linux平台上编译吧。
把源码解压,到解压目录,直接make,过一会说找不到cjson头文件,怎么需要cjson呢,有点奇怪,然后在代码根目录找到README-compiling.md,里面说cjson是可选的,然后找到config.mk,搜索CJSON的行,把yes改为no,再make,编译OK。测试程序生成在client目录下。
编译出来的测试程序支持密码参数的,通过Linux的mosquitto_pub程序,发布到Windows的服务端,死活连不上,但是可以ping通,有点奇怪。然后,直接telnet 到Windows的1883端口,也不行,那说明不是测试程序问题。Windows本地可以连,说明是listen的时候绑定的回环地址。查看,资源管理器,果然是bind了回环地址。
修改安装目录下的配置文件mosquitto.conf,搜索listener,然后增加一句 listener 端口 IP,重新运行mosquitto,通过Linux测试程序,可以连接上了。但是,加了-P参数,提示报错,拒绝连接。网上搜了一下,需要配置用户和密码。
找到安装目录下mosquitto_passwd.exe,通过mosquitto_passwd.exe生成密码文件,publish和sub都一起生成了。注意,下面那行不要带-c参数,否则会重新生成pwfile文件,分别输密码就可以了。
mosquitto_passwd.exe -c pwfile pub_user
mosquitto_passwd.exe pwfile sub_user
密码文件生成后,打开配置文件,找到password_file这行, 增加一行 password_file pwfile,保存,重新运行服务端程序。Linux 测试程序pub和sub都可以发布和订阅消息了,测试环境搭建完成。板子就可以与服务端调试了。
更多相关内容 -
非常好用的MQTT测试工具
2020-08-18 17:19:49非常好用的MQTT测试工具,可做消息发布和消息订阅测试,便于对Apollo、ActiveMQ等服务部署进行消息测试。 -
Mqtt测试工具
2018-10-27 16:48:42windows平台的Mqtt测试工具,有服务器端和客户端,需要.net 4.5以上可以支持。可以做简单的测试 -
MQTT测试工具
2018-07-12 17:23:06项目中有用到mqtt推送消息,后台发送到mqtt服务器,有其他客户端或者设备订阅接收。可以通过该工具测试设置项目符合所需的具体参数值。大家可以通过该链接http://activemq.apache.org/apollo/download.html下载最新... -
MQTT测试客户端软件
2019-07-04 19:31:18MQTTBox测试工具,方便进行MQ服务测试,订阅和发布主题,找了好久,终于找到一个靠谱的。 -
mqtt测试工具
2018-11-09 16:48:03mqtt测试工具,用于各类mqtt协议的测试,简单方便.使用时需要配置java运行环境。 -
MQTT测试
2022-04-26 22:27:41使用mqttX + mosquitto测试 QoS无论选0,1,2,选择Retain时,新加入的订阅者都只会收到最后一次消息。 QoS说明: What is Quality of Service? The Quality of Service (QoS) level is an agreement between the ...使用mqttX + mosquitto测试
QoS无论选0,1,2,选择Retain
时,新加入的订阅者都只会收到最后一次消息。QoS说明:
What is Quality of Service?
The Quality of Service (QoS) level is an agreement between the sender of a message and the receiver of a message that defines the guarantee of delivery for a specific message. There are 3 QoS levels in MQTT:At most once (0) 至多一次
At least once (1) 至少一次
Exactly once (2).确保一次参考:
https://www.hivemq.com/blog/mqtt-essentials-part-6-mqtt-quality-of-service-levels/
-
Qt开发MQTT测试源码
2021-06-22 19:03:24Qt开发MQTT,测试源码,QMQTT,外加一个辅助测试软件 -
MQTT测试工具-paho+for+eclipse
2019-03-05 16:59:21MQTT测试工具-paho+for+eclipse mosquitto连接工具 订阅推送 消息清除 -
MQTT测试代码及编译
2018-08-01 15:09:58下载了好多资源,才编译通过。主要包括MQTT源码,测试程序,订阅、发布。 -
mqtt_c#mqtt_mqtt测试winform程序_mqtt服务器_mqtt_
2021-10-01 08:26:08c#在mqtt服务器上发布主题订阅主题,实时显示收发数据 -
MQTT测试软件
2018-04-16 23:47:02MQTT协议测试软件,可以应用于arduino的测试,可以进行可视化操作 -
MQTT测试程序,MQTT服务端客户端
2021-01-30 10:06:42MQTT测试程序,测试MQTT功能。 实现服务端、两个客户端 -
MQTT测试客户端 Delphi10.3测试可用
2019-11-02 08:40:41MQTT测试客户端 Delphi10.3测试可用,根据网上资料,自己写的客户端。 -
【MQTT】MQTT测试工具mqttfx和国内MQTT X工具下载
2021-12-16 00:03:09国内公司提供的免费在线MQTT5服务器和在线客户端工具,很方便,推荐使用。链接:https://pan.baidu.com/s/1PxXnuIPNvfizFuQm7Bv8KQ
提取码:dc8n后面又发现有国内EMQ公司发布的 MQTT开源策士工具 MQTT X,下载方便,使用简单,建议使用。
该公司还提供了在线的MQTT测试服务器和web客户端,很有实力和诚意公司。推荐使用:
免费的公共服务器:
在线的MQTT客户端:
MQTT WebSocket Toolkit | EMQ
http://tools.emqx.io/recent_connections
网页版MQTT客户端只提供了websocket和加密websocket协议,不支持mqtt协议,还是建议下载使用他们家的 MQTT X客户端,简洁好用。
-
apache-apollo-1_mqtt_MQTT测试
2021-09-29 00:14:43apache-apollo-1_mqtt_MQTT测试_coaloyj_MQTTjava_apache-apollo-1.7.1_源码.rar -
ADS Over MQTT测试记录-20210316.zip
2021-03-19 20:40:23ADS Over MQTT测试记录 -
MQTT测试客户端
2018-07-23 09:58:51MQTT客户端测试工具,模拟接发送mqtt消息必备神器,快快下载吧 -
vue mqtt 测试笔记
2021-11-03 15:11:091、测试准备工作 1-1、进入大神网站,登录 1-2、创建项目并绑定设备 1-3、获取设备Id、密码及请求地址 1-4、下载MQTTBox打开 保存进入下一页 前端控制台打印 2、创建vue项目,安装mqtt cnpm install mqtt -...1、测试准备工作
1-1、进入大神网站,登录
1-2、创建项目并绑定设备
1-3、获取设备Id、密码及请求地址
1-4、下载MQTTBox打开
保存进入下一页
前端控制台打印
2、创建vue项目,安装mqtt
cnpm install mqtt --save
3、使用
import mqtt from 'mqtt'; export default { name: 'Home', data () { return { client:null } }, created () { this.connectMqtt() }, methods: { connectMqtt () { const options={ connectTimeout:4000, clientId:`wsy${Math.random()}`,//唯一值 port:8083, username:'设备Id', password:'密码' } this.client=mqtt.connect('ws://t.yoyolife.fun/mqtt',options); this.client.on('connect',e=>{ console.log('服务器链接成功'); this.client.subscribe('/iot/477/wsy',{qos:0},err=>{ if(!err){ console.log('订阅成功'); } }) }) //信息监听事件 this.client.on('message',(topic,message)=>{ console.log('收到'+message.toString()); }) //重连 this.client.on('reconnect',(err)=>{ console.log('正在进行重连',err); }) //失败 this.client.on('error',(err)=>{ console.log('连接失败',err); }) } } }
-
MQTT测试服务器
2019-03-29 09:06:45以下是几个可用的国外站点 Server Broker Port Websocket iot.eclipse.org Mosquitto 1883 / 8883 n/a broker.hivemq.com HiveMQ 1883 8000 ... 1883 / 8883 ... -
MQTT测试包.zip
2020-07-16 10:09:34QT使用MQTT协议链接onenet物联网云平台,因为QT不能直接使用MQTT协议,所以要先下载源码进行编译之后才可以使用MQTT协议。 -
网络测试,MQTT测试软件集成版
2019-01-03 22:12:10网络测试,MQTT测试软件集成版,测试网络方便,还有单片机测试的一些集成软件 -
MQTT测试软件,客户端
2021-12-27 14:31:35用来测试MQTT客户端参数是否正确,用来测试MQTT服务器是否可用等。中文界面,容易理解,主要对初学者方便 -
c# mqtt测试软件winform
2020-03-11 13:57:31winform程序,使用m2mqtt库实现mqtt服务的连接,主题订阅,取消订阅,消息的接受等功能,简单页面交互,适合测试或初级学习 -
MQTTX(Mqtt测试软件)
2021-05-27 08:51:37Mqtt测试软件 -
mqtt测试工具.zip
2020-04-09 17:15:28mqtt测试工具