安装EMQX
EMQX(以前称为 EMQ)是一个开源的、高度可扩展且高可用的分布式 MQTT 消息代理,专为物联网(IoT)、机器对机器(M2M)通信和移动应用程序设计。它支持 MQTT 和其他 IoT 协议如 CoAP/LwM2M,能够处理数百万并发连接,并提供强大的消息路由能力。
通过docker安装官方文档
$ docker pull emqx/emqx:5.8.0
$ docker run -d --name emqx -p 1883:1883 -p 8083:8083 -p 8084:8084 -p 8883:8883 -p 18083:18083 emqx/emqx:5.8.0
由于我是安装在阿里云服务器上的,所以需要把对应的端口打开。
然后,可以通过浏览器输入IP:18083
,查看EMQX的dashboard。
在Node-red配置
先拖个button出来,用来发送一句文本,配置如图
再拖个mqtt-out出来,连在button后面,配置如图
参照这个样子再做一个按钮,用来发送个'空格'到上面这个MQTT-OUT
节点。
这样,就有两个按钮发送不同的信息到同一个主题。
再拖个mqtt-in,后面连个text把结果显示出来。
这样,在dashboard
上面就实现了两个按钮触发不同显示。
本地主机发送信息至服务器
本地linux安装mosquitto-clients
$ sudo apt-get install -y mosquitto-clients
使用mosquitto_pub
指令发送信息
$ mosquitto_pub -h 服务器IP -t test/gqkl -m "Hello, EMQX!!!!"
然后打开服务器的dashboard,可见
本地的nodered订阅服务器上的MQTT消息
在本地的nodered配置界面,拖入个mqtt-in,并在配置栏填入服务器的IP。
再把之前的主题test/gqkl
填进去。
然后也输出到一个TEXT
,然后打开跑在本地的node-red的dashboard,可见