I am facing the below error when executing the mqttws31.js as part of a HTML file on Google Chrome.
HiveMQ was used as MQTT broker, logs are as below
2014-10-28 14:46:45,043 INFO - HiveMQ home directory: E:\hivemq-2.1.0
2014-10-28 14:46:45,065 INFO - Starting HiveMQ Server
2014-10-28 14:46:48,249 WARN - No license file found. Using free personal licensing with restrictions to 25 connections.
2014-10-28 14:46:48,367 INFO - Activating statistics callbacks with an interval of 60 seconds
2014-10-28 14:46:48,368 INFO - Activating $SYS topics with an interval of 60 seconds
2014-10-28 14:46:48,728 INFO - Starting on address 127.0.0.1 and port 1883
2014-10-28 14:46:48,734 INFO - Started HiveMQ 2.1.0 in 3694ms
When the HTML file containing the MQTT client, the below error is encountered.
WebSocket connection to 'ws://127.0.0.1:1883/mqtt' failed: Connection closed before receiving a handshake response
Any help in resolving this appreciated.
It doesn't look like you have websockets enabled, to be able to use mqttws31.js with hivemq.
See settings here; http://www.hivemq.com/docs/hivemq/2.1.0/#hivemqdocs_configuration_options
Open conf/configurations.properties with your favorite editor
Change websockets.enabled to true
And then in your code connect to; ws://127.0.0.1:8000/mqtt
Here is a quick howto on hivemq' website, http://www.hivemq.com/hivemq-mqtt-websockets-support-message-log-plugin-2-min/