Skip to content

Commit 208c7f0

Browse files
committed
umqtt.simple: Add SSL support.
1 parent 4a8ef9f commit 208c7f0

File tree

1 file changed

+7
-1
lines changed

1 file changed

+7
-1
lines changed

umqtt.simple/umqtt/simple.py

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,13 @@ class MQTTException(Exception):
77

88
class MQTTClient:
99

10-
def __init__(self, client_id, server, port=1883):
10+
def __init__(self, client_id, server, port=0, ssl=False):
11+
if port == 0:
12+
port = 8883 if ssl else 1883
1113
self.client_id = client_id
1214
self.sock = None
1315
self.addr = socket.getaddrinfo(server, port)[0][-1]
16+
self.ssl = ssl
1417
self.pid = 0
1518
self.cb = None
1619

@@ -34,6 +37,9 @@ def set_callback(self, f):
3437
def connect(self, clean_session=True):
3538
self.sock = socket.socket()
3639
self.sock.connect(self.addr)
40+
if self.ssl:
41+
import ussl
42+
self.sock = ussl.wrap_socket(self.sock)
3743
msg = bytearray(b"\x10\0\0\x04MQTT\x04\x02\0\0")
3844
msg[1] = 10 + 2 + len(self.client_id)
3945
msg[9] = clean_session << 1

0 commit comments

Comments
 (0)