在我的PC上运行mosquitto 1.6.3。默认端口为1883,但我也将其设置为在9001和用户websocket上运行。两个端口都打开。
如果我要创建发布者应用程序,请问此发布者是否在两个端口上都广播消息?问题是我想拥有桌面应用程序和Web应用程序。 Web应用程序(订户)将使用websocket。
这是我的发布者:
private static void createPublisher()
{
MqttClient client = new MqttClient(IPAddress.Parse("127.0.0.1"));
client.Connect(Guid.NewGuid().ToString());
string[] topic = { "sensor/temp", "sensor/humidity" };
byte[] qosLevels = { MqttMsgBase.QOS_LEVEL_EXACTLY_ONCE, MqttMsgBase.QOS_LEVEL_EXACTLY_ONCE };
String temp = "14";
client.Publish("sensor/temp", Encoding.UTF8.GetBytes(temp));
client.MqttMsgPublishReceived += client_MqttMsgPublishReceived;
client.MqttMsgSubscribed += client_MqttMsgSubscribed;
client.MqttMsgUnsubscribed += client_MqttMsgUnsubscribed;
client.MqttMsgPublished += client_MqttMsgPublished;
}
我正在使用M2MMQT.Net库。
答案 0 :(得分:0)
是的,所有收听者在mosquitto中共享相同的主题空间
这意味着通过端口9001上的Websockets通过MQTT连接的客户端可以订阅通过端口1883连接到本机MQTT侦听器的客户端。