首页 文章

将外部MQTT发布者与NODE-RED连接

提问于
浏览
1

在我目前的项目中,我正在尝试将我的外部温度传感器连接到NODE-RED .

我已经用外部传感器插入MQTT . 此传感器使用 tempMeasurement 主题发布数据 . MQTT发布者的配置如下:

public class MQTTPublisher {

    // public static final String BROKER_URL =
    // "tcp://broker.mqttdashboard.com:1883";
    public static final String BROKER_URL = "tcp://test.mosquitto.org:1883";

    private MqttClient client;

    public MQTTPublisher() {
        try {
            client = new MqttClient(BROKER_URL, MqttClient.generateClientId(),
                    new MemoryPersistence());
            client.connect();

        } catch (MqttException e) {
            e.printStackTrace();
        }
    }

    public void publish(String topicName, int qos, byte[] payload)
            throws MqttException {
        final MqttTopic topic = client.getTopic(topicName);

        final MqttMessage message = new MqttMessage(payload);
        topic.publish(message);

        System.out.println("Published data. Topic: " + topic.getName()
                + "  Message: " + payload);
    }
}

在Node-RED的另一端,我创建了MQTT节点,它订阅了“tempMesurement” . NODE-RED中MQTT节点的配置如下:

enter image description here

enter image description here

我的问题是MQTT订阅者节点正在显示 disconnected 消息,如上图所示 . 你能否建议 - NODE-RED中的配置有什么问题?我该如何解决这个问题?

1 回答

  • 1

    如注释中所述,您需要从配置屏幕中的服务器名称中删除tcp://

相关问题