Skip to content
This repository was archived by the owner on Sep 16, 2024. It is now read-only.

Commit e3ca985

Browse files
author
iwahdan88
committed
esp32/frozen: updated MQTTMsgHandler.py
1 parent adeebf1 commit e3ca985

File tree

1 file changed

+12
-6
lines changed

1 file changed

+12
-6
lines changed

esp32/frozen/Common/MQTTMsgHandler.py

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -79,6 +79,7 @@ def createSocketConnection(self):
7979
self._sock = None
8080

8181
self._sock = socket.socket()
82+
self._sock.settimeout(30)
8283
if self._cafile:
8384
self._sock = ssl.wrap_socket(
8485
self._sock,
@@ -153,7 +154,11 @@ def priority_send(self, packet):
153154
return msg_sent
154155

155156
def _receive_packet(self):
156-
if not self._poll.poll(self._receive_timeout):
157+
try:
158+
if not self._poll.poll(self._receive_timeout):
159+
return False
160+
except Exception as err:
161+
print("Poll error: {0}".format(err))
157162
return False
158163

159164
# Read message type
@@ -257,14 +262,15 @@ def _io_thread_func(self):
257262
self._verify_connection_state()
258263

259264
self._out_packet_mutex.acquire()
260-
if self._out_packet_mutex.locked() and len(self._output_queue) > 0:
261-
packet=self._output_queue[0]
262-
if self._send_packet(packet):
263-
self._output_queue.pop(0)
265+
if self._ping_failures == 0:
266+
if self._out_packet_mutex.locked() and len(self._output_queue) > 0:
267+
packet=self._output_queue[0]
268+
if self._send_packet(packet):
269+
self._output_queue.pop(0)
264270
self._out_packet_mutex.release()
265271

266272
self._receive_packet()
267273
self._callShadowCallback()
268274

269275
if len(self._output_queue) >= self._draining_cutoff:
270-
time.sleep(self._draining_interval)
276+
time.sleep(self._draining_interval)

0 commit comments

Comments
 (0)