Hi all,
I have a MQTT broker that is reachable at ws://myserver:80/MQTT.Broker. How can I connect to it using Paho?
The following code
client = mqtt.Client(transport='websockets')
client.connect('myserver', 80, 60)
returns handshake error:
File "/usr/lib/python3.6/site-packages/paho/mqtt/client.py", line 2737, in _do_handshake
raise ValueError("WebSocket handshake error")
On line 2675 in WebsocketWrapper._do_handshake() is code where HTTP header is created:
header = b"GET /mqtt HTTP/1.1\r\n" +\
b"Upgrade: websocket\r\n" +\
b"Connection: Upgrade\r\n" +\
b"Host: " + str(self._host).encode('utf-8') + b":" + str(self._port).encode('utf-8') + b"\r\n" +\
b"Origin: http://" + str(self._host).encode('utf-8') + b":" + str(self._port).encode('utf-8') + b"\r\n" +\
b"Sec-WebSocket-Key: " + sec_websocket_key + b"\r\n" +\
b"Sec-WebSocket-Version: 13\r\n" +\
b"Sec-WebSocket-Protocol: mqtt\r\n\r\n"
It tries to connect directly to myserver/mqtt. Could you please make this configurable, such that connect() function accepts custom path to MQTT broker? e.g.
client.connect('myserver', 80, 60, suffix='/MQTT.Broker')
Hi all,
I have a MQTT broker that is reachable at ws://myserver:80/MQTT.Broker. How can I connect to it using Paho?
The following code
returns handshake error:
On line 2675 in WebsocketWrapper._do_handshake() is code where HTTP header is created:
It tries to connect directly to myserver/mqtt. Could you please make this configurable, such that
connect()function accepts custom path to MQTT broker? e.g.