如何配置mqtt.js通过websockets连接到iot.eclipse.org

时间:2015-02-26 18:33:26

标签: node.js browser websocket browserify mqtt

编辑:我现在的问题是这个。我可以使用http://www.hivemq.com/demos/websocket-client使用端口80连接到 iot.eclipse.org 。当我通过browsified mqtt.js client连接时,我收到以下错误:

  

与'ws://iot.eclipse.org/'的WebSocket连接失败:错误期间   WebSocket握手:意外的响应代码:200

我尝试过端口8080,8000,1883和80,没有任何运气。有什么建议吗?

------------下面的原始问题-----------

我想通过websockets使用mqtt连接mqtt代理。我的客户需要在浏览器中运行。

要实现这一目标,我正在使用mqtt.js库并且正在关注these instructions

broker.mqttdashboard.com 上与公共经纪人竞争时,一切正常。但是,当我连接到 iot.eclipse.org test.mosquitto.org 的公共经纪人时,我收到了HTTP错误。

我认为问题是在与第二个经纪人竞争时客户端的配置不正确,但我很难找到任何帮助。

继承人的配置,是否有人可以帮助我?

  // Works fine
  var options = {
    host: "broker.mqttdashboard.com",
    port: 8000
  };

  // Doesn't work
  /*var options = {
    host: "m2m.eclipse.org",
    protocolId: 'MQIsdp',
    protocolVersion: 3
  };*/

  // Doesn't work
  /*var options = {
    host: "test.mosquitto.org",
    protocolId: 'mosqOtti',
    protocolVersion: 3
  };*/

  var client = mqtt.connect(options);

如果您需要更多信息,请告诉我们!

标记

2 个答案:

答案 0 :(得分:1)

test.mosquitto.org和iot.eclipse.org都启用了websockets(实际上很长一段时间)。

你已经有了test.mosquitto.org工作 - 关键是使用端口8080。

当前的iot.eclipse.org配置要求连接URL为ws://iot.eclipse.org/mqtt

答案 1 :(得分:0)

我不认为 m2m.eclipse.org / iot.eclipse.org test.mosquitto.org 已启用websockets。

broker.mqttdashboard.com 在其下运行HiveMQ,其中启用了本机websockets。

简而言之,我不认为这是您身边的配置问题。为了确保这一点,您可以检查此Web应用程序,看看其他代理是否可以使用它:http://www.hivemq.com/demos/websocket-client/